Flugbahn berechnen (2D)



  • Hallo,

    in meinem Programm soll ein Objekt aus der Luft in parabelförmiger Flugbahn auf einen Zielpunkt am Boden fallen.
    Um das zu erreichen, kann ich lediglich den Geschwindigkeitsvektor in jedem Frame anpassen.

    Von der mathematischen Modellierung her sollte das ja relativ leicht sein:
    Ich habe von der Parabel den Scheitelpunkt (Startpunkt Objekt) und einen weiteren Punkt (Zielpunkt) gegeben.
    Mit der Scheitelpunktform f(x) = a(x - x_S)^2 + y_S kann ich die Parabel ja aus diesen Informationen berechnen. Dann hätte ich das Ganze in die Form eines Polynoms gebracht und die erste Ableitung gebildet, um die Info zur Geschwindigkeitsänderung zu erhalten.
    Soviel zum Weg "zu Fuß"...

    Nun ist die Frage, wie ich das am einfachsten programmatisch löse. Kann mir da jemand einen Tipp geben?

    Was mir eingefallen ist: Einen dritten Punkte dazu nehmen und mittels Gaußalgorithmus die Polynomparameter ermitteln, das erscheint mir aber relativ oversized. 😉

    Vielen Dank


  • Mod

    Die Änderung des Geschwindigkeitsvectors ist konstant die Erdbeschleunigung.



  • Ja in Y-Richtung... Aber zwischen Startpunkt Objekt und Zielpunkt Boden gibt es ein horizontales Delta, und das möchte ich parabelförmig anfliegen...



  • Bleibt die horizontale Komponente der Geschwindigkeit nicht gleich? Was für Kräfte sind denn noch im Spiel?



  • Eingangsdaten:
    Position: x y
    Geschwindigkeit: vx vy
    Erdbeschleunigung: g=9.81 oder so
    Quasiinfinitessimum: d=0.001 oder so

    for(;;){
      plot(x,y);
      x+=vx*d;
      y+=vy*d;
      vy+=g*d;
    }
    

Log in to reply