Functions | |
void | Rotate_Object (double theta, double phi, double psi) |
void | QRotate_Object (const char *segment, double theta, double phi, double psi) |
void Rotate_Object | ( | double | theta, | |
double | phi, | |||
double | psi | |||
) |
Moves the represented object about its X-, Y-, or Z-axis.
theta | - Angle, in degrees, to rotate about the X-axis. | |
phi | - Angle to rotate about the Y-axis | |
psi | - Angle to rotate about the Z-axis |
If more than one degree of rotation is requested, the effect is of theta being performed first, then phi , then psi.
All rotations in HOOPS, no matter whether "camera" or "object", are performed by default using a left-hand rule. A positive rotation is represented by the di rection curved fingers of the left hand are pointing when the thumb points in th e positive direction along the axis in question, i.e., counter-clockwise. A nega tive rotation angle goes the other way. This definition can be reversed with the "Handedness" attribute.
The mathematical transform that is supplied to Append_Modelling_Matrix(), if you have any use for it, is:
void QRotate_Object | ( | const char * | segment, | |
double | theta, | |||
double | phi, | |||
double | psi | |||
) |
Similar to Rotate_Object(), but operates on a given segment rather than the currently open one.
segment | - Name of the segment(s) to be changed. | |
theta | - Angle, in degrees, to rotate about the X-axis. | |
phi | - Angle to rotate about the Y-axis | |
psi | - Angle to rotate about the Z-axis |