Vektor auf einen zweiten projizieren? [GELÖST]
Übersicht

![]() |
ComNikBetreff: Vektor auf einen zweiten projizieren? [GELÖST] |
![]() Antworten mit Zitat ![]() |
---|---|---|
Huhu,
Ich hänge gerade bei dem Versuch, einen Punkt orthogonal auf eine Strecke zu projizieren. Ich hatte folgenden Ansatz: Die Funktion soll mir den Ursprung (also einfach (0|0)) auf eine beliebige Strecke projizieren. Die Strecke wird in der Funktion durch a) axisO = Startvektor der Strecke und b) Vektor der Strecke. Zurückgegeben werden soll der Punkt auf der Strecke der am nächsten (also einfach Lotrecht) zum Ursprung ist. Intern wird a auf b projiziert. Nach einigem googeln und lesen: BlitzMax: [AUSKLAPPEN]
Ich habe aber inzwischen den Überblick verloren (weil ich zuviele verschiedene Quellen gelesen habe...) und es kommen komplett falsche Punkte raus. Skizzieren und ausrechnen auf dem Papier haben mich der Lösung auch nicht näher gebracht. Muss kein Code sein, lediglich die Vorgehensweise (damit ich das endlich mal verstehe...). Vielen Dank ![]() ComNik |
||
WIP: Vorx.Engine |
- Zuletzt bearbeitet von ComNik am Sa, Feb 27, 2010 0:30, insgesamt einmal bearbeitet
![]() |
mpmxyz |
![]() Antworten mit Zitat ![]() |
---|---|---|
Seltsam, dass keiner hier schon etwas geantwortet hat...
Zu hohe Mathematik? ![]() Code: [AUSKLAPPEN] s0=Startvektor der Strecke
s=Streckenvektor StreckenRichtung=Normalize(Streckenvektor) Projektionslänge=ScalarProduct(StreckenRichtung,-s0) 'Ein normalisierter Vektor mal ein anderer Vektor ergibt die Länge der Projektion des anderen Vektors auf den normalisierten Vektor. '-s0 wird gebraucht, da der Vektor vom Startpunkt zum Ursprung - und nicht umgekehrt - gebraucht wird. 'Wenn der Punkt auf alle Fälle auf der Strecke liegen soll musst du das Ergebnis der Projektionslänge einschränken. Punkt=s0+StreckenRichtung*Projektionslänge mfG mpmxyz |
||
Moin Moin!
Projekte: DBPC CodeCruncher Mandelbrot-Renderer |
![]() |
ComNik |
![]() Antworten mit Zitat ![]() |
---|---|---|
Danke sehr,
hatte es inzwischen so halb raus, nur das mit dem Normalisieren hatte ich nicht verstanden. Insofern doppelten Dank für die Erklärung (: Funktioniert perfekt, lg ComNik |
||
WIP: Vorx.Engine |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group