Forum: Sonstige Fragen zu Delphi
Delphi
by shmia,
13. Feb 2008
Folgende Funktion ermittelt, ob 2 Punkte näher als ein bestimmter Abstand sind.
Der Abstand (Squaredist) muss in quadrierter Form übergeben werden.
(3 Pixel Abstand => Squaredist = 9)
function Kollision(A, B : TPoint; Squaredist:integer):boolean;
var
x,y : integer;
begin
x := A.x-B.x;
y := A.x-B.x;
result := ((x*x)+(y*y) <= Squaredist);
Forum: Sonstige Fragen zu Delphi
Delphi
by shmia,
28. Jan 2008
Das ist extrem einfach !
Ein Teilchen hat eine Geschwindigkeit in X- und Y-Richtung.
(Gesamtgeschwindigkeit siehe Pythagoras)
Bei der Reflektion an einer waagerechten Wand ändert sich das Vorzeichen der Geschwindigkeit in Y-Richtung (y_speed := -y_speed;).
Wie es bei einer senkrechten Wand geht, brauche ich wohl nicht zu erklären.