]> icculus.org git repositories - divverent/nexuiz.git/blob - data/qcsrc/warpzonelib/anglestransform.qh
turn the angles the other way for consistency
[divverent/nexuiz.git] / data / qcsrc / warpzonelib / anglestransform.qh
1 #define POSITIVE_PITCH_IS_DOWN
2
3 #ifdef POSITIVE_PITCH_IS_DOWN
4 #define fixedmakevectors makevectors
5 vector fixedvectoangles(vector a);
6 vector fixedvectoangles2(vector a, vector b);
7 #else
8 void fixedmakevectors(vector a);
9 #define fixedvectoangles2 vectoangles2
10 #define fixedvectoangles vectoangles
11 #endif
12
13 vector AnglesTransform_Apply(vector transform, vector v);
14 vector AnglesTransform_Multiply(vector t1, vector t2);
15 vector AnglesTransform_Invert(vector transform);
16 vector AnglesTransform_TurnDirectionFU(vector transform);
17 vector AnglesTransform_TurnDirectionFR(vector transform);
18 vector AnglesTransform_Divide(vector to_transform, vector from_transform);
19
20 vector AnglesTransform_Normalize(vector t, float minimize_roll); // makes sure all angles are in their range: yaw in -180..180, pitch in -90..90, roll in -180..180 (or if minimize_roll is set, pitch in -180..180, roll in -90..90)
21
22 vector AnglesTransform_ApplyToAngles(vector transform, vector v);
23 vector AnglesTransform_ApplyToVAngles(vector transform, vector v);