23#if !defined SOBUFFEREDSHAPE_H
24#define SOBUFFEREDSHAPE_H
766 static void initClass();
769 static void exitClass();
771 void notify( SoNotList* list );
773 int getNumPrim(
SoState* state = NULL );
782 virtual SbBool shouldCheckShapeHints();
795 virtual SbBool isLightingUsable(
const void* normalBufferPtr );
802 virtual void generatePrimitives(
SoAction *action );
835 void commonConstructor();
840 unsigned int computeSmallestBatchSize(
const SoNodeList* vertexAttribsList,
unsigned int numInstances);
855 bool isRenderExtraDataNeededInCurrentContext()
const;
858 bool isRenderExtraDataNeededByGraphicCardInCurrentContext()
const;
862 bool isRenderExtraDataNeededByShapeType()
const;
868 static bool isRenderExtraDataNeededByGraphicCard(
const SbString& graphicCardName );
#define FALSE
Possible value of SbBool.
SO_PIMPL_PUBLIC_DECLARATION(SoFileDataAdapter)
#define SO_NODE_HEADER(className)
Class for smart character strings.
<a href="IconLegend.html"><img src="extTGS.gif" alt="VSG extension" border="0"></a> 2D vector class ...
<a href="IconLegend.html"><img src="extTGS.gif" alt="VSG extension" border="0"></a> 3D vector class ...
<a href="IconLegend.html"><img src="extTGS.gif" alt="VSG extension" border="0"></a> 3D box with an a...
Abstract base class for all actions.
<a href="IconLegend.html"><img src="extTGS.gif" alt="VSG extension" border="0"></a> Node to render g...
Usage
This enum is used to set the shapeUsage field.
@ STATIC
The shape is static, its buffers are never modified or modified infrequently.
SoSFEnum shapeUsage
Defines the usage of the shape.
SoSFEnum colorComponentsType
SbDataType::DataType type for the color values.
SoSFEnum vertexComponentsType
SbDataType::DataType for vertices.
SoSFShort vertexComponentsCount
Number of components in each vertex.
SoMFEnum texCoordsComponentsType
SbDataType::DataType type for the texture coordinates.
SoMFInt32 numVertices
Total number of vertices/indices or number of vertices/indices to be used per primitive.
SoMFInt32 texCoordsComponentsCount
Number of components in each texture coordinate.
SoSFBufferObject normalBuffer
Buffer object that contains the (optional) normal vectors.
SoMFBufferObject texCoordsBuffer
Buffer objects that contains the (optional) texture coordinates.
SoSFEnum normalComponentsType
SbDataType::DataType type for the normal vectors.
Type
Type of shape that will be rendered.
@ POINTS
Draws each vertex as a single point.
@ QUAD_STRIP
Draws a strip of connected quadrilaterals.
@ TRIANGLE_STRIP
Draws a strip of connected triangles.
@ LINE_LOOP
Like LINE_STRIP, but an extra line segment is drawn connecting the last vertex to the first vertex.
@ TRIANGLES
Draws unconnected triangles.
@ TRIANGLE_FAN
Draws a fan of triangles.
@ QUADS
Draws unconnected quadrilaterals.
@ LINE_STRIP
Connects all the vertices to form a polyline.
@ LINES
Connects each pair of vertices with a line.
SoSFInt32 primitiveRestartValue
Index value for the primitive restart feature.
SoSFBufferObject vertexBuffer
Buffer object that contains the vertex data.
SoBufferedShape()
Default constructor.
SoSFBufferObject colorBuffer
Buffer object that contains the (optional) color values.
SoSFShort vertexStride
Stride in bytes between the first component of two consecutive vertices.
SoSFInt32 colorStride
Stride in bytes between the first component of two consecutive colors.
SoSFEnum shapeType
Shape type to render.
SoSFInt32 indexOffset
Offset in bytes to the first index in the buffer.
SoSFBool primitiveRestartEnabled
Enable/disable the primitive restart feature.
SoSFInt32 normalOffset
Offset in bytes to the first normal vector in the buffer.
SoSFInt32 vertexOffset
Offset in bytes to the first vertex within the buffer.
SoSFBufferObject indexBuffer
Buffer object that contains the (optional) indices.
SoSFInt32 colorComponentsCount
Number of components in each color value.
SoSFInt32 colorOffset
Offset in bytes to the first color value in the buffer.
SoSFShort normalStride
Stride in bytes between the first component of two consecutive normals.
SoMFInt32 texCoordsStride
Stride in bytes between the first component of two consecutive texture coordinates.
SoSFBool useNormalsGenerator
Indicates if the node should use the internal normal vector generator if no normals are defined.
SoSFEnum indexType
SbDataType::DataType type for the indices.
SoMFInt32 texCoordsOffset
Offset in bytes to the first texture coordinate in the buffer.
Base class for describing detail information about a shape node.
Style
These are the available draw styles.
<a href="IconLegend.html"><img src="extTGS.gif" alt="VSG extension" border="0"></a> OpenGL buffer ob...
Renders a scene graph using Open Inventor's Render Engine.
Computes bounding box of a scene.
<a href="IconLegend.html"><img src="extTGS.gif" alt="VSG extension" border="0"></a> Counts number of...
Multiple-value field containing any number of buffer objects.
Multiple-value field containing any number of enumerated type values.
Multiple-value field containing any number of int32_t integers.
Maintains a list of pointers to nodes.
Represents point on surface of picked object.
Represents a vertex of a generated primitive.
Intersects objects with a ray cast into scene.
Field containing a single Boolean value.
Field containing an enumerated value.
Field containing a int32_t integer.
Field containing a short integer.
Abstract base class for all shape nodes.
void notify(SoNotList *list)