Flugbahn schuss berechnen



  • Hallo,

    ich habe eine Kanone, die in Richtung der Maus feuern soll.

    Ich habe also zwei Punkte (Kanone und Ziel), wie berechne ich die einzelnen
    Punkte, auf denen der Schuss langfliegt?

    Irgendwie mit Vektoren?

    Hat vielleicht irgendjemand ein Beispiel oder dergleichen?

    MfG
    Andreas



  • ich würde sagen, eine klassische wurfparabel:
    --> http://de.wikipedia.org/wiki/Wurfparabel

    juhu. ich bin seit ewigkeiten mal wieder am board. ^^



  • Hallo,

    mit der Wurfparabel ist das viel zu kompliziert.

    Ich meinte eigentlich nur die gerade Linie zwischen den 2 Punkten.

    Wie berechne ich da jeden einzelnen Punkt auf der Linie.

    Nach Möglichkeit über den Zielpunkt hinaus, bis zum Bildschirmrand.

    MfG
    Andreas



  • Lineare Interpolation benutzen.

    Bye, TGGC (Fakten)


  • Administrator

    Grüsse,

    Ehm also ich würde das sicher mit Vektoren lösen. Zielpunkt minus Startpunkt und du hast den Richtungsvektor. Dann den Startpunkt plus x mal den Richtungsvektor und du kannst auf jeden Punkt in der Linie schliessen wenn du x varrierst.
    Oder noch verdeutlicht:
    Startpunkt (5, 2, 6)
    Zielpunkt (8, 6, 7)

    /8\   /5\   /3\
    |6| - |2| = |4|
    \7/   \6/   \1/
    

    Also der 3 / 4 / 7 Vektor ist der Richtungsvektor, zwischen den zwei Punkten.
    Nun machst du noch folgendes:

    /5\       /3\
    |2| + x * |4| = Jeder beliebige Punkt zwischen und nach dem Ziel oder Startpunkt.
    \6/       \1/
    

    Das Code habe ich nur benützt, damit die Abstände so bleiben wie sie sollen 😉
    Im Programm musst du dir natürlich eine Vektoren Klasse erstellen, oder die von DirectX oder OpenGL nehmen. Oder was auch immer oder wie auch immer du programmierst 😉

    Grüssli

    Edit: Ups habe noch was vergessen. Den Richtungsvektor sollte man am besten durch die Strecke zwischen Start- und Zielpunkt rechnen. So erhält man eine Art von Einheitsvektor, welchen man einfacher multiplizieren kann.
    Und das wäre dann ja ... (TGGC war schneller, mit weniger Text ^^) die Lineare Interpolation *g* ... aber ich will nicht einfach mit Begriffen um mich schmeissen, deshalb nehm ich mir lieber ein paar Minuten Zeit um es genauer zu erklären 😉
    Und Links sind immer so eine Sache *g*
    EditGrüssli ^^



  • Am besten rechnest Du so auch gleich den Vorhalt aus, sonst wird das nämlich nix mit treffen 😉 (Kannst mir das glauben, ich war mal Flak-Kanonier *g*)


Anmelden zum Antworten