osg::AutoTransform Class Reference

Inheritance diagram for osg::AutoTransform:

osg::Transform osg::Group osg::Node osg::Object osg::Referenced

List of all members.

Public Types

enum  AutoRotateMode { NO_ROTATION, ROTATE_TO_SCREEN, ROTATE_TO_CAMERA }

Public Member Functions

 AutoTransform ()
 AutoTransform (const AutoTransform &pat, const CopyOp &copyop=CopyOp::SHALLOW_COPY)
virtual osg::ObjectcloneType () const
virtual osg::Objectclone (const osg::CopyOp &copyop) const
virtual bool isSameKindAs (const osg::Object *obj) const
virtual const char * className () const
virtual const char * libraryName () const
virtual void accept (NodeVisitor &nv)
virtual AutoTransformasAutoTransform ()
virtual const AutoTransformasAutoTransform () const
void setPosition (const Vec3d &pos)
const Vec3dgetPosition () const
void setRotation (const Quat &quat)
const QuatgetRotation () const
void setScale (double scale)
void setScale (const Vec3d &scale)
const Vec3dgetScale () const
void setMinimumScale (double minimumScale)
double getMinimumScale () const
void setMaximumScale (double maximumScale)
double getMaximumScale () const
void setPivotPoint (const Vec3d &pivot)
const Vec3dgetPivotPoint () const
void setAutoUpdateEyeMovementTolerance (float tolerance)
float getAutoUpdateEyeMovementTolerance () const
void setAutoRotateMode (AutoRotateMode mode)
AutoRotateMode getAutoRotateMode () const
void setAutoScaleToScreen (bool autoScaleToScreen)
bool getAutoScaleToScreen () const
void setAutoScaleTransitionWidthRatio (float ratio)
float getAutoScaleTransitionWidthRatio () const
virtual bool computeLocalToWorldMatrix (Matrix &matrix, NodeVisitor *nv) const
virtual bool computeWorldToLocalMatrix (Matrix &matrix, NodeVisitor *nv) const
virtual BoundingSphere computeBound () const

Protected Member Functions

virtual ~AutoTransform ()
void computeMatrix () const

Protected Attributes

Vec3d _position
Vec3d _pivotPoint
double _autoUpdateEyeMovementTolerance
AutoRotateMode _autoRotateMode
bool _autoScaleToScreen
Quat _rotation
Vec3d _scale
bool _firstTimeToInitEyePoint
osg::Vec3 _previousEyePoint
osg::Vec3 _previousLocalUp
Viewport::value_type _previousWidth
Viewport::value_type _previousHeight
osg::Matrixd _previousProjection
osg::Vec3d _previousPosition
double _minimumScale
double _maximumScale
double _autoScaleTransitionWidthRatio
bool _matrixDirty
osg::Matrixd _cachedMatrix


Detailed Description

AutoTransform is a derived form of Transform that automatically scales or rotates to keep its children aligned with screen coordinates.

Member Enumeration Documentation

Enumerator:
NO_ROTATION 
ROTATE_TO_SCREEN 
ROTATE_TO_CAMERA 


Constructor & Destructor Documentation

osg::AutoTransform::AutoTransform (  ) 

osg::AutoTransform::AutoTransform ( const AutoTransform pat,
const CopyOp copyop = CopyOp::SHALLOW_COPY 
)

virtual osg::AutoTransform::~AutoTransform (  )  [inline, protected, virtual]


Member Function Documentation

virtual osg::Object* osg::AutoTransform::cloneType (  )  const [inline, virtual]

clone an object of the same type as the node.

Reimplemented from osg::Node.

virtual osg::Object* osg::AutoTransform::clone ( const osg::CopyOp copyop  )  const [inline, virtual]

return a clone of a node, with Object* return type.

Reimplemented from osg::Node.

virtual bool osg::AutoTransform::isSameKindAs ( const osg::Object obj  )  const [inline, virtual]

return true if this and obj are of the same kind of object.

Reimplemented from osg::Node.

References NULL.

virtual const char* osg::AutoTransform::className (  )  const [inline, virtual]

return the name of the node's class type.

Reimplemented from osg::Node.

virtual const char* osg::AutoTransform::libraryName (  )  const [inline, virtual]

return the name of the node's library.

Reimplemented from osg::Node.

virtual void osg::AutoTransform::accept ( NodeVisitor nv  )  [virtual]

Visitor Pattern : calls the apply method of a NodeVisitor with this node's type.

Reimplemented from osg::Node.

virtual AutoTransform* osg::AutoTransform::asAutoTransform (  )  [inline, virtual]

virtual const AutoTransform* osg::AutoTransform::asAutoTransform (  )  const [inline, virtual]

void osg::AutoTransform::setPosition ( const Vec3d pos  )  [inline]

const Vec3d& osg::AutoTransform::getPosition (  )  const [inline]

void osg::AutoTransform::setRotation ( const Quat quat  )  [inline]

const Quat& osg::AutoTransform::getRotation (  )  const [inline]

void osg::AutoTransform::setScale ( double  scale  )  [inline]

void osg::AutoTransform::setScale ( const Vec3d scale  ) 

const Vec3d& osg::AutoTransform::getScale (  )  const [inline]

void osg::AutoTransform::setMinimumScale ( double  minimumScale  )  [inline]

double osg::AutoTransform::getMinimumScale (  )  const [inline]

void osg::AutoTransform::setMaximumScale ( double  maximumScale  )  [inline]

double osg::AutoTransform::getMaximumScale (  )  const [inline]

void osg::AutoTransform::setPivotPoint ( const Vec3d pivot  )  [inline]

const Vec3d& osg::AutoTransform::getPivotPoint (  )  const [inline]

void osg::AutoTransform::setAutoUpdateEyeMovementTolerance ( float  tolerance  )  [inline]

float osg::AutoTransform::getAutoUpdateEyeMovementTolerance (  )  const [inline]

void osg::AutoTransform::setAutoRotateMode ( AutoRotateMode  mode  )  [inline]

AutoRotateMode osg::AutoTransform::getAutoRotateMode (  )  const [inline]

void osg::AutoTransform::setAutoScaleToScreen ( bool  autoScaleToScreen  )  [inline]

bool osg::AutoTransform::getAutoScaleToScreen (  )  const [inline]

void osg::AutoTransform::setAutoScaleTransitionWidthRatio ( float  ratio  )  [inline]

float osg::AutoTransform::getAutoScaleTransitionWidthRatio (  )  const [inline]

virtual bool osg::AutoTransform::computeLocalToWorldMatrix ( Matrix matrix,
NodeVisitor nv 
) const [virtual]

Reimplemented from osg::Transform.

virtual bool osg::AutoTransform::computeWorldToLocalMatrix ( Matrix matrix,
NodeVisitor nv 
) const [virtual]

Reimplemented from osg::Transform.

virtual BoundingSphere osg::AutoTransform::computeBound (  )  const [virtual]

Overrides Group's computeBound. There is no need to override in subclasses from osg::Transform since this computeBound() uses the underlying matrix (calling computeMatrix if required).

Reimplemented from osg::Transform.

void osg::AutoTransform::computeMatrix (  )  const [protected]


Member Data Documentation

Quat osg::AutoTransform::_rotation [mutable, protected]

Vec3d osg::AutoTransform::_scale [mutable, protected]

bool osg::AutoTransform::_matrixDirty [mutable, protected]


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

Generated on Fri Mar 19 19:52:49 2010 for openscenegraph by  doxygen 1.5.6