Hallo ich hab folgendes Problem.
P1 soll sich auf P2 zu bewegen bei jedem Rechenschritt eine (beliebige Anzahl) Längeneinheit näher ran.
Gesucht ist also ein Punkt auf der Geraden der eine Längeneinheit näher an P2 dran ist.
Gut mit Restschulwissen und Internet hab ich mir die Rechnung angeeignet (evtl. gibt es andere Rechenwege). Auf dem Papier nicht zu kompliziert nur wie soll ich das im Programm umsetzen.
-- Grober Rechenweg
Ich habe es über Vektoren gerechnet.
g:x=(P1)+r(P2-P1) je X und Y.
ergebnis:
g:x= (2+7r)
(5,5-3,5r)
Darin kommt schon mal das r vor welches mein Problem ist.
Dann geht es weiter mit dem finden des neuen Punktes.
d=sqrt((x1-x2)²+(y1-y2)²)
d ist die Längeneinheit. Also wie weit der neue Punkt auf dem Vektor an den zweiten Punkt ran kommen soll.
Dann sähe das ganze so aus wenn er 2LE näher ran soll:
2=sqrt((2-(2+7r))²+(5,5-(5,5-3,5r))²).
Das ganze müsste ich jetzt nach r auflösen, r in meinen Vektor einsetzen und ich hätte den neuen Punkt.
-- Ende Rechnerei
Nur das r darin ist das Problem und ich habe keine Idee wie ich das auch nur ansatzweise im Programm umsetzen soll. Bzw. hab ich im Gefühl es läuft auf wüste IF schleifen hinaus.
Aber ich kann auch total falsch liegen und die Lösung ist weit aus simpler.
Darum meine frage: Wie bildet man so eine Rechnung in einem Java Programm ab.
P1 soll sich auf P2 zu bewegen bei jedem Rechenschritt eine (beliebige Anzahl) Längeneinheit näher ran.
Gesucht ist also ein Punkt auf der Geraden der eine Längeneinheit näher an P2 dran ist.
Gut mit Restschulwissen und Internet hab ich mir die Rechnung angeeignet (evtl. gibt es andere Rechenwege). Auf dem Papier nicht zu kompliziert nur wie soll ich das im Programm umsetzen.
-- Grober Rechenweg
Ich habe es über Vektoren gerechnet.
g:x=(P1)+r(P2-P1) je X und Y.
ergebnis:
g:x= (2+7r)
(5,5-3,5r)
Darin kommt schon mal das r vor welches mein Problem ist.
Dann geht es weiter mit dem finden des neuen Punktes.
d=sqrt((x1-x2)²+(y1-y2)²)
d ist die Längeneinheit. Also wie weit der neue Punkt auf dem Vektor an den zweiten Punkt ran kommen soll.
Dann sähe das ganze so aus wenn er 2LE näher ran soll:
2=sqrt((2-(2+7r))²+(5,5-(5,5-3,5r))²).
Das ganze müsste ich jetzt nach r auflösen, r in meinen Vektor einsetzen und ich hätte den neuen Punkt.
-- Ende Rechnerei
Nur das r darin ist das Problem und ich habe keine Idee wie ich das auch nur ansatzweise im Programm umsetzen soll. Bzw. hab ich im Gefühl es läuft auf wüste IF schleifen hinaus.
Aber ich kann auch total falsch liegen und die Lösung ist weit aus simpler.
Darum meine frage: Wie bildet man so eine Rechnung in einem Java Programm ab.