Provided by: inventor-doc_2.1.5-10-24_all bug

NAME

       SoIndexedTriangleStripSet — indexed triangle strip set shape node

INHERITS FROM

       SoBase > SoFieldContainer > SoNode > SoShape > SoVertexShape > SoIndexedShape > SoIndexedTriangleStripSet

SYNOPSIS

       #include <Inventor/nodes/SoIndexedTriangleStripSet.h>

          Fields from class SoIndexedShape:

     SoMFInt32           coordIndex
     SoMFInt32           materialIndex
     SoMFInt32           normalIndex
     SoMFInt32           textureCoordIndex

          Fields from class SoVertexShape:

     SoSFNode            vertexProperty

          Methods from class SoIndexedTriangleStripSet:

                         SoIndexedTriangleStripSet()
     static SoType       getClassTypeId()

          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  shape  node  constructs triangle strips out of vertices located at the coordinates specified in the
       vertexProperty field (from SoVertexShape), or the current inherited coordinates. For optimal performance,
       the vertexProperty field is recommended.

       SoIndexedTriangleStripSet  uses  the indices in the coordIndex field (from SoIndexedShape) to specify the
       vertices of the triangle strips. An index of SO_END_STRIP_INDEX (-1) indicates that the current strip has
       ended and the next one begins.

       The  vertices of the faces are transformed by the current transformation matrix. The faces are drawn with
       the current light model and drawing style.

       Treatment of the current material and normal binding is as follows:  PER_PART  specifies  a  material  or
       normal per strip. PER_FACE binding specifies a material or normal for each triangle. PER_VERTEX specifies
       a material or normal for each vertex. The corresponding _INDEXED bindings  are  the  same,  but  use  the
       materialIndex  or normalIndex indices (see SoIndexedShape).  The default material binding is OVERALL. The
       default normal binding is PER_VERTEX_INDEXED

       If any normals (or materials) are specified, Inventor assumes you provide the correct number of them,  as
       indicated  by  the  binding.  You will see unexpected results if you specify fewer normals (or materials)
       than the shape requires. If no normals are specified, they will be generated automatically.

METHODS

                         SoIndexedTriangleStripSet()
          Creates an indexed triangle strip set node with default settings.

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

ACTION BEHAVIOR

       SoGLRenderAction
          Draws a strip set based on the current coordinates, normals, materials, drawing style, and so on.

     SoRayPickAction
          Picks on the strip set based  on  the  current  coordinates  and  transformation.  Details  about  the
          intersection are returned in an SoFaceDetail.

     SoGetBoundingBoxAction
          Computes  the bounding box that encloses all vertices of the strip set with the current transformation
          applied to them. Sets the center to the average of the coordinates of all vertices.

     SoCallbackAction
          If any triangle callbacks are registered with the action, they will be  invoked  for  each  successive
          triangle forming the strips of the set.

FILE FORMAT/DEFAULTS

       IndexedTriangleStripSet {
          vertexProperty     NULL
          coordIndex         0
          materialIndex      -1
          normalIndex        -1
          textureCoordIndex  -1
     }

SEE ALSO

       SoCoordinate3, SoDrawStyle, SoFaceDetail, SoIndexedFaceSet, SoTriangleStripSet, SoVertexProperty

                                                                                SoIndexedTriangleStripSet(3IV)()