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 |