Open Inventor Release 2024.2.0
 
Loading...
Searching...
No Matches
SoVolumeBufferedShape.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 : Aymeric Chataigner (Sept 2012)
22**=======================================================================*/
23#ifndef __VOLUME_BUFFERED_SHAPE
24#define __VOLUME_BUFFERED_SHAPE
25
26#include <Inventor/nodes/SoBufferedShape.h>
27
28#include <VolumeViz/nodes/SoVolumeGeometry.h>
29#include <Inventor/fields/SoSFBool.h>
30#include <Inventor/fields/SoSFFloat.h>
31#include <Inventor/SbBox.h>
32
33class SoVolumeGeometryVbo;
34
277{
278 SO_NODE_HEADER( SoVolumeBufferedShape );
279
280public :
281
287
300
305
308
309private:
311 static void initClass();
312
314 static void exitClass();
315
317 virtual void GLRender( SoGLRenderAction* action );
318
320 virtual void computeBBox( SoAction* action, SbBox3f& box, SbVec3f& center );
321
323 virtual void computeBBox( SoAction* action, SbXfBox3d& box, SbVec3d& center );
324
325private:
326
328 virtual void notify( SoNotList* list );
329
331 virtual SoVolumeShape::Interpolation getInteractiveInterpolationValue(SoState* state) const;
332
333private:
335 virtual void shapeRender( SoGLRenderAction* action );
336
338 virtual void shapeGeneratePrimitives( SoAction* action );
339
341 virtual void GLRenderBoundingBox( SoGLRenderAction* action );
342
344 virtual void getBBox( SoAction* action, SbBox3f& box, SbVec3f& center );
345
347 virtual void getBBox( SoAction* action, SbXfBox3d& box, SbVec3d& center );
348
350 virtual int getNumVertices(SoState* /*state*/) { return 0; }
351
353 virtual int getIndexCoord(int /*index*/) const { return 0; }
354
356 virtual ~SoVolumeBufferedShape();
357
358};
359
360#endif //__VOLUME_BUFFERED_SHAPE
361
362
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
<a href="IconLegend.html"><img src="extTGS.gif" alt="VSG extension" border="0"></a> Node to render g...
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
Traversal state.
Definition SoState.h:74
<a href="IconLegend.html"><img src="extVR.gif" alt="VolumeViz" border="0"></a> Buffered shape node f...
SoSFBool clipGeometry
Specifies to clip the geometry at the volume boundaries.
SoSFFloat offset
Sets an offset value used for computing the texture coordinates.
SoSFEnum interpolation
Interpolation mode.
SoVolumeBufferedShape()
Constructor.
<a href="IconLegend.html"><img src="extVR.gif" alt="VolumeViz" border="0"></a> LDM valuation interfa...
Interpolation
Interpolation mode.