Blender  V3.3
Public Member Functions | List of all members
Freestyle::NodeTransform Class Reference

#include <NodeTransform.h>

Inheritance diagram for Freestyle::NodeTransform:
Freestyle::NodeGroup Freestyle::Node Freestyle::BaseObject

Public Member Functions

 NodeTransform ()
 
virtual ~NodeTransform ()
 
void Translate (real x, real y, real z)
 
void Rotate (real iAngle, real x, real y, real z)
 
void Scale (real x, real y, real z)
 
void MultiplyMatrix (const Matrix44r &iMatrix)
 
void setMatrix (const Matrix44r &iMatrix)
 
virtual void accept (SceneVisitor &v)
 
virtual void AddBBox (const BBox< Vec3r > &iBBox)
 
bool isScaled (const Matrix44r &M)
 
const Matrix44rmatrix () const
 
bool scaled () const
 
- Public Member Functions inherited from Freestyle::NodeGroup
 NodeGroup ()
 
virtual ~NodeGroup ()
 
virtual void AddChild (Node *iChild)
 
virtual int destroy ()
 
virtual void DetachChildren ()
 
virtual void DetachChild (Node *iChild)
 
virtual void RetrieveChildren (vector< Node * > &oNodes)
 
virtual const BBox< Vec3r > & UpdateBBox ()
 
virtual int numberOfChildren ()
 
- Public Member Functions inherited from Freestyle::Node
 Node ()
 
 Node (const Node &iBrother)
 
virtual ~Node ()
 
virtual const BBox< Vec3r > & bbox () const
 
virtual void setBBox (const BBox< Vec3r > &iBox)
 
virtual void clearBBox ()
 
- Public Member Functions inherited from Freestyle::BaseObject
 BaseObject ()
 
virtual ~BaseObject ()
 
int addRef ()
 
int release ()
 

Additional Inherited Members

- Protected Attributes inherited from Freestyle::NodeGroup
vector< Node * > _Children
 

Detailed Description

Definition at line 21 of file NodeTransform.h.

Constructor & Destructor Documentation

◆ NodeTransform()

Freestyle::NodeTransform::NodeTransform ( )
inline

◆ ~NodeTransform()

virtual Freestyle::NodeTransform::~NodeTransform ( )
inlinevirtual

Definition at line 29 of file NodeTransform.h.

Member Function Documentation

◆ accept()

void Freestyle::NodeTransform::accept ( SceneVisitor v)
virtual

Accept the corresponding visitor

Reimplemented from Freestyle::NodeGroup.

Definition at line 95 of file NodeTransform.cpp.

References Freestyle::NodeGroup::_Children, node, and v.

◆ AddBBox()

void Freestyle::NodeTransform::AddBBox ( const BBox< Vec3r > &  iBBox)
virtual

Overloads the Node::AddBBox in order to take care about the transformation

Reimplemented from Freestyle::Node.

Definition at line 107 of file NodeTransform.cpp.

References Freestyle::Node::AddBBox(), Freestyle::BBox< Point >::getMax(), and Freestyle::BBox< Point >::getMin().

◆ isScaled()

bool Freestyle::NodeTransform::isScaled ( const Matrix44r M)

Checks whether a matrix contains a scale factor or not. Returns true if yes. M The matrix to check

Definition at line 148 of file NodeTransform.cpp.

References M, and norm().

Referenced by setMatrix().

◆ matrix()

const Matrix44r& Freestyle::NodeTransform::matrix ( ) const
inline

accessors

Definition at line 70 of file NodeTransform.h.

◆ MultiplyMatrix()

void Freestyle::NodeTransform::MultiplyMatrix ( const Matrix44r iMatrix)

Multiplies the current matrix by iMatrix

Definition at line 81 of file NodeTransform.cpp.

◆ Rotate()

void Freestyle::NodeTransform::Rotate ( real  iAngle,
real  x,
real  y,
real  z 
)

multiplies the current matrix by a rotation matrix iAngle The rotation angle x, y, z The rotation axis

Definition at line 22 of file NodeTransform.cpp.

References KDL::cos(), Freestyle::VecMat::SquareMatrix< real, 4 >::identity(), Freestyle::VecMat::SquareMatrix< T, N >::identity(), M_PI, norm(), R, KDL::sin(), sqrt(), Freestyle::x, y, and z.

◆ Scale()

void Freestyle::NodeTransform::Scale ( real  x,
real  y,
real  z 
)

multiplies the current matrix by a scaling matrix. x, y, z The scaling coefficients with respect to the x,y,z axis

Definition at line 72 of file NodeTransform.cpp.

References Freestyle::x, y, and z.

◆ scaled()

bool Freestyle::NodeTransform::scaled ( ) const
inline

Definition at line 75 of file NodeTransform.h.

◆ setMatrix()

void Freestyle::NodeTransform::setMatrix ( const Matrix44r iMatrix)

Sets the current matrix to iMatrix

Definition at line 87 of file NodeTransform.cpp.

References isScaled().

◆ Translate()

void Freestyle::NodeTransform::Translate ( real  x,
real  y,
real  z 
)

multiplies the current matrix by the x, y, z translation matrix.

Definition at line 15 of file NodeTransform.cpp.

References Freestyle::x, y, and z.


The documentation for this class was generated from the following files: