Einzelnen Beitrag anzeigen

Medium

Registriert seit: 23. Jan 2008
3.679 Beiträge
 
Delphi 2007 Enterprise
 
#11

Re: Pixelgenau Kollision zwischen kreisen & Rechtecken

  Alt 17. Sep 2008, 21:10
Es ginge auch recht hübsch über Dreiecke:
1) Bilde je ein Dreieck mit dem Kreismittelpunkt und den Endpunkten jeder Strecke die den Quader bilden.
2) Lasse alle Dreiecke weg, bei denen mind. 1 Winkel in den Streckenpunkten >90° ist.
3) Bilde die Höhen der Dreiecke im Kreismittelpunkt.
3.1) Dort wo diese Höhe < Kreisradius ist hast du eine Kollision/Überschneidung.

Der übliche Weg über Vektoren:
1) Bilde den Schnittpunkt vom der Geraden "Kreisrichtungsvektor auf Kreisradius skaliert, gestützt auf seinem Mittelpunkt" mit der Geraden A+x(B-A) [A und B sind zwei Endpunkte einer Kollisionsstrecke].
2) Gibt es einen, und die Parameter in beiden Gleichungen ergeben nach dem LGS einen Wert <= 1, dann kollidiert der Kreis mit der Strecke im nächsten Schritt, sonst nicht.
"When one person suffers from a delusion, it is called insanity. When a million people suffer from a delusion, it is called religion." (Richard Dawkins)
  Mit Zitat antworten Zitat