oracular (3) SoAnnotation.3iv.gz

Provided by: inventor-doc_2.1.6+ds-2_all bug

NAME

       SoAnnotation — Annotation group node

INHERITS FROM

       SoBase > SoFieldContainer > SoNode > SoGroup > SoSeparator > SoAnnotation

SYNOPSIS

       #include <Inventor/nodes/SoAnnotation.h>

          Fields from class SoSeparator:

     SoSFEnum            renderCaching
     SoSFEnum            boundingBoxCaching
     SoSFEnum            renderCulling
     SoSFEnum            pickCulling

          Methods from class SoAnnotation:

                         SoAnnotation()
     static SoType       getClassTypeId()

          Methods from class SoSeparator:

     static void         setNumRenderCaches(int howMany)
     static int          getNumRenderCaches()

          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  delays  rendering  its children until all other nodes have been traversed, turning off
       depth buffer comparisons first. The result is that the shapes under the annotation node are  rendered  on
       top  of  the rest of the scene. This node is derived from SoSeparator, so it saves and restores traversal
       state for all actions.

       Note that if more than one annotation node is present in a graph, the order in which they  are  traversed
       determines  the  stacking  order  — later nodes are rendered on top of earlier ones. Also note that since
       depth buffer comparisons are disabled, complex 3D objects may not be rendered correctly when  used  under
       annotation nodes.

       Also  note  that  the annotation node does nothing special when picking along a ray. That is, it does not
       modify the sorting order of intersected objects based on which ones are under annotation nodes.  If  your
       application uses annotation nodes and you want to ensure that objects under them are picked "in front of"
       other objects, you can tell the pick action that you want to pick all objects along the ray and then scan
       through  the  paths  in  the  resulting  picked  point  instances to see if any of them passes through an
       annotation node. Your program can then decide what to do in such a case.

METHODS

                         SoAnnotation()
          Creates an annotation node with default settings.

     static SoType       getClassTypeId()
          Returns type identifier for this class.

ACTION BEHAVIOR

       SoGLRenderAction
          Delays rendering its children until all other nodes have been  traversed,  turning  off  depth  buffer
          comparisons first.

     SoCallbackAction, SoGetBoundingBoxAction, SoGetMatrixAction, SoRayPickAction, SoSearchAction
          Same as SoSeparator

FILE FORMAT/DEFAULTS

       Annotation {
          renderCaching       AUTO
          boundingBoxCaching  AUTO
          renderCulling       AUTO
          pickCulling         AUTO
     }

                                                                                             SoAnnotation(3IV)()