55#ifndef _SO_SURROUND_SCALE_
56#define _SO_SURROUND_SCALE_
#define SoEXTENDER
Provide inline template functions for abs, swap, min, max, and clamp.
#define INVENTOR_API
Disable some annoying warnings on MSVC 6.
#define SO_NODE_HEADER(className)
Non-abstract classes have everything abstract classes have, plus a way to create an instance.
Abstract base class for all actions.
Performs a generic traversal of the scene graph.
This SoEXTENDER class allows expert users to examine "hidden" children in paths.
Renders a scene graph using OpenGL.
Computes bounding box of a scene.
Computes transformation matrix for subgraph.
Abstract base class for picking objects in a scene.
Field containing a int32_t integer.
Transformation node that adjusts the current matrix so a default cube will surround other objects.
bool isDoingTranslations()
void invalidate()
If you call this, then next time an action is applied the node will re-calculate it's cached translat...
virtual void callback(SoCallbackAction *action)
void setIgnoreInBbox(bool newVal)
virtual void getBoundingBox(SoGetBoundingBoxAction *action)
SoSFInt32 numNodesUpToContainer
When traversed by an action, if surroundScale needs to calculate a new box, surroundScale looks at th...
SoSurroundScale()
Creates a surround scale node with default settings.
void doAction(SoAction *action)
Called by actions that need to change the state with a new matrix.
virtual void GLRender(SoGLRenderAction *action)
These virtual functions implement all of the actions for nodes, Most of the default implementations d...
virtual void getMatrix(SoGetMatrixAction *action)
virtual void pick(SoPickAction *action)
void setDoingTranslations(bool doEm)
virtual ~SoSurroundScale()
void updateMySurroundParams(SoAction *action, const SbMatrix &inv)
SbVec3f cachedTranslation
SoSFInt32 numNodesUpToReset
Before applying the SoGetBoundingBoxAction (see the numNodesUpToContainer field aove) the surroundSca...