Einzelnen Beitrag anzeigen

Benutzerbild von Corpsman
Corpsman

Registriert seit: 8. Nov 2005
Ort: nähe Stuttgart
981 Beiträge
 
Delphi XE2 Professional
 
#38

Re: Pong - Problem bei der Ballkollision

  Alt 11. Dez 2006, 19:36
Ho

Also ich will mal Versucehn Licht ins Helle zu bringen

function EllipseRechteckcollision(..); Berechnet wie der Name schon sagt ob ein Rechteck mit einer Ellipse Collidiert.

Wobei Rechteck genau wie Ellipse als Trect übergeben werden ( übrigens genau gleich würdest du sie mit einem Tcanvas Malen lassen ).

dann wird eine Strecke zwischen den Mittelpunkten der beiden Objecte Gebildet und die Länge berechnet.

Danach wird an dieser Lienie geschaut wann sie die schnittpunkte mit der Ellipse und dem Rechteck hat ( das ist das Sinus, Cosinus zeug )

anhand der Schnittpunkte kann dann berechnet werden wie Lang diese Strecken Relativ zur Gesamtstrecke der Mittelpunkte sind. je nach dem hat man dann eine Collision, oder eben nicht.

Das ist es im Prinzip.

Die Berechnung ist nicht 100% aber schon nah dran und immer noch recht schnell. Habe dir mal mein Collision Testprogramm mit dran gehängt. da kannst du Graphisch sehn was die Function macht.

der Grund warum Sinus und Cosinus Functionen liegt an der Umrechnung Bogenmaß Gradmaß.

Je nach schulbildung sagt dir das dann was, oder auch nicht
Angehängte Dateien
Dateityp: zip collision_157.zip (3,9 KB, 3x aufgerufen)
Uwe
My Sitewww.Corpsman.de

My marble madness clone Balanced ( ca. 70,0 mb ) aktuell ver 2.01
  Mit Zitat antworten Zitat