In Winkeln bewegen?



  • Hi ihr,
    ich wollte mal fragen, wie ich mich in winkeln bewegen kann?

    D.h. man ist z.b. im winkel 45 in drückt nach vorne und bewegt sich auf dem bildschirm auch in die 45° nach vorne.

    Halt anstadt die üblichen x += 1; um 1 höher zu gehen ^^

    wie so eine rakete in einem spiel halt

    Habe gelesen das das irgententwas mit sin und cos ist?

    Verstehe das aber irgentwie nicht...

    Wäre nett wenn jemand mir helfen kann 🙂

    Mfg Loveless



  • hmm das machst du am besten vektoriell.

    Vektor = (cos(alpha), sin(alpha), sin(beta)) = (x,y,z)
    einheitswinkel erhälst du, in dem du den vektor durch seinen betrag teilst.
    Betrag(Vektor) = wurzel(cos²+sin²+sin²)
    für einen winkel von 0 grad für alpha, zeigt der vektor nach rechts, für 90 grad nach oben usw, beta entsprechend.
    Zu den aktuellen nun ein vielfaches dieses Vektors hinzuaddieren und du bewegst dich in eine richtung die vom winkel abhängt



  • Erstmal danke für deine Antwort,
    aber nunja .. ich versteh es einfach nicht ^^'

    Könntest du mir ein Beispiel geben?

    Mfg Loveless



  • Ok, erstmal muss ich mich entschuldigen, gestern Nacht habe ich teilweise unsinn erzählt. Also hier erstmal die korrekte Vektorgleichung(aus wikipedia):

    http://upload.wikimedia.org/math/6/8/1/6815c42ffdd7568bbe432f19961a0705.png

    R ist die länge des Vekors, sollte normalerweise für deine Fälle gleich 1 sein.

    Die Winkel sind hier anschaulich eingezeichnet:

    http://www.chemgapedia.de/vsengine/media/vsc/de/ch/16/gloss_grafik/ma/kugelkoordinaten.gif

    Wie sich der Vektor mit den verschiedenen WInkel verhält, schaust du dir am besten via Grafikprogramm an. D.h. du baust dir eine Gerade deren einer Endpunkt in obiger Form verläuft. Dann veränderst du mal die Winkel und schaust dir das ganze an.

    Um dein Objekt damit zu bewegen, musst du nur zu der X-koordinate(oder den X koordinaten) die X komponente des Vektors mal irgendein vielfaches hinzu addieren und dies natürlich entsprechend für die anderen Koordinaten tun.

    Alternative dazu wäre, einfach das Koordinatensystem zu drehen, sofern die Grafikbücherei die du verwendest, soetwas unterstützt. DAnn könntest du einfach das Koordinatensystem um die Wunschachse um den jeweiligen betrag drehen, und die Rakte(z.B.) immer gerade aus bewegen.


Log in to reply