26 myRot[0] = myRot[1] = myRot[2] = 0.0;
27 myRad[0] = myRad[1] = myRad[2] = 0.0;
30 myExtraXform.identity();
32 myDirtyRadians =
true;
41 { memcpy( r, myRot,
sizeof(myRot) ); }
48 myRad[0] = SYSdegToRad(myRot[0]);
49 myRad[1] = SYSdegToRad(myRot[1]);
50 myRad[2] = SYSdegToRad(myRot[2]);
51 myDirtyRadians =
false;
60 myRad[0] = SYSdegToRad(myRot[0]);
61 myRad[1] = SYSdegToRad(myRot[1]);
62 myRad[2] = SYSdegToRad(myRot[2]);
63 myDirtyRadians =
false;
65 memcpy( r, myRad,
sizeof(myRad) );
72 const void *
getData()
const {
return myData; }
74 {
return myConstraint.constrain(axis, angle, step); }
77 { myRot[axis] =
r; myDirtyRadians =
true; }
80 memcpy( myRot, r,
sizeof(myRot) );
81 myDirtyRadians =
true;
85 memcpy( myRot, deg,
sizeof(myRot) );
86 memcpy( myRad, rad,
sizeof(myRad) );
87 myDirtyRadians =
false;
91 { myExtraXform = xform; }
95 void setData(
const void *d ){ myData = d; }
100 myConstraint.setConstraint(rest, xrange, yrange,
115 return inclusive ?
sizeof(*this) : 0;
128 mutable bool myDirtyRadians;
void setRotates(const fpreal *deg, const fpreal *rad)
int64 getMemoryUsage(bool inclusive) const
SIM_API const UT_StringHolder angle
void getRotates(fpreal *r) const
const void * getData() const
fpreal getDampening() const
fpreal getRadians(int axis) const
void setRotates(const fpreal *r)
void setExtraXform(const UT_Matrix4R &xform)
void setDampening(fpreal d)
const UT_Matrix4R & getExtraXform() const
void setConstraint(fpreal rest[3], fpreal xrange[2], fpreal yrange[2], fpreal zrange[2], fpreal damp[3], fpreal roll[3])
fpreal constrain(int axis, fpreal angle, fpreal step) const
void setData(const void *d)
void setRotate(int axis, fpreal r)
void setRotateMatrix(const UT_Matrix3R &m)
fpreal getRotate(int axis) const
void getRadians(fpreal *r) const
GA_API const UT_StringHolder rest
const UT_Matrix3R & getRotateMatrix() const