VTK  9.3.1
vtkAdaptiveDataSetSurfaceFilter.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
24 #ifndef vtkAdaptiveDataSetSurfaceFilter_h
25 #define vtkAdaptiveDataSetSurfaceFilter_h
26 
27 #include "vtkFiltersHybridModule.h" // For export macro
28 #include "vtkGeometryFilter.h"
29 
30 VTK_ABI_NAMESPACE_BEGIN
31 class vtkBitArray;
32 class vtkCamera;
33 class vtkHyperTreeGrid;
34 class vtkRenderer;
35 
38 
39 class VTKFILTERSHYBRID_EXPORT vtkAdaptiveDataSetSurfaceFilter : public vtkGeometryFilter
40 {
41 public:
44  void PrintSelf(ostream& os, vtkIndent indent) override;
45 
47 
50  void SetRenderer(vtkRenderer* ren);
51  vtkGetObjectMacro(Renderer, vtkRenderer);
53 
57  vtkMTimeType GetMTime() override;
58 
60 
63  vtkSetMacro(CircleSelection, bool);
64  vtkGetMacro(CircleSelection, bool);
66 
68 
73  vtkSetMacro(BBSelection, bool);
74  vtkGetMacro(BBSelection, bool);
76 
78 
81  vtkSetMacro(ViewPointDepend, bool);
82  vtkGetMacro(ViewPointDepend, bool);
84 
86 
89  vtkSetMacro(FixedLevelMax, int);
90  vtkGetMacro(FixedLevelMax, int);
92 
94 
99  vtkSetMacro(Scale, double);
100  vtkGetMacro(Scale, double);
102 
104 
109  vtkSetMacro(DynamicDecimateLevelMax, int);
110  vtkGetMacro(DynamicDecimateLevelMax, int);
112 
113 protected:
116 
117  int RequestData(vtkInformation* vtkNotUsed(request), vtkInformationVector** inputVector,
118  vtkInformationVector* outputVector) override;
119  int DataObjectExecute(vtkDataObject* input, vtkPolyData* output);
120  int FillInputPortInformation(int port, vtkInformation* info) override;
121 
125  void ProcessTrees(vtkHyperTreeGrid* input, vtkPolyData* output);
126 
130  void RecursivelyProcessTreeNot3D(vtkHyperTreeGridNonOrientedGeometryCursor*, int);
131  void RecursivelyProcessTree3D(vtkHyperTreeGridNonOrientedVonNeumannSuperCursorLight*, int);
132 
136  void ProcessLeaf1D(vtkHyperTreeGridNonOrientedGeometryCursor*);
137 
141  void ProcessLeaf2D(vtkHyperTreeGridNonOrientedGeometryCursor*);
142 
147 
151  void AddFace(vtkIdType, const double*, const double*, int, unsigned int);
152 
155 
159  unsigned int Dimension;
160 
164  unsigned int Orientation;
165 
170 
175 
180 
185 
189  unsigned int Axis1;
190 
194  unsigned int Axis2;
195 
199  int LevelMax;
200 
205 
209  int LastRendererSize[2];
210 
215 
219  double LastCameraFocalPoint[3];
220 
225 
229  double WindowBounds[4];
230 
235 
239  double Radius;
240 
245 
250 
254  double Scale;
255 
260 
261 private:
263  void operator=(const vtkAdaptiveDataSetSurfaceFilter&) = delete;
264 };
265 
266 VTK_ABI_NAMESPACE_END
267 #endif // vtkAdaptiveDataSetSurfaceFilter_h
unsigned int Axis2
Second axis parameter for adaptive view.
static vtkGeometryFilter * New()
Standard methods for instantiation, type information, and printing.
Store vtkAlgorithm input/output information.
vtkTypeUInt32 vtkMTimeType
Definition: vtkType.h:270
A dataset containing a grid of vtkHyperTree instances arranged as a rectilinear grid.
unsigned int Dimension
Dimension of input grid.
abstract specification for renderers
Definition: vtkRenderer.h:61
unsigned int Axis1
First axis parameter for adaptive view.
int vtkIdType
Definition: vtkType.h:315
concrete dataset represents vertices, lines, polygons, and triangle strips
Definition: vtkPolyData.h:79
unsigned int Orientation
Orientation of input grid when dimension < 3.
bool ViewPointDepend
JB Activation de la dependance au point de vue.
int FixedLevelMax
JB Forced, fixed the level depth, ignored automatic determination.
vtkCellArray * Cells
Storage for cells of output unstructured mesh.
Adaptively extract dataset surface.
bool BBSelection
Product cell when in nounding box selection.
bool ParallelProjection
Parallel projection parameter for adaptive view.
int FillInputPortInformation(int port, vtkInformation *info) override
Fill the input port information objects for this algorithm.
double Radius
Radius parameter for adaptive view.
a simple class to control print indentation
Definition: vtkIndent.h:28
a virtual camera for 3D rendering
Definition: vtkCamera.h:40
virtual vtkMTimeType GetMTime()
Return this object's modified time.
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
represent and manipulate attribute data in a dataset
double LastCameraParallelScale
Last camera parallel scale for adaptive view.
vtkPoints * Points
Storage for points of output unstructured mesh.
object to represent cell connectivity
Definition: vtkCellArray.h:175
double Scale
Scale factor for adaptive view.
dynamic, self-adjusting array of bits
Definition: vtkBitArray.h:28
int DynamicDecimateLevelMax
JB Decimate level max after automatic determination.
Store zero or more vtkInformation instances.
extract boundary geometry from dataset (or convert data to polygonal type)
void PrintSelf(ostream &os, vtkIndent indent) override
Standard methods for instantiation, type information, and printing.
vtkRenderer * Renderer
Pointer to the renderer in use.
general representation of visualization data
Definition: vtkDataObject.h:54
int LevelMax
Maximum depth parameter for adaptive view.
bool CircleSelection
Product cell when in circle selection.
represent and manipulate 3D points
Definition: vtkPoints.h:28