Provided by: inventor-doc_2.1.5-10-18_all
NAME
SoTransformSeparator — group node that saves and restores transformation state
INHERITS FROM
SoBase > SoFieldContainer > SoNode > SoGroup > SoTransformSeparator
SYNOPSIS
#include <Inventor/nodes/SoTransformSeparator.h> Methods from class SoTransformSeparator: SoTransformSeparator() SoTransformSeparator(int nChildren) static SoType getClassTypeId() Methods from class SoGroup: void addChild(SoNode *child) void insertChild(SoNode *child, int newChildIndex) SoNode * getChild(int index) const int findChild(const SoNode *child) const int getNumChildren() const void removeChild(int index) void removeChild(SoNode *child) void removeAllChildren() void replaceChild(int index, SoNode *newChild) void replaceChild(SoNode *oldChild, SoNode *newChild) Methods from class SoNode: void setOverride(SbBool state) SbBool isOverride() const SoNode * copy(SbBool copyConnections = FALSE) const virtual SbBool affectsState() const static SoNode * getByName(const SbName &name) static int getByName(const SbName &name, SoNodeList &list) Methods from class SoFieldContainer: void setToDefaults() SbBool hasDefaultValues() const SbBool fieldsAreEqual(const SoFieldContainer *fc) const void copyFieldValues(const SoFieldContainer *fc, SbBool copyConnections = FALSE) SbBool set(const char *fieldDataString) void get(SbString &fieldDataString) virtual int getFields(SoFieldList &resultList) const virtual SoField * getField(const SbName &fieldName) const SbBool getFieldName(const SoField *field, SbName &fieldName) const SbBool isNotifyEnabled() const SbBool enableNotify(SbBool flag) Methods from class SoBase: void ref() void unref() const void unrefNoDelete() const void touch() virtual SoType getTypeId() const SbBool isOfType(SoType type) const virtual void setName(const SbName &name) virtual SbName getName() const
DESCRIPTION
This group node is similar to the SoSeparator node in that it saves state before traversing its children and restores it afterwards. However, it saves only the current transformation; all other state is left as is. This node can be useful for positioning a camera, since the transformations to the camera will not affect the rest of the scene, even through the camera will view the scene. Similarly, this node can be used to isolate transformations to light sources or other objects.
METHODS
SoTransformSeparator() Creates a transform separator node with default settings. SoTransformSeparator(int nChildren) Constructor that takes approximate number of children. static SoType getClassTypeId() Returns type identifier for this class.
ACTION BEHAVIOR
SoGLRenderAction, SoCallbackAction, SoGetBoundingBoxAction, SoGetMatrixAction, SoRayPickAction Saves the current transformation state, traverses all children, and restores the previous transformation state.
FILE FORMAT/DEFAULTS
TransformSeparator { }
SEE ALSO
SoResetTransform, SoTransformation SoTransformSeparator(3IV)()