Hallo liebe Entwickler.
Wieder wende ich mich mit einem mathematischen Problem an euch.
Ich möchte eine Flugbahn berechnen von Punkt A nach Punkt B in verschiedenen Varianten.
Bekannt ist lediglich Punkt A (x,y), Punkt B (x,y), Winkel.
Die bisherige Flugbahn ist lediglich gerade von A nach B.
Was ich gerne hätte wäre
a) Bogenförmig von A nach B
b) Wellenförmig entlang der Geraden
c) zufällige Flugbahn (Wellenform) zum Zielpunkt. (die Grafik ist nur ein Beispel, das einfachste Ergebnis könnte hier genügen, es soll nur "zufällig" wirken und am Ende am Ziel B ankommen)
Hier mal eine Verdeutlichung:
http://s7.directupload.net/file/d/3059/ffd999g8_jpg.htm
Berechnung zufälliger Flugbahnen (Punkt A nach B)
Berechnung zufälliger Flugbahnen (Punkt A nach B)
Agent_Sasori
It's not a bug - it's a feature!
http://www.StephenKalisch.de | http://www.ria-tec.com | http://www.dirsync.de
It's not a bug - it's a feature!
http://www.StephenKalisch.de | http://www.ria-tec.com | http://www.dirsync.de
- man-in-black
- Beiträge: 362
- Registriert: 21.08.2006 17:39
Re: Berechnung zufälliger Flugbahnen (Punkt A nach B)
moin,
so viel Mathe steckt da auch nicht hinter. Rein von der Idee, kannst du doch die Stecke zwischen
A und B auf die x-achse legen (wie in deinen bilder), indem du den Betrag zwischen den Punkten ermittelst.
Über eine Funktion ermittelst du dann die Abweichungen von der bahn (Kreisgleichung, sinus,...).
Zum Schluss drehst du das dann mit dem Winkel wieder auf deine alte Richtung und addierst A(x,y) drauf
Vorschlag für den Bogen:
Leg den Mittelpunkt (M) eines Kreises in die Mitte zwischen A und B und wählst den Radius AB/2.
Wenn du die Kurve abgeflachter haben willst, brauchst du den Mittelpunkt nur senkrecht zu AB verschieben und den Radius
auf AM/2 einstellen. (Betrag = (x²+y²)^(1/2) ; Kreisgleichung: y=(radius²-x²)^(1/2) )
Vorschlag für die Welle:
Nimm eine Sinusfunktion (sinnvoll, da sin(0)=0) und pass die Periodendauer an: y=sin(n*x*T)
n-anzahl windungen
T=2pi/betrag(AB)
Idee für die zufällige Bahn:
Überlager einfach ein paar Funktionen mit schön hohen Exponenten, die zusammen bei 0 und AB eine Nullstelle haben^^
Gibt nat. noch viele andere Lösungsansätze, aber ich denke mal, diese ist relativ einfach zu verstehen...
MFG
MIB
so viel Mathe steckt da auch nicht hinter. Rein von der Idee, kannst du doch die Stecke zwischen
A und B auf die x-achse legen (wie in deinen bilder), indem du den Betrag zwischen den Punkten ermittelst.
Über eine Funktion ermittelst du dann die Abweichungen von der bahn (Kreisgleichung, sinus,...).
Zum Schluss drehst du das dann mit dem Winkel wieder auf deine alte Richtung und addierst A(x,y) drauf
Vorschlag für den Bogen:
Leg den Mittelpunkt (M) eines Kreises in die Mitte zwischen A und B und wählst den Radius AB/2.
Wenn du die Kurve abgeflachter haben willst, brauchst du den Mittelpunkt nur senkrecht zu AB verschieben und den Radius
auf AM/2 einstellen. (Betrag = (x²+y²)^(1/2) ; Kreisgleichung: y=(radius²-x²)^(1/2) )
Vorschlag für die Welle:
Nimm eine Sinusfunktion (sinnvoll, da sin(0)=0) und pass die Periodendauer an: y=sin(n*x*T)
n-anzahl windungen
T=2pi/betrag(AB)
Idee für die zufällige Bahn:
Überlager einfach ein paar Funktionen mit schön hohen Exponenten, die zusammen bei 0 und AB eine Nullstelle haben^^
Gibt nat. noch viele andere Lösungsansätze, aber ich denke mal, diese ist relativ einfach zu verstehen...
MFG
MIB
Re: Berechnung zufälliger Flugbahnen (Punkt A nach B)
Eine weitere Moeglichkeit waere eine Stoerfunktion zu nutzen. Du legst grundsaetzlich die direkte Strecke von A nach B zurueck (linear) und laesst eine Stoerfunktion wie zB Sinus wirken. Diese muss allerdings je nach zurueckgelegter Strecke gewichtet werden, damit du auch die Punkte A und B triffst (dh an A und B ist die gewichtung 0 und in der Mitte zB 1).
Es gibt wie schon gesagt wurde viele Moeglichkeiten so ein Problem anzugehen, am einfachsten waere es aber sicher, wenn du ein Anwendungsbsp gibst. Dann kann man etwas moeglichst passendes vorschlagen.
Es gibt wie schon gesagt wurde viele Moeglichkeiten so ein Problem anzugehen, am einfachsten waere es aber sicher, wenn du ein Anwendungsbsp gibst. Dann kann man etwas moeglichst passendes vorschlagen.
pb 4.51
Re: Berechnung zufälliger Flugbahnen (Punkt A nach B)
Hallo.
Erstmal vielen Dank ich werde damit mal experimentieren. Mal sehen ob ich damit weiter komme!
Erstmal vielen Dank ich werde damit mal experimentieren. Mal sehen ob ich damit weiter komme!

Agent_Sasori
It's not a bug - it's a feature!
http://www.StephenKalisch.de | http://www.ria-tec.com | http://www.dirsync.de
It's not a bug - it's a feature!
http://www.StephenKalisch.de | http://www.ria-tec.com | http://www.dirsync.de