Coin Logo http://www.sim.no
http://www.coin3d.org

Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Protected Member Functions

SoRotationXYZ Class Reference

The SoRotationXYZ class is a node type for specifying rotation around a particular axis.Application programmers can use nodes of this type instead of SoRotation nodes for simplicity and clarity if the rotation will only happen around one particular axis. More...

#include <Inventor/nodes/SoRotationXYZ.h>

Inheritance diagram for SoRotationXYZ:
SoTransformation SoNode SoFieldContainer SoBase

List of all members.

Public Types

enum  Axis { X, Y, Z }

Public Member Functions

 SoRotationXYZ (void)
SbRotation getRotation (void) const
virtual void doAction (SoAction *action)
virtual void GLRender (SoGLRenderAction *action)
virtual void callback (SoCallbackAction *action)
virtual void getBoundingBox (SoGetBoundingBoxAction *action)
virtual void getMatrix (SoGetMatrixAction *action)
virtual void pick (SoPickAction *action)
virtual void getPrimitiveCount (SoGetPrimitiveCountAction *action)

Static Public Member Functions

static void initClass (void)

Public Attributes

SoSFEnum axis
SoSFFloat angle

Protected Member Functions

virtual ~SoRotationXYZ ()

Detailed Description

The SoRotationXYZ class is a node type for specifying rotation around a particular axis.

Application programmers can use nodes of this type instead of SoRotation nodes for simplicity and clarity if the rotation will only happen around one particular axis.

Using SoRotationXYZ nodes are also simpler and more efficient than using SoRotation nodes if you are connecting engines to rotation angles for animation purposes.

FILE FORMAT/DEFAULTS:

    RotationXYZ {
        angle 0
        axis X
    }

Member Enumeration Documentation

Enumerated values for the 3 axes.


Constructor & Destructor Documentation

SoRotationXYZ::SoRotationXYZ ( void  )

Constructor.

References angle, and axis.

SoRotationXYZ::~SoRotationXYZ ( ) [protected, virtual]

Destructor.


Member Function Documentation

void SoRotationXYZ::initClass ( void  ) [static]

Sets up initialization for data common to all instances of this class, like submitting necessary information to the Coin type system.

Reimplemented from SoTransformation.

SbRotation SoRotationXYZ::getRotation ( void  ) const

Returns an SbRotation object with values set up to correspond with the specified rotation of the node.

References angle.

Referenced by getMatrix().

void SoRotationXYZ::doAction ( SoAction action) [virtual]

This function performs the typical operation of a node for any action.

Reimplemented from SoNode.

References angle, and SoAction::getState().

Referenced by callback(), getBoundingBox(), getPrimitiveCount(), GLRender(), and pick().

void SoRotationXYZ::GLRender ( SoGLRenderAction action) [virtual]

Action method for the SoGLRenderAction.

This is called during rendering traversals. Nodes influencing the rendering state in any way or who wants to throw geometry primitives at OpenGL overrides this method.

Reimplemented from SoNode.

References doAction().

void SoRotationXYZ::callback ( SoCallbackAction action) [virtual]

Action method for SoCallbackAction.

Simply updates the state according to how the node behaves for the render action, so the application programmer can use the SoCallbackAction for extracting information about the scene graph.

Reimplemented from SoNode.

References doAction().

void SoRotationXYZ::getBoundingBox ( SoGetBoundingBoxAction action) [virtual]

Action method for the SoGetBoundingBoxAction.

Calculates bounding box and center coordinates for node and modifies the values of the action to encompass the bounding box for this node and to shift the center point for the scene more towards the one for this node.

Nodes influencing how geometry nodes calculates their bounding box also overrides this method to change the relevant state variables.

Reimplemented from SoNode.

References doAction().

void SoRotationXYZ::getMatrix ( SoGetMatrixAction action) [virtual]

Action method for SoGetMatrixAction.

Updates action by accumulating with the transformation matrix of this node (if any).

Reimplemented from SoNode.

References SoGetMatrixAction::getInverse(), SoGetMatrixAction::getMatrix(), getRotation(), SbRotation::getValue(), SbRotation::inverse(), SbMatrix::multLeft(), and SbMatrix::multRight().

void SoRotationXYZ::pick ( SoPickAction action) [virtual]

Action method for SoPickAction.

Does common processing for SoPickAction action instances.

Reimplemented from SoNode.

References doAction().

void SoRotationXYZ::getPrimitiveCount ( SoGetPrimitiveCountAction action) [virtual]

Action method for the SoGetPrimitiveCountAction.

Calculates the number of triangle, line segment and point primitives for the node and adds these to the counters of the action.

Nodes influencing how geometry nodes calculates their primitive count also overrides this method to change the relevant state variables.

Reimplemented from SoNode.

References doAction().


Member Data Documentation

Which axis to rotate around. Defaults to SoRotationXYZ::X.

Referenced by SoRotationXYZ().

The angle to rotate, specified in radians.

Referenced by doAction(), getRotation(), and SoRotationXYZ().


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

Copyright © 1998-2007 by Systems in Motion AS. All rights reserved.

Generated on Mon Feb 28 2011 10:12:18 for Coin by Doxygen. 1.7.3