VTK
vtkAbstractVolumeMapper.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkAbstractVolumeMapper.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
27 #ifndef vtkAbstractVolumeMapper_h
28 #define vtkAbstractVolumeMapper_h
29 
30 #include "vtkRenderingCoreModule.h" // For export macro
31 #include "vtkAbstractMapper3D.h"
32 
33 class vtkRenderer;
34 class vtkVolume;
35 class vtkWindow;
36 class vtkDataSet;
37 
38 class VTKRENDERINGCORE_EXPORT vtkAbstractVolumeMapper : public vtkAbstractMapper3D
39 {
40 public:
42  void PrintSelf( ostream& os, vtkIndent indent );
43 
45 
48  vtkDataSet *GetDataSetInput();
49  vtkDataObject *GetDataObjectInput();
51 
53 
57  virtual double *GetBounds();
58  virtual void GetBounds(double bounds[6])
59  { this->vtkAbstractMapper3D::GetBounds(bounds); };
61 
63 
74  vtkSetMacro(ScalarMode,int);
75  vtkGetMacro(ScalarMode,int);
77  this->SetScalarMode(VTK_SCALAR_MODE_DEFAULT);};
79  this->SetScalarMode(VTK_SCALAR_MODE_USE_POINT_DATA);};
81  this->SetScalarMode(VTK_SCALAR_MODE_USE_CELL_DATA);};
83  this->SetScalarMode(VTK_SCALAR_MODE_USE_POINT_FIELD_DATA);};
85  this->SetScalarMode(VTK_SCALAR_MODE_USE_CELL_FIELD_DATA);};
87 
89 
95  virtual void SelectScalarArray(int arrayNum);
96  virtual void SelectScalarArray(const char* arrayName);
98 
102  virtual char* GetArrayName() { return this->ArrayName; }
103  virtual int GetArrayId() { return this->ArrayId; }
104  virtual int GetArrayAccessMode() { return this->ArrayAccessMode; }
105 
109  const char *GetScalarModeAsString();
110 
112 
115  virtual float GetGradientMagnitudeScale() {return 1.0f;};
116  virtual float GetGradientMagnitudeBias() {return 0.0f;};
117  virtual float GetGradientMagnitudeScale(int) {return 1.0f;};
118  virtual float GetGradientMagnitudeBias(int) {return 0.0f;};
120 
121 
127  virtual void Render(vtkRenderer *ren, vtkVolume *vol)=0;
128 
136 
137 protected:
140 
141  // see algorithm for more info
143 
145  char *ArrayName;
146  int ArrayId;
148 
149 private:
150  vtkAbstractVolumeMapper(const vtkAbstractVolumeMapper&) VTK_DELETE_FUNCTION;
151  void operator=(const vtkAbstractVolumeMapper&) VTK_DELETE_FUNCTION;
152 };
153 
154 
155 #endif
156 
157 
virtual float GetGradientMagnitudeBias(int)
WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE.
represents a volume (data & properties) in a rendered scene
Definition: vtkVolume.h:50
virtual char * GetArrayName()
Get the array name or number and component to use for rendering.
#define VTK_SCALAR_MODE_USE_CELL_FIELD_DATA
virtual void GetBounds(double bounds[6])
Return bounding box (array of six doubles) of data expressed as (xmin,xmax, ymin,ymax, zmin,zmax).
Store vtkAlgorithm input/output information.
abstract class to specify dataset behavior
Definition: vtkDataSet.h:62
virtual void ReleaseGraphicsResources(vtkWindow *)
WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE Release any graphics resources that are being...
Abstract class for a volume mapper.
abstract specification for renderers
Definition: vtkRenderer.h:63
void SetScalarModeToUseCellData()
Control how the mapper works with scalar point data and cell attribute data.
window superclass for vtkRenderWindow
Definition: vtkWindow.h:37
#define VTK_SCALAR_MODE_USE_POINT_DATA
virtual float GetGradientMagnitudeScale()
WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE.
a simple class to control print indentation
Definition: vtkIndent.h:39
#define VTK_SCALAR_MODE_USE_POINT_FIELD_DATA
virtual double * GetBounds()=0
Return bounding box (array of six doubles) of data expressed as (xmin,xmax, ymin,ymax, zmin,zmax).
abstract class specifies interface to map 3D data
virtual int FillInputPortInformation(int port, vtkInformation *info)
Fill the input port information objects for this algorithm.
vtkSetMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
void SetScalarModeToUsePointFieldData()
Control how the mapper works with scalar point data and cell attribute data.
void SetScalarModeToDefault()
Control how the mapper works with scalar point data and cell attribute data.
void SetScalarModeToUsePointData()
Control how the mapper works with scalar point data and cell attribute data.
void PrintSelf(ostream &os, vtkIndent indent)
Methods invoked by print to print information about the object including superclasses.
#define VTK_SCALAR_MODE_USE_CELL_DATA
void SetScalarModeToUseCellFieldData()
Control how the mapper works with scalar point data and cell attribute data.
virtual float GetGradientMagnitudeScale(int)
WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE.
general representation of visualization data
Definition: vtkDataObject.h:64
#define VTK_SCALAR_MODE_DEFAULT
virtual float GetGradientMagnitudeBias()
WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE.