Go to the
documentation of this file.
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015 namespace mudbox {
00016
00022 class MBDLL_DECL GroupNode : virtual public TreeNode
00023 {
00024 DECLARE_CLASS;
00025
00026 public:
00030 class Transformation *Transformation( void ) const;
00031 };
00032
00043 class MBDLL_DECL Transformation : virtual public GroupNode
00044 {
00045 DECLARE_CLASS;
00046
00047 public:
00055 virtual Vector TransformToWorld(
00056 const Vector &vL,
00057 float fW = 1.0f
00058 );
00059
00067 virtual Vector TransformToLocal(
00068 const Vector &vW,
00069 float fW = 1.0f
00070 );
00071
00074 virtual Matrix LocalToWorldMatrix( void );
00075
00078 virtual Matrix WorldToLocalMatrix( void );
00079
00082 virtual void SetLocalToWorldMatrix(
00083 const Matrix &mMatrix
00084 );
00085
00089 virtual Vector Rotation( void ) const;
00090
00093 virtual void SetRotation(
00094 const Vector &vYawPitchRoll
00095 );
00096
00099 virtual void SetRotation(
00100 const Matrix &mRotation
00101 );
00102
00105 virtual void AddRotation(
00106 const Vector &vYawPitchRoll,
00107 bool bAfter = false
00108 );
00109
00112 virtual void AddRotation(
00113 const Vector &vAxis,
00114 float fAngle
00115 );
00116
00120 virtual Vector Position( void ) const;
00121
00123 virtual void SetPosition(
00124 const Vector &vVector
00125 );
00126
00128 virtual Vector Scale( void ) const;
00129
00131 virtual void SetScale(
00132 const Vector &vScale
00133 );
00134
00136 virtual Vector Pivot( void ) const;
00137
00139 virtual void SetPivot( const Vector &vNewPivot );
00140 };
00141
00152 class MBDLL_DECL TransformationPalette : virtual public TreeNode
00153 {
00154
00155 DECLARE_CLASS;
00156
00157 public:
00160 virtual int TransformationCount( void ) const;
00161
00163 enum TransformationType
00164 {
00165 eMatrix,
00166 eDualQuaternion
00167 };
00168
00172 virtual TransformationType Type( void ) const;
00173
00175 virtual Matrix AsMatrix(
00176 int iIndex
00177 ) const;
00178
00180 virtual DualQuaternion AsDualQuaternion(
00181 int iIndex
00182 ) const;
00183
00186 virtual void SetupVertexProcessing( void ) const;
00187
00189 virtual void RestoreVertexProcessing( void ) const;
00190 };
00191
00192 };