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

SoIndexedTriangleStripSet — indexed triangle strip set shape node

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.

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.

File Format/Defaults

IndexedTriangleStripSet{vertexPropertyNULLcoordIndex0materialIndex-1normalIndex-1textureCoordIndex-1}

Inherits From

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

Methods

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

     staticSoTypegetClassTypeId()
          Returns type identifier for this class.

Name

       SoIndexedTriangleStripSet — indexed triangle strip set shape node

See Also

SoCoordinate3,SoDrawStyle,SoFaceDetail,SoIndexedFaceSet,SoTriangleStripSet,SoVertexPropertySoIndexedTriangleStripSet(3IV)()

Synopsis

#include<Inventor/nodes/SoIndexedTriangleStripSet.h>

          Fields from class SoIndexedShape:

     SoMFInt32coordIndexSoMFInt32materialIndexSoMFInt32normalIndexSoMFInt32textureCoordIndex

          Fields from class SoVertexShape:

     SoSFNodevertexProperty

          Methods from class SoIndexedTriangleStripSet:

                         SoIndexedTriangleStripSet()staticSoTypegetClassTypeId()

          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