Vektor Berechnung



  • Hallo
    Früher hab ich mit 3d Gamestudio programmiert. Wenn man da ein Model zu einem
    bestimmten Punkt ausrichten wollte, schrieb man einfach vec_rotate(my.x,you.x);
    das war einfach 🙂
    Aber jetzt wirds schwieriger mit C++. Also:
    Ich kenne meine X, Y und Z Koordinaten und meine Rotation um mich selbst (1-360).
    Ich möchte zu einem Bestimmten Punkt laufen, aber weiss nicht wie viel ich mich drehen muss, damit ich dann nur noch geradeaus laufen kann.
    Das Bild sollte alles erklären.
    http://www.pc-tune.ch/forenpix/frpx390.jpg

    Hoffe jemand kann mir helfen.
    mfg
    Vampir



  • Belese dich über den Tangens und seine Umkehrfunktion. 🙂



  • Ich kann nichts wirklich hilfreiches finden. Gibts noch ein Tipp? 🙂
    Oder gibts dazu spezielle C++ funktionen?



  • Ja, tan und atan. 🙂



  • Sorry aber ich kapier immer noch nicht.
    Also hier hab ich ein tan Beispiel:

    #include <stdio.h>
    #include <math.h>
    
    #define PI 3.14159265
    
    int main ()
    {
      double param, result;
      param = 45.0;
      result = tan (param*PI/180);
      printf ("The tangent of %lf degrees is %lf.\n", param, result );
      return 0;
    }
    

    Aber wie soll ich da ein Rotations Winkel berechnen und das erst noch mit Koordinaten? Sind ja immer 2 Zahlen.



  • Das Stichwort heisst Steigungswinkel. Berechne den Steigungswinkel zu deinem Ziel, danach den Steigungswinkel, den du im Moment eingeschlagen hast. Wenn die Differenz == 0 (oder unterhalb einer bestimmten Schranke) ist, dann hast du deine Richtung 🙂


Anmelden zum Antworten