Abstand eines Vektors zum Ursprung

Hallo!

Mein Problem ist folgendes: Ich programmiere an einem kleinen Spiel. Zur Kollisionsberechnung Schuss->Ziel setzte ich zunächst den Koordinatenursprung auf den Schuss, so dass ich einen Ortsvektor habe der auf mein Ziel zeigt und einen Richtungsvektor, der angibt, wie sich das Ziel im Verhältniss zum Schuss bewegt.

// 1. Objekt ins Bezugssystem vom Schuss setzten
p= Ziel.koords - Schuss.koords;
v= Ziel.v - Schuss.v;

// 2. Skalarprodukt zeigt, ob das Objekt auf mich zu fliegt
(p.x⋅v.x+p.y⋅v.y

Hallo!

Entweder ich habe Dein Problem nicht so recht verstanden oder Du siehst den Wald vor lauter Bäumen nicht.

c⋅((p.x⋅v.y-p.y⋅v.x)/ v.length)

Das Problem ist jetzt, dass ich den Faktor c nicht kenne und
das ist der Punkt an dem ich nicht weiter komme.

Durch die Division durch v.length hast Du den Vektor v normiert. Damit gilt

p x v /|v| = |p| falls p und v senkrecht zu einander stehen. Das ist ja genau das, was Du haben möchtest, also ist c=1.

Oder habe ich jetzt etwas falsch verstanden?

Michael