VTK  9.3.20240418
vtkAbstractHyperTreeGridMapper.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2 // SPDX-License-Identifier: BSD-3-Clause
21 #ifndef vtkAbstractHyperTreeGridMapper_h
22 #define vtkAbstractHyperTreeGridMapper_h
23 
25 #include "vtkRenderingCoreModule.h" // For export macro
26 
27 VTK_ABI_NAMESPACE_BEGIN
28 class vtkBitArray;
29 class vtkDataArray;
30 class vtkMatrix4x4;
31 class vtkScalarsToColors;
32 class vtkRenderer;
34 
35 class VTKRENDERINGCORE_EXPORT vtkAbstractHyperTreeGridMapper : public vtkAbstractVolumeMapper
36 {
37 public:
39  void PrintSelf(ostream& os, vtkIndent indent) override;
40 
42 
46  void SetInputConnection(int, vtkAlgorithmOutput*) override;
47  void SetInputConnection(vtkAlgorithmOutput* input) override
48  {
49  this->SetInputConnection(0, input);
50  }
53 
55 
59  vtkGetObjectMacro(Renderer, vtkRenderer);
61 
65  vtkSetMacro(Scale, double);
66 
68 
73  vtkGetObjectMacro(ColorMap, vtkScalarsToColors);
75 
77 
83  void SetScalarRange(double, double);
84  void SetScalarRange(double*);
85  vtkGetVectorMacro(ScalarRange, double, 2);
87 
91  vtkGetVectorMacro(ViewportSize, int, 2);
92 
96  vtkMTimeType GetMTime() override;
97 
105 
111  void Render(vtkRenderer*, vtkVolume*) override = 0;
112 
113 protected:
116 
121 
126 
128 
134 
139 
143  unsigned int Orientation;
144 
149 
153  double ScalarRange[2];
154 
159 
163  double Scale;
164 
168  double Radius;
169 
173  unsigned int Axis1;
174 
178  unsigned int Axis2;
179 
183  int LevelMax;
184 
189 
194 
198  int ViewportSize[2];
199 
203  int LastRendererSize[2];
204 
208  double LastCameraFocalPoint[3];
209 
214 
218  unsigned char* FrameBuffer;
219 
223  float* ZBuffer;
224 
225 private:
227  void operator=(const vtkAbstractHyperTreeGridMapper&) = delete;
228 };
229 
230 VTK_ABI_NAMESPACE_END
231 #endif
Abstract class for a HyperTreeGrid mapper.
int LevelMax
Maximum depth parameter for adaptive view.
void SetScalarRange(double *)
Specify range in terms of scalar minimum and maximum.
bool MustUpdateGrid
Keep track of whether pixelize grid is current.
unsigned int Axis2
Second axis parameter for adaptive view.
int ViewOrientation
Keep track of current view orientation.
void SetColorMap(vtkScalarsToColors *)
Set/Get the color map attached to this HyperTreeGrid mapper A linear lookup table is provided by defa...
void SetRenderer(vtkRenderer *)
Set/Get the renderer attached to this HyperTreeGrid mapper.
vtkRenderer * Renderer
Reference to the renderer being used.
bool ParallelProjection
Parallel projection parameter for adaptive view.
unsigned int Axis1
First axis parameter for adaptive view.
void ReleaseGraphicsResources(vtkWindow *) override
WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE Release any graphics resources that are being...
vtkMTimeType GetMTime() override
Get the mtime of this object.
~vtkAbstractHyperTreeGridMapper() override
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
unsigned char * FrameBuffer
Internal frame buffer.
double Scale
Scale factor for adaptive view.
void SetInputConnection(vtkAlgorithmOutput *input) override
Set/Get the input data or connection.
int FillInputPortInformation(int, vtkInformation *) override
Restrict input type to vtkUniformHyperTreeGrid instances.
double LastCameraParallelScale
Last camera parallel scale for adaptive view.
vtkMatrix4x4 * WorldToViewMatrix
Keep track of coordinate conversion matrices.
void SetScalarRange(double, double)
Specify range in terms of scalar minimum and maximum.
void Render(vtkRenderer *, vtkVolume *) override=0
WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE DO NOT USE THIS METHOD OUTSIDE OF THE RENDERI...
double Radius
Radius parameter for adaptive view.
vtkDataArray * Scalars
Reference to input scalars.
void SetInputConnection(int, vtkAlgorithmOutput *) override
Set/Get the input data or connection.
vtkMatrix4x4 * ViewToWorldMatrix
Keep track of coordinate conversion matrices.
virtual void SetInputData(vtkUniformHyperTreeGrid *)
Set/Get the input data or connection.
vtkScalarsToColors * ColorMap
Color map used only when dimension < 3.
unsigned int Orientation
Orientation of input grid when dimension < 3.
vtkUniformHyperTreeGrid * GetInput()
Set/Get the input data or connection.
Abstract class for a volume mapper.
Proxy object to connect input/output ports.
virtual void SetInputConnection(int port, vtkAlgorithmOutput *input)
Set the connection for the given input port index.
dynamic, self-adjusting array of bits
Definition: vtkBitArray.h:29
abstract superclass for arrays of numeric data
Definition: vtkDataArray.h:155
a simple class to control print indentation
Definition: vtkIndent.h:108
Store vtkAlgorithm input/output information.
represent and manipulate 4x4 transformation matrices
Definition: vtkMatrix4x4.h:141
abstract specification for renderers
Definition: vtkRenderer.h:172
Superclass for mapping scalar values to colors.
A specifalized type of vtkHyperTreeGrid for the case when root cells have uniform sizes in each direc...
represents a volume (data & properties) in a rendered scene
Definition: vtkVolume.h:120
window superclass for vtkRenderWindow
Definition: vtkWindow.h:48
vtkTypeUInt32 vtkMTimeType
Definition: vtkType.h:270