vec_to_angle (ANGLE* ang, VECTOR* dir);
Berechnet die Pan- (Schwenk) und Tilt-
(Kipp) Winkel eines Richtungsvektors, und setzt diese in die Pan-und Tilt-Parameter
des angegebenen Euler-Winkels.
Sehr nützlich,
wenn man eine Richtung in einen Raumwinkel umrechnen will, um die Winkel
zu einem Ziel zu berechnen.
Parameter:
ang |
Eulerwinkel, der ermittelt werden soll |
dir |
Richtungsvektor |
Rückgabewert:
Länge des Vektors
Modifiziert:
ang
Geschwindigkeit:
Schnell
Algorithmus:
ANGLE.pan = atan(VECTOR.x/VECTOR.y);
ANGLE.tilt = asin(VECTOR.z/length(VECTOR));
Beispiel:
function turn_towards_target()
{
// get the direction from the entity MY to the entity YOU
vec_set(temp,your.x);
vec_sub(temp,my.x);
vec_to_angle(my.pan,temp); // now MY looks at YOU
}
Siehe auch:
ang_add, vec_rotate, vec_for_angle
► Aktuelle Version Online