QAngle: Difference between revisions
Jump to navigation
Jump to search
Note:Z is clamped to +/-50 for player viewangles.
TomEdwards (talk | contribs) (redone; the diagram was wrong) |
TomEdwards (talk | contribs) mNo edit summary |
||
Line 25: | Line 25: | ||
// Conversion back to a vector, if required | // Conversion back to a vector, if required | ||
AngleVectors(angMyAngle, &vecFromHammer);</source> | |||
AngleVectors(angMyAngle, & | |||
== See also == | == See also == |
Revision as of 06:01, 7 June 2009
QAngle is a C++ class that represents a three-dimensional Euler angle. Each QAngle contains three vec_t ordinates:
- X, for pitch (+down/-up)
- Y, for yaw (+left/-right)
- Z, for roll (+right/-left)
(45,10,0) means 45° down, 10° left and 0° roll.

Declaration
QAngle angMyAngle = QAngle(45,10,0);
- The classname QAngle is case-sensitive.
- You could also assign to the X, Y and Z member variables separately.
- The prefix ang (or sometimes just a) identifies the variable as an angle.
Converting to a vector
As there is no specific datadesc keyfield for angles, one chosen in Hammer will arrive as a vector. Its ordinates will represent degrees of rotation and not coordinates so it must be fixed up before use:
QAngle angMyAngle = QAngle(vecFromHammer.x, vecFromHammer.y, vecFromHammer.z);
// Conversion back to a vector, if required
AngleVectors(angMyAngle, &vecFromHammer);