Open Inventor Reference
SoNonIndexedShape Class Reference

Abstract base class for all non-indexed vertex-based shapes. More...

#include <Inventor/nodes/SoNonIndexedShape.h>

Inheritance diagram for SoNonIndexedShape:
SoVertexShape SoShape SoNode SoFieldContainer SoBase SoFaceSet SoLineSet SoPointSet SoQuadMesh SoTriangleStripSet

List of all members.

Static Public Member Functions

static void initClass ()
 Initializes base node class.

Public Attributes

Fields
SoSFInt32 startIndex
 Obsolete field, provided only for compatibility reasons.

Protected Member Functions

 SoNonIndexedShape ()
 Constructor - makes this abstract.
void computeCoordBBox (SoAction *action, int numVertices, SbBox3f &box, SbVec3f &center)
 This is a convenience method to simplify the job of computing bounding boxes for subclasses; it can be called from a subclass's computeBBox() method.
virtual ~SoNonIndexedShape ()

Detailed Description

This node is the abstract base class for all vertex-based shapes that are not constructed from indices, such as SoFaceSet, SoLineSet, and SoQuadMesh.

All subclasses of SoNonIndexedShape construct objects by using the coordinates specified in the vertexProperty field (from SoVertexShape), or the current inherited coordinates. The startIndex field defined by this class is now obsolete, and is provided here only for compatibility with old files and programs.

The subclass decides what to do with this and any subsequent coordinates. The shape is drawn with the current lighting model and drawing style and is transformed by the current transformation matrix.

Material, normal, and texture coordinate bindings for shapes derived from this class ignore any index specifications. That is, a binding value of PER_FACE_INDEXED is treated the same way as PER_FACE, and so on.

If there aren't sufficient values in the current coordinates, material, or texture coordinates, errors will occur.

See Also
SoFaceSet, SoIndexedShape, SoLineSet, SoPointSet, SoQuadMesh, SoTriangleStripSet, SoVertexProperty

Definition at line 102 of file SoNonIndexedShape.h.


Constructor & Destructor Documentation

SoNonIndexedShape::SoNonIndexedShape ( ) [protected]
virtual SoNonIndexedShape::~SoNonIndexedShape ( ) [protected, virtual]

Member Function Documentation

void SoNonIndexedShape::computeCoordBBox ( SoAction action,
int  numVertices,
SbBox3f box,
SbVec3f center 
) [protected]

It sets the given bounding box to contain all vertices of the shape, assuming that the shape uses the numVertices coordinates beginning at the value in startIndex. (If numVertices is negative, it uses all coordinates from startIndex on.) It also sets the center to the average of the vertices' coordinates.

static void SoNonIndexedShape::initClass ( ) [static]

Reimplemented from SoVertexShape.

Reimplemented in SoFaceSet, SoLineSet, SoPointSet, SoQuadMesh, and SoTriangleStripSet.


Member Data Documentation

Index of first coordinate of shape.

Definition at line 112 of file SoNonIndexedShape.h.


The documentation for this class was generated from the following file: