VTK
vtkAdaptiveDataSetSurfaceFilter.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkAdaptiveDataSetSurfaceFilter.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 =========================================================================*/
35 #ifndef vtkAdaptiveDataSetSurfaceFilter_h
36 #define vtkAdaptiveDataSetSurfaceFilter_h
37 
38 #include "vtkFiltersHybridModule.h" // For export macro
40 
41 class vtkBitArray;
42 class vtkCamera;
43 class vtkHyperTreeGrid;
45 class vtkRenderer;
46 
47 class VTKFILTERSHYBRID_EXPORT vtkAdaptiveDataSetSurfaceFilter : public vtkDataSetSurfaceFilter
48 {
49 public:
52  void PrintSelf( ostream&, vtkIndent ) override;
53 
55 
58  void SetRenderer( vtkRenderer* ren );
59  vtkGetObjectMacro(Renderer, vtkRenderer);
61 
65  vtkSetMacro(Scale,double);
66 
70  vtkMTimeType GetMTime() override;
71 
72 protected:
75 
76  int RequestData( vtkInformation* vtkNotUsed(request),
77  vtkInformationVector** inputVector,
78  vtkInformationVector* outputVector ) override;
79  int DataSetExecute( vtkDataSet* input, vtkPolyData* output ) override;
80 
84  void ProcessTrees( vtkHyperTreeGrid* input, vtkPolyData* output );
85 
89  void RecursivelyProcessTree( vtkHyperTreeGridCursor*, vtkBitArray*, int );
90 
94  void ProcessLeaf1D( vtkHyperTreeGridCursor* );
95 
99  void ProcessLeaf2D( vtkHyperTreeGridCursor*, vtkBitArray* );
100 
104  void ProcessLeaf3D( vtkHyperTreeGridCursor*, vtkBitArray* );
105 
109  void AddFace( vtkIdType, double*, double*, int, unsigned int );
110 
113 
117  unsigned int Dimension;
118 
122  unsigned int Orientation;
123 
128 
133 
138 
142  double Radius;
143 
147  int Axis1;
148 
152  int Axis2;
153 
157  int LevelMax;
158 
163 
167  int LastRendererSize[2];
168 
172  double LastCameraFocalPoint[3];
173 
178 
182  double Scale;
183 
184 private:
186  void operator = ( const vtkAdaptiveDataSetSurfaceFilter& ) = delete;
187 };
188 
189 #endif
virtual int DataSetExecute(vtkDataSet *input, vtkPolyData *output)
Direct access methods that can be used to use the this class as an algorithm without using it as a fi...
Store vtkAlgorithm input/output information.
vtkTypeUInt32 vtkMTimeType
Definition: vtkType.h:302
abstract class to specify dataset behavior
Definition: vtkDataSet.h:62
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:63
int vtkIdType
Definition: vtkType.h:347
concrete dataset represents vertices, lines, polygons, and triangle strips
Definition: vtkPolyData.h:85
unsigned int Orientation
Orientation of input grid when dimension < 3.
vtkCellArray * Cells
Storage for cells of output unstructured mesh.
Adaptively extract dataset surface.
Objects for depth-first traversal HyperTreeGrids.
bool ParallelProjection
Parallel projection parameter for adaptive view.
double Radius
Radius parameter for adaptive view.
a simple class to control print indentation
Definition: vtkIndent.h:39
a virtual camera for 3D rendering
Definition: vtkCamera.h:50
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
virtual vtkMTimeType GetMTime()
Return this object&#39;s modified time.
static vtkDataSetSurfaceFilter * New()
int Axis1
First axis parameter for adaptive view.
represent and manipulate attribute data in a dataset
double LastCameraParallelScale
Last camera parallel scale for adaptive view.
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
vtkPoints * Points
Storage for points of output unstructured mesh.
object to represent cell connectivity
Definition: vtkCellArray.h:50
double Scale
Scale factor for adaptive view.
dynamic, self-adjusting array of bits
Definition: vtkBitArray.h:36
Store zero or more vtkInformation instances.
int Axis2
Second axis parameter for adaptive view.
vtkRenderer * Renderer
Pointer to the renderer in use.
Extracts outer (polygonal) surface.
int LevelMax
Maximum depth parameter for adaptive view.
represent and manipulate 3D points
Definition: vtkPoints.h:39