NAME SoVertexShape SoVtx "" {
abstract base class for all vertex-based shape nodes
}

INCLUDE nodes/SoVertexShape.h

DESC {
This node is the abstract base class for all vertex-based shape
(geometry) nodes. It is used as a
repository for convenience functions for subclasses and to provide a
type identifier to make it easy to determine whether a shape is
vertex-based.
It contains one public field, the \cSoVertexProperty\.
field. 
\p
All subclasses of this node draw objects constructed from
vertices.  If the vertexProperty field is non-null and there are
coordinates in the associated vertex property node, then those
coordinates are used.  Otherwise the objects are drawn using the 
current coordinates in the state. The coordinates of the shape
are transformed by the current transformation matrix and are drawn
with the current light model and drawing style.
\p
Subclasses that construct polygons from vertices may not render or
pick correctly if any of their polygons are self-intersecting or
non-planar.
\p
All vertex shape subclasses use the bounding box of the shape to
determine default texture coordinates. The longest dimension of the
bounding box defines the S coordinates, and the next longest defines
the T coordinates. The value of the S coordinate ranges from 0 to 1,
from one end of the bounding box to the other. The T coordinate ranges
between 0 and the ratio of the second greatest dimension of the
bounding box to the greatest dimension.
\p
When a vertex-based shape is picked with an \cSoRayPickAction\., a
detail is always returned. If the shape is composed of faces (such as
\cSoFaceSet\. or \cSoTriangleStripSet\.), an \cSoFaceDetail\. is
returned. If the shape is composed of line segments (such as
\cSoLineSet\.), an \cSoLineDetail\. is returned. If the shape is
composed of points (such as \cSoPointSet\.), an \cSoPointDetail\. is
returned. Note that the type of detail returned is not affected by the
current drawing style.
\p
Similarly, each class of vertex-based shape invokes appropriate
callbacks if those callbacks are registered with the
\cSoCallbackAction\.. Shapes made of faces invoke triangle callbacks
for each generated triangle. (Faces may be triangulated to create
these triangles.) Shapes made of line segments invoke line segment
callbacks for each segment, and shapes made of points invoke point
callbacks.
\p
The subclass \cSoIndexedShape\. is a base class for vertex-based
shapes that index into the current set of coordinates.
The subclass \cSoNonIndexedShape\. is a base class for vertex-based
shapes that use the current coordinates in order.
}

METHOD "" static SoType getClassTypeId() {
Returns type identifier for this class.
}
FIELD vertexProperty {vertex property node.}

ALSO { SoIndexedShape, SoNonIndexedShape, SoVertexProperty }
