TTreeTransform Class Reference
[Data Structures]

List of all members.

Public Member Functions

 TTreeTransform ()
 TTreeTransform (const TTreeTransform &aT)
boolean IsIdentity ()
boolean IsDirect () const
void Reset ()
void Expand (real scale)
void Align ()
void Orthogonalize ()
boolean operator== (const TTreeTransform &tt) const
boolean operator!= (const TTreeTransform &tt) const
void operator= (const TTreeTransform &tt)
TVector3 operator * (const TVector3 &point) const
TTreeTransform BAD_Multiply (const TTreeTransform &b) const
TTreeTransform InverseWithoutXYZScaling () const
void SetOffset (const TVector3 &offset)
void SetRotation (const TMatrix33 &rotation)
void SetUniformScaling (const real &scaling)
void SetHotPoint (const TVector3 &hotPoint)
void SetXYZScaling (const TVector3 &XYZScaling)
void SetPhyThetaPsy (real phy, real theta, real psy, boolean isDirect)
const TVector3 & GetOffset () const
const TMatrix33 & GetRotation () const
const real & GetUniformScaling () const
const TVector3 & GetHotPoint () const
const TVector3 & GetXYZScaling () const
void GetPhyThetaPsy (real &phy, real &theta, real &psy, boolean &isDirect) const
void GetTransform3D (TTransform3D &aT) const
void GetTransform3D (TMatrix33 &RR, TVector3 &TT) const
void GetCombinedTranslation (TVector3 &TT) const
void GetPlane (TPlane &aplane) const
void Translate (const TVector3 &vector)
void TranslateHP (const TVector3 &vector)
void TranslateHPL (const TVector3 &vector)
void RotateAxis (const TVector3 &center, const real sin, const real cos, const TVector3 &AXIS, const real &constrainAngle=kRealZero)
void Rotate (const TVector3 &center, const TVector3 &PP, const TVector3 &QQ, const TVector3 &AXIS, const real &constrainAngle=kRealZero)
void RotateL (const TMatrix33 &a)
void RotateR (const TMatrix33 &b)
TVector3 & Transform (const TVector3 &point, TVector3 &result) const
TVector3 & InverseTransform (const TVector3 &point, TVector3 &result) const
TVector3 & TransformV (const TVector3 &point, TVector3 &result) const
TVector3 & InverseTransformV (const TVector3 &point, TVector3 &result) const
TPlane & TransformPlane (const TPlane &plane, TPlane &result) const
TPlane & InverseTransformPlane (const TPlane &plane, TPlane &result) const
TBBox3D TransformBBox (const TBBox3D &box) const
TBBox3D InverseTransformBBox (const TBBox3D &box) const
TVector3 ScaleV (const TVector3 &) const

Public Attributes

TMatrix33 fRotation
 Rotation matrix around HotPoint.
TVector3 fOffset
 Vector from parent 0,0,0 to HotPoint.
real fUniformScaling
 Uniform scaling.
TVector3 fHotPoint
 Vector from local 0,0,0 to HotPoint.
TVector3 fXYZScaling
 XYZ (non-uniform) scaling.

Detailed Description

TTreeTransform is the full representation of a tree's transform

x'= fUniformScaling*fRotation*fXYZScaling*(x-fHotPoint) + fOffset

Example (in 1D):

   
    Parent          fOffset              H.P.           fHotPoint           Local
    Zero +------------------------------> + <-----------------------------+ Zero
    


Constructor & Destructor Documentation

TTreeTransform::TTreeTransform (   ) 
 

TTreeTransform::TTreeTransform (  const TTreeTransform &  aT  ) 
 


Member Function Documentation

void TTreeTransform::Align (   ) 
 

TTreeTransform TTreeTransform::BAD_Multiply (  const TTreeTransform &  b  )  const
 

void TTreeTransform::Expand (  real  scale  ) 
 

void TTreeTransform::GetCombinedTranslation (  TVector3 &  TT  )  const
 

const TVector3& TTreeTransform::GetHotPoint (   )  const [inline]
 

const TVector3& TTreeTransform::GetOffset (   )  const [inline]
 

void TTreeTransform::GetPhyThetaPsy (  real &  phy,
real &  theta,
real &  psy,
boolean &  isDirect
)  const
 

void TTreeTransform::GetPlane (  TPlane &  aplane  )  const
 

const TMatrix33& TTreeTransform::GetRotation (   )  const [inline]
 

void TTreeTransform::GetTransform3D (  TMatrix33 &  RR,
TVector3 &  TT
)  const
 

void TTreeTransform::GetTransform3D (  TTransform3D &  aT  )  const
 

const real& TTreeTransform::GetUniformScaling (   )  const [inline]
 

const TVector3& TTreeTransform::GetXYZScaling (   )  const [inline]
 

TVector3& TTreeTransform::InverseTransform (  const TVector3 &  point,
TVector3 &  result
)  const
 

TBBox3D TTreeTransform::InverseTransformBBox (  const TBBox3D &  box  )  const
 

TPlane& TTreeTransform::InverseTransformPlane (  const TPlane &  plane,
TPlane &  result
)  const
 

TVector3& TTreeTransform::InverseTransformV (  const TVector3 &  point,
TVector3 &  result
)  const
 

TTreeTransform TTreeTransform::InverseWithoutXYZScaling (   )  const
 

boolean TTreeTransform::IsDirect (   )  const
 

boolean TTreeTransform::IsIdentity (   ) 
 

TVector3 TTreeTransform::operator * (  const TVector3 &  point  )  const
 

boolean TTreeTransform::operator!= (  const TTreeTransform &  tt  )  const [inline]
 

void TTreeTransform::operator= (  const TTreeTransform &  tt  ) 
 

boolean TTreeTransform::operator== (  const TTreeTransform &  tt  )  const
 

void TTreeTransform::Orthogonalize (   ) 
 

void TTreeTransform::Reset (   ) 
 

void TTreeTransform::Rotate (  const TVector3 &  center,
const TVector3 &  PP,
const TVector3 &  QQ,
const TVector3 &  AXIS,
const real &  constrainAngle = kRealZero
) 
 

void TTreeTransform::RotateAxis (  const TVector3 &  center,
const real  sin,
const real  cos,
const TVector3 &  AXIS,
const real &  constrainAngle = kRealZero
) 
 

void TTreeTransform::RotateL (  const TMatrix33 &  a  ) 
 

void TTreeTransform::RotateR (  const TMatrix33 &  b  ) 
 

TVector3 TTreeTransform::ScaleV (  const TVector3 &   )  const
 

void TTreeTransform::SetHotPoint (  const TVector3 &  hotPoint  )  [inline]
 

void TTreeTransform::SetOffset (  const TVector3 &  offset  )  [inline]
 

void TTreeTransform::SetPhyThetaPsy (  real  phy,
real  theta,
real  psy,
boolean  isDirect
) 
 

void TTreeTransform::SetRotation (  const TMatrix33 &  rotation  )  [inline]
 

void TTreeTransform::SetUniformScaling (  const real &  scaling  )  [inline]
 

void TTreeTransform::SetXYZScaling (  const TVector3 &  XYZScaling  )  [inline]
 

TVector3& TTreeTransform::Transform (  const TVector3 &  point,
TVector3 &  result
)  const
 

TBBox3D TTreeTransform::TransformBBox (  const TBBox3D &  box  )  const
 

TPlane& TTreeTransform::TransformPlane (  const TPlane &  plane,
TPlane &  result
)  const
 

TVector3& TTreeTransform::TransformV (  const TVector3 &  point,
TVector3 &  result
)  const
 

void TTreeTransform::Translate (  const TVector3 &  vector  ) 
 

void TTreeTransform::TranslateHP (  const TVector3 &  vector  ) 
 

Translates the hot point

Parameters:
vector the translation vector in PARENT coordinates

void TTreeTransform::TranslateHPL (  const TVector3 &  vector  ) 
 

Translates the hot point

Parameters:
vector the translation vector in LOCAL coordinates


Member Data Documentation

TVector3 TTreeTransform::fHotPoint
 

Vector from local 0,0,0 to HotPoint.

TVector3 TTreeTransform::fOffset
 

Vector from parent 0,0,0 to HotPoint.

TMatrix33 TTreeTransform::fRotation
 

Rotation matrix around HotPoint.

real TTreeTransform::fUniformScaling
 

Uniform scaling.

TVector3 TTreeTransform::fXYZScaling
 

XYZ (non-uniform) scaling.


The documentation for this class was generated from the following file:
Generated on Mon Mar 14 12:29:10 2005 for Carrara SDK Doc by  doxygen 1.3.9.1