Open Inventor Release 2024.2.0
 
Loading...
Searching...
No Matches
SoVolumeFaceSet.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_FACE_SET
26#define __VOLUME_FACE_SET
27
28#include <Inventor/nodes/SoFaceSet.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
180{
181 SO_NODE_HEADER(SoVolumeFaceSet);
182
183public :
184
187
193
206
211
212#if 1 SoDEPRECATED enum
220 };
221
222#endif
225private:
227 static void initClass();
228
230 static void exitClass();
231
233 virtual void GLRender(SoGLRenderAction *action);
234
236 virtual void computeBBox(SoAction *action, SbBox3f &box, SbVec3f &center);
237
239 virtual void computeBBox(SoAction *action, SbXfBox3d &box, SbVec3d &center);
240
241private:
242
244 virtual void notify(SoNotList *list);
245
246#if 1 SoDEPRECATED
250 virtual SoVolumeShape::Interpolation getInteractiveInterpolationValue(SoState* state) const;
251
252#endif
254private:
256 virtual void shapeRender(SoGLRenderAction* action);
257
259 virtual void shapeGeneratePrimitives(SoAction* action);
260
262 virtual void checkShapeStyle(SoState *state,const SoShapeStyleElement *shapeStyle);
263
265 virtual void GLRenderBoundingBox(SoGLRenderAction* action);
266
268 virtual void getBBox(SoAction *action, SbBox3f &box, SbVec3f &center);
269
271 virtual void getBBox(SoAction *action, SbXfBox3d &box, SbVec3d &center);
272
274 virtual int getNumVertices(SoState* state);
275
277 virtual int getIndexCoord(int index) const;
278
280 virtual ~SoVolumeFaceSet();
281
282 using SoVolumeGeometry::doRendering;
283
284private:
285SoDEPRECATED
287 SoSFBool useVbo;
288
289};
290
291#endif //__VOLUME_FACE_SET
292
293
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
Polygonal face shape node.
Definition SoFaceSet.h:229
Renders a scene graph using Open Inventor's Render Engine.
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> Polygonal face shape ...
SoSFBool clipGeometry
Specifies to clip the geometry at the volume boundaries.
SoVolumeFaceSet()
Constructor.
SoSFEnum interpolation
Interpolation mode.
SoSFFloat offset
Sets an offset value used for computing the texture coordinates.
@ NEAREST
OpenGL "nearest neighbor" interpolation.
@ LINEAR
OpenGL linear interpolation (Default).
<a href="IconLegend.html"><img src="extVR.gif" alt="VolumeViz" border="0"></a> LDM valuation interfa...
Interpolation
Interpolation mode.
@ LINEAR
OpenGL linear interpolation (Default).
@ NEAREST
OpenGL "nearest neighbor" interpolation.