Hallo Adrian,
habe mir vorhin mal Dein VI angesehen.
zum Algorithmus des Abprallens von den Wänden, den Balken, etc:
Die Bewegung der Kugel lässt sich in zwei überlagerte Bewegungen aufteilen: die erste in x-Richtung, die zweite in y-Richtung.
Solange nun die Gegenstände, mit denen die Kugel kollidieren soll, immer als glatt angenommen werden können und zum zweiten immer entweder senkrecht in x- oder y-Richtung stehen, ist die Reflexion recht einfach hinzubekommen:
Je nachdem, in welcher Richtung die Kugel gegen ein Hindernis stößt (x- oder y), wird das Vorzeichen der Verschiebung in die entsprechende Richtung umgekehrt. d.h. wenn die Kugel gegen das linke Paddel mit der Geschwindigkeit
(-2,2) fliegt (135°), so wird sie nach der Reflexion den Vektor (2,2) (45°) besitzen. Analog geht dies an den Wänden des Kastens.
Übler wird es allerdings, wenn die Oberflächen gekrümmt sind, denn dann muss die Tangente im Auftreffpunkt berechnet werden und an dieser die Reflexion durchgeführt werden.
Zum Ansteuern der Paddel:
Du kannst für die beiden Paddel je zwei Knöpfe auf dem Front Panel erstellen mit der Schalt-Logik "Latch when released". An diese hängst Du dann über Advanced / Key Navigation die Tasten, mit denen Du sie später steuern willst. Die Knöpfe werden dann in der vorhandenen Event-Struktur ausgewertet (xyz: Value Change). Dort wird dann eine Translation des entsprechenden Paddels durchgeführt.
Die beiden While-Schleifen mit dem Abfragen der Tastatur kannst Du dann in diesem Fall löschen.
Dass nichts im Scene Window angezeigt wird, liegt daran, dass Du die Ausgabe auf ein Render-Window umleitest.
(Warum es nicht erscheint, habe ich nicht erforscht). Ändere die Ausgabe in "Scene Window" und lege dies als Default fest, dann sollte was im Fenster erscheinen.
Ach ja und noch ein kleiner Tipp:
Das Erzeugen der beiden Paddel kannst Du leicht in ein Sub-VI packen, das Du dann nur noch zweimal hintereinander aufrufst.
lynx