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.jpgHoffe 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