Open Inventor Release 2024.2.0
 
Loading...
Searching...
No Matches
SoVolumeIndexedFaceSet.h
1/*=======================================================================
2 *** THE CONTENT OF THIS WORK IS PROPRIETARY TO FEI S.A.S, (FEI S.A.S.), ***
3 *** AND IS DISTRIBUTED UNDER A LICENSE AGREEMENT. ***
4 *** ***
5 *** REPRODUCTION, DISCLOSURE, OR USE, IN WHOLE OR IN PART, OTHER THAN AS ***
6 *** SPECIFIED IN THE LICENSE ARE NOT TO BE UNDERTAKEN EXCEPT WITH PRIOR ***
7 *** WRITTEN AUTHORIZATION OF FEI S.A.S. ***
8 *** ***
9 *** RESTRICTED RIGHTS LEGEND ***
10 *** USE, DUPLICATION, OR DISCLOSURE BY THE GOVERNMENT OF THE CONTENT OF THIS ***
11 *** WORK OR RELATED DOCUMENTATION IS SUBJECT TO RESTRICTIONS AS SET FORTH IN ***
12 *** SUBPARAGRAPH (C)(1) OF THE COMMERCIAL COMPUTER SOFTWARE RESTRICTED RIGHT ***
13 *** CLAUSE AT FAR 52.227-19 OR SUBPARAGRAPH (C)(1)(II) OF THE RIGHTS IN ***
14 *** TECHNICAL DATA AND COMPUTER SOFTWARE CLAUSE AT DFARS 52.227-7013. ***
15 *** ***
16 *** COPYRIGHT (C) 1996-2022 BY FEI S.A.S, ***
17 *** BORDEAUX, FRANCE ***
18 *** ALL RIGHTS RESERVED ***
19**=======================================================================*/
20/*=======================================================================
21** Author : Thierry Dufour (Aug 2002)
22** Modified by : Jerome Hummel (MMM yyyy)
23** Modified by : David Beilloin (Apr 2011)
24**=======================================================================*/
25#ifndef __VOLUME_INDEXED_FACE_SET
26#define __VOLUME_INDEXED_FACE_SET
27
28#include <Inventor/nodes/SoIndexedFaceSet.h>
29
30#include <VolumeViz/nodes/SoVolumeGeometry.h>
31#include <Inventor/fields/SoSFBool.h>
32#include <Inventor/fields/SoSFFloat.h>
33#include <Inventor/SbBox.h>
34
35class SoVolumeGeometryVbo;
36
178{
179 SO_NODE_HEADER(SoVolumeIndexedFaceSet);
180
181public :
182
185
191
204
205
210
211#if 1 SoDEPRECATED enum
219 };
220
221#endif
223private:
225 static void initClass();
226
228 static void exitClass();
229
231 virtual void GLRender(SoGLRenderAction *action);
232
234 virtual void computeBBox(SoAction *action, SbBox3f &box, SbVec3f &center);
235
237 virtual void computeBBox(SoAction *action, SbXfBox3d &box, SbVec3d &center);
238
239private:
240
242 virtual void notify(SoNotList *list);
243
244#if 1 SoDEPRECATED
248 virtual SoVolumeShape::Interpolation getInteractiveInterpolationValue(SoState* state) const;
249
250#endif
252private:
254 virtual void shapeRender(SoGLRenderAction* action);
255
257 virtual void shapeGeneratePrimitives(SoAction* action);
258
260 virtual void checkShapeStyle(SoState *state,const SoShapeStyleElement *shapeStyle);
261
263 virtual void GLRenderBoundingBox(SoGLRenderAction* action);
264
266 virtual void getBBox(SoAction *action, SbBox3f &box, SbVec3f &center);
267
269 virtual void getBBox(SoAction *action, SbXfBox3d &box, SbVec3d &center);
270
272 virtual int getNumVertices(SoState* state);
273
275 virtual int getIndexCoord(int index) const;
276
278 virtual ~SoVolumeIndexedFaceSet();
279
280 using SoVolumeGeometry::doRendering;
281
282private:
283SoDEPRECATED
285 SoSFBool useVbo;
286
287};
288
289#endif //__VOLUME_INDEXED_FACE_SET
290
291
3D box class.
Definition SbBox.h:649
<a href="IconLegend.html"><img src="extTGS.gif" alt="VSG extension" border="0"></a> 3D vector class ...
Definition SbVec.h:1214
3D vector class.
Definition SbVec.h:932
<a href="IconLegend.html"><img src="extTGS.gif" alt="VSG extension" border="0"></a> 3D box with an a...
Definition SbBox.h:1513
Abstract base class for all actions.
Definition SoAction.h:132
Renders a scene graph using Open Inventor's Render Engine.
Indexed polygonal face shape node.
Field containing a single Boolean value.
Definition SoSFBool.h:79
Field containing an enumerated value.
Definition SoSFEnum.h:89
Field containing a floating-point value.
Definition SoSFFloat.h:78
Stores some information used by shapes.
Traversal state.
Definition SoState.h:74
<a href="IconLegend.html"><img src="extVR.gif" alt="VolumeViz" border="0"></a> LDM valuation interfa...
<a href="IconLegend.html"><img src="extVR.gif" alt="VolumeViz" border="0"></a> Indexed polygonal fac...
SoSFFloat offset
Sets an offset value used for computing the texture coordinates.
SoVolumeIndexedFaceSet()
Constructor.
SoSFEnum interpolation
Interpolation mode.
SoSFBool clipGeometry
Specifies to clip the geometry at the volume boundaries.
@ LINEAR
OpenGL linear interpolation (Default).
@ NEAREST
OpenGL "nearest neighbor" interpolation.
Interpolation
Interpolation mode.
@ LINEAR
OpenGL linear interpolation (Default).
@ NEAREST
OpenGL "nearest neighbor" interpolation.