logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

SoPathSwitch — group node that traverses only when traversed along a given path

Action Behavior

SoGLRenderAction,SoCallbackAction,SoGetBoundingBoxAction,SoRayPickAction,SoHandleEventAction
          Traverses the children if the paths match.

Description

SoPathSwitch  is  a group node that traverses its children only if the current traversal path matches the
       SoPath in the path field. This can be used, for example, to affect only one instance of a  subgraph.  The
       path field contains the path up to (but not including) the SoPathSwitch. The path need not go all the way
       back  to the root; if it does not, then only the number of ancestors that are in the path are compared to
       see if the children should be traversed. A NULL path means that the children are never traversed.

Fields

SoSFPathpath
          The path that must match the current traversal path.

File Format/Defaults

PathSwitch{pathNULL}

Inherits From

       SoBase > SoFieldContainer > SoNode > SoGroup > SoPathSwitch

Methods

SoPathSwitch()
          Creates a path switch node with default settings.

                         SoPathSwitch(intnChildren)
          Constructor that takes approximate number of children.

     staticSoTypegetClassTypeId()
          Returns type identifier for this class.

Name

       SoPathSwitch — group node that traverses only when traversed along a given path

See Also

SoPath,SoSwitchSoPathSwitch(3IV)()

Synopsis

#include<Inventor/nodes/SoPathSwitch.h>

          Fields from class SoPathSwitch:

     SoSFPathpath

          Methods from class SoPathSwitch:

                         SoPathSwitch()SoPathSwitch(intnChildren)staticSoTypegetClassTypeId()

          Methods from class SoGroup:

     voidaddChild(SoNode*child)voidinsertChild(SoNode*child,intnewChildIndex)SoNode*getChild(intindex)constintfindChild(constSoNode*child)constintgetNumChildren()constvoidremoveChild(intindex)voidremoveChild(SoNode*child)voidremoveAllChildren()voidreplaceChild(intindex,SoNode*newChild)voidreplaceChild(SoNode*oldChild,SoNode*newChild)

          Methods from class SoNode:

     voidsetOverride(SbBoolstate)SbBoolisOverride()constSoNode*copy(SbBoolcopyConnections=FALSE)constvirtualSbBoolaffectsState()conststaticSoNode*getByName(constSbName&name)staticintgetByName(constSbName&name,SoNodeList&list)

          Methods from class SoFieldContainer:

     voidsetToDefaults()SbBoolhasDefaultValues()constSbBoolfieldsAreEqual(constSoFieldContainer*fc)constvoidcopyFieldValues(constSoFieldContainer*fc,SbBoolcopyConnections=FALSE)SbBoolset(constchar*fieldDataString)voidget(SbString&fieldDataString)virtualintgetFields(SoFieldList&resultList)constvirtualSoField*getField(constSbName&fieldName)constSbBoolgetFieldName(constSoField*field,SbName&fieldName)constSbBoolisNotifyEnabled()constSbBoolenableNotify(SbBoolflag)

          Methods from class SoBase:

     voidref()voidunref()constvoidunrefNoDelete()constvoidtouch()virtualSoTypegetTypeId()constSbBoolisOfType(SoTypetype)constvirtualvoidsetName(constSbName&name)virtualSbNamegetName()const

See Also