Home | Hierarchy | Members | Alphabetical | Related Pages |
#include <sfrotation.h>
Public Member Functions | |
SFRotation () | |
SFRotation (const float x, const float y, const float z, const float angle) | |
SFRotation & | operator= (const SFRotation &r) |
const float * | axis () const |
float | angle () const |
void | setAxis (const float x, const float y, const float z) |
void | setAngle (const float) |
void | setAxisAndAngle (const float x, const float y, const float z, const float a) |
bool | operator== (const SFRotation &r) const |
Static Public Member Functions | |
const char * | typeName () |
FieldTypeId | typeId () |
Friends | |
std::ostream & | operator<< (std::ostream &s, const SFRotation &f) |
The SFRotation field and event specifies one arbitrary rotation. The MFRotation field and event specifies zero or more arbitrary rotations. An SFRotation is written to the VRML file as four ISO C floating point values (see 2.[ISOC]) separated by whitespace. The first three values specify a normalized rotation axis vector about which the rotation takes place. The fourth value specifies the amount of right-handed rotation about that axis in radians. For example, an SFRotation containing a PI radians rotation about the Y axis is:
fooRot 0.0 1.0 0.0 3.14159265
The 3x3 matrix representation of a rotation (x y z a) is
[ tx2+c txy+sz txz-sy txy-sz ty2+c tyz+sx txz+sy tyz-sx tz2+c ] where c = cos(a), s = sin(a), and t = 1-c
The initial value of an SFRotation eventOut is (0 0 1 0). The initial value of an MFRotation eventOut is [ ].
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Generated on 24 Feb 2005 with version 1.3.9.1. |