36#include <Inventor/nodes/SoSubNode.h>
37#include <Inventor/elements/SoMultiTextureCoordinateElement.h>
38#include <Inventor/SbMatrix.h>
39#include <Inventor/SbVec2s.h>
40#include <Inventor/SbBox3f.h>
61 TRIANGLE_STRIP, TRIANGLE_FAN, TRIANGLES, POLYGON,
63 QUADS, QUAD_STRIP, POINTS, LINES, LINE_STRIP
127 const SbBool useTexFunc,
134 const SbBool useTexFunc,
143 const SbVec3f * pervertexnormals,
144 const SbBool texpervertex,
145 const SbBool colorpervertex);
149 const SbBool normpervertex,
150 const SbBool texpervertex,
151 const SbBool colorpervertex);
153 class SoShapeP * pimpl;
157 friend class soshape_primdata;
158 friend class so_generate_prim_private;
The SbBox3f class is an abstraction for an axis aligned 3 dimensional box.
Definition SbBox3f.h:46
The SbMatrix class is a 4x4 dimensional representation of a matrix.
Definition SbMatrix.h:47
The SbVec2f class is a 2 dimensional vector with floating point coordinates.
Definition SbVec2f.h:49
The SbVec2s class is a 2 dimensional vector with short integer coordinates.
Definition SbVec2s.h:51
The SbVec3f class is a 3 dimensional vector with floating point coordinates.
Definition SbVec3f.h:51
The SoAction class is the base class for all traversal actions.
Definition SoAction.h:77
The SoBoundingBoxCache class is used to cache bounding boxes.
Definition SoBoundingBoxCache.h:41
The SoCallbackAction class invokes callbacks at specific nodes.
Definition SoCallbackAction.h:80
The SoCoordinateElement class is yet to be documented.
Definition SoCoordinateElement.h:40
The SoDetail class is the superclass for all classes storing detailed information about particular sh...
Definition SoDetail.h:39
The SoFaceDetail class is for storing detailed polygon information.
Definition SoFaceDetail.h:38
The SoGLRenderAction class renders the scene graph with OpenGL calls.
Definition SoGLRenderAction.h:50
The SoGetBoundingBoxAction class calculates bounding boxes for nodes and subgraphs.
Definition SoGetBoundingBoxAction.h:45
The SoGetPrimitiveCountAction class counts the primitives in a scene.
Definition SoGetPrimitiveCountAction.h:44
The SoMaterialBundle class simplifies material handling.
Definition SoMaterialBundle.h:42
The SoMultiTextureCoordinateElement class is yet to be documented.
Definition SoMultiTextureCoordinateElement.h:48
SoNode(void)
Definition SoNode.cpp:417
virtual void notify(SoNotList *l)
Definition SoNode.cpp:506
virtual void getPrimitiveCount(SoGetPrimitiveCountAction *action)
Definition SoNode.cpp:943
virtual void getBoundingBox(SoGetBoundingBoxAction *action)
Definition SoNode.cpp:914
virtual void callback(SoCallbackAction *action)
Definition SoNode.cpp:1075
virtual SbBool affectsState(void) const
Definition SoNode.cpp:880
virtual void rayPick(SoRayPickAction *action)
Definition SoNode.cpp:1188
static void initClass(void)
Sets up initialization for data common to all instances of this class, like submitting necessary info...
Definition SoNode.cpp:573
virtual void GLRender(SoGLRenderAction *action)
Definition SoNode.cpp:1003
The SoNotList class is a list of SoNotRec notification records.
Definition SoNotification.h:43
The SoPickedPoint class is used for specifying picked points.
Definition SoPickedPoint.h:48
The SoPrimitiveVertex class represents a single vertex of a generated primitive.
Definition SoPrimitiveVertex.h:43
The SoRayPickAction class does ray intersection with scene graphs.
Definition SoRayPickAction.h:50
void endShape(void)
Definition SoShape.cpp:1287
void invokePointCallbacks(SoAction *const action, const SoPrimitiveVertex *const v)
Definition SoShape.cpp:1171
virtual SoDetail * createPointDetail(SoRayPickAction *action, const SoPrimitiveVertex *v, SoPickedPoint *pp)
Definition SoShape.cpp:972
void shapeVertex(const SoPrimitiveVertex *const v)
Definition SoShape.cpp:1274
void invokeLineSegmentCallbacks(SoAction *const action, const SoPrimitiveVertex *const v1, const SoPrimitiveVertex *const v2)
Definition SoShape.cpp:1096
void endSolidShape(SoGLRenderAction *action)
Definition SoShape.cpp:864
void finishVertexArray(SoGLRenderAction *action, const SbBool vbo, const SbBool normpervertex, const SbBool texpervertex, const SbBool colorpervertex)
Definition SoShape.cpp:1700
void beginShape(SoAction *const action, const TriangleShape shapetype, SoDetail *const detail=NULL)
Definition SoShape.cpp:1259
SoShape(void)
Definition SoShape.cpp:350
void invokeTriangleCallbacks(SoAction *const action, const SoPrimitiveVertex *const v1, const SoPrimitiveVertex *const v2, const SoPrimitiveVertex *const v3)
Definition SoShape.cpp:984
void computeObjectSpaceRay(SoRayPickAction *const action)
Definition SoShape.cpp:873
void beginSolidShape(SoGLRenderAction *action)
Definition SoShape.cpp:849
void generateVertex(SoPrimitiveVertex *const pv, const SbVec3f &point, const SbBool useTexFunc, const SoMultiTextureCoordinateElement *const tce, const float s, const float t, const SbVec3f &normal)
Definition SoShape.cpp:1297
virtual SoDetail * createTriangleDetail(SoRayPickAction *action, const SoPrimitiveVertex *v1, const SoPrimitiveVertex *v2, const SoPrimitiveVertex *v3, SoPickedPoint *pp)
Definition SoShape.cpp:904
const SoBoundingBoxCache * getBoundingBoxCache(void) const
Definition SoShape.cpp:1447
virtual SoDetail * createLineSegmentDetail(SoRayPickAction *action, const SoPrimitiveVertex *v1, const SoPrimitiveVertex *v2, SoPickedPoint *pp)
Definition SoShape.cpp:939
virtual void generatePrimitives(SoAction *action)=0
virtual SbBool shouldGLRender(SoGLRenderAction *action)
Definition SoShape.cpp:555
TriangleShape
Definition SoShape.h:60
static float getDecimatedComplexity(SoState *state, float complexity)
Definition SoShape.cpp:1359
SbBool shouldPrimitiveCount(SoGetPrimitiveCountAction *action)
Definition SoShape.cpp:1395
void GLRenderBoundingBox(SoGLRenderAction *action)
Definition SoShape.cpp:1369
SbBool shouldRayPick(SoRayPickAction *const action)
Definition SoShape.cpp:826
virtual void computeBBox(SoAction *action, SbBox3f &box, SbVec3f ¢er)=0
SbBool startVertexArray(SoGLRenderAction *action, const SoCoordinateElement *coords, const SbVec3f *pervertexnormals, const SbBool texpervertex, const SbBool colorpervertex)
Definition SoShape.cpp:1558
float getComplexityValue(SoAction *action)
Definition SoShape.cpp:515
static void getScreenSize(SoState *const state, const SbBox3f &boundingbox, SbVec2s &rectsize)
Definition SoShape.cpp:472
The SoState class manages the Coin scene graph traversal state data.
Definition SoState.h:44
#define SO_NODE_ABSTRACT_HEADER(classname)
Definition Coin_macros.dox:61