VTK  9.2.6
vtkSphereTreeFilter.h
Go to the documentation of this file.
1/*=========================================================================
2
3 Program: Visualization Toolkit
4 Module: vtkSphereTreeFilter.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=========================================================================*/
40
41#ifndef vtkSphereTreeFilter_h
42#define vtkSphereTreeFilter_h
43
44#include "vtkFiltersCoreModule.h" // For export macro
46
47#define VTK_SPHERE_TREE_LEVELS 0
48#define VTK_SPHERE_TREE_POINT 1
49#define VTK_SPHERE_TREE_LINE 2
50#define VTK_SPHERE_TREE_PLANE 3
51
52class vtkSphereTree;
53
54class VTKFILTERSCORE_EXPORT vtkSphereTreeFilter : public vtkPolyDataAlgorithm
55{
56public:
61
63
67 void PrintSelf(ostream& os, vtkIndent indent) override;
69
71
75 vtkGetObjectMacro(SphereTree, vtkSphereTree);
77
79
87 vtkSetMacro(ExtractionMode, int);
88 vtkGetMacro(ExtractionMode, int);
95
97
102 vtkSetMacro(TreeHierarchy, bool);
103 vtkGetMacro(TreeHierarchy, bool);
104 vtkBooleanMacro(TreeHierarchy, bool);
106
108
115 vtkSetClampMacro(Level, int, -1, VTK_SHORT_MAX);
116 vtkGetMacro(Level, int);
118
120
124 vtkSetVector3Macro(Point, double);
125 vtkGetVectorMacro(Point, double, 3);
127
129
134 vtkSetVector3Macro(Ray, double);
135 vtkGetVectorMacro(Ray, double, 3);
137
139
143 vtkSetVector3Macro(Normal, double);
144 vtkGetVectorMacro(Normal, double, 3);
146
151
152protected:
155
159 int Level;
160 double Point[3];
161 double Ray[3];
162 double Normal[3];
163
165 int FillInputPortInformation(int port, vtkInformation* info) override;
166
167private:
169 void operator=(const vtkSphereTreeFilter&) = delete;
170};
171
172#endif
a simple class to control print indentation
Definition vtkIndent.h:34
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
void SetExtractionModeToLine()
Specify what information this filter is to extract from the sphere tree.
const char * GetExtractionModeAsString()
Specify what information this filter is to extract from the sphere tree.
virtual void SetSphereTree(vtkSphereTree *)
Specify and retrieve the sphere tree.
~vtkSphereTreeFilter() override
virtual void SetExtractionMode(int)
Specify what information this filter is to extract from the sphere tree.
void SetExtractionModeToPlane()
Specify what information this filter is to extract from the sphere tree.
static vtkSphereTreeFilter * New()
Instantiate the sphere tree filter.
void SetExtractionModeToLevels()
Specify what information this filter is to extract from the sphere tree.
int FillInputPortInformation(int port, vtkInformation *info) override
Fill the input port information objects for this algorithm.
vtkMTimeType GetMTime() override
Modified GetMTime because the sphere tree may have changed.
void PrintSelf(ostream &os, vtkIndent indent) override
Standard type related macros and PrintSelf() method.
void SetExtractionModeToPoint()
Specify what information this filter is to extract from the sphere tree.
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
class to build and traverse sphere trees
#define VTK_SPHERE_TREE_POINT
#define VTK_SPHERE_TREE_LEVELS
#define VTK_SPHERE_TREE_LINE
#define VTK_SPHERE_TREE_PLANE
#define VTK_SHORT_MAX
Definition vtkType.h:151
vtkTypeUInt32 vtkMTimeType
Definition vtkType.h:287