VTK
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 =========================================================================*/
41 #ifndef vtkSphereTreeFilter_h
42 #define vtkSphereTreeFilter_h
43 
44 #include "vtkFiltersCoreModule.h" // For export macro
45 #include "vtkPolyDataAlgorithm.h"
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 
52 
53 class vtkSphereTree;
54 
55 class VTKFILTERSCORE_EXPORT vtkSphereTreeFilter : public vtkPolyDataAlgorithm
56 {
57 public:
61  static vtkSphereTreeFilter *New();
62 
64 
68  void PrintSelf(ostream& os, vtkIndent indent) VTK_OVERRIDE;
70 
72 
75  virtual void SetSphereTree(vtkSphereTree*);
76  vtkGetObjectMacro(SphereTree,vtkSphereTree);
78 
80 
88  vtkSetMacro(ExtractionMode,int);
89  vtkGetMacro(ExtractionMode,int);
91  {this->SetExtractionMode(VTK_SPHERE_TREE_LEVELS);}
93  {this->SetExtractionMode(VTK_SPHERE_TREE_POINT);}
95  {this->SetExtractionMode(VTK_SPHERE_TREE_LINE);}
97  {this->SetExtractionMode(VTK_SPHERE_TREE_PLANE);}
98  const char *GetExtractionModeAsString();
100 
102 
107  vtkSetMacro(TreeHierarchy,int);
108  vtkGetMacro(TreeHierarchy,int);
109  vtkBooleanMacro(TreeHierarchy,int);
111 
113 
120  vtkSetClampMacro(Level,int,-1,VTK_SHORT_MAX);
121  vtkGetMacro(Level,int);
123 
125 
129  vtkSetVector3Macro(Point,double);
130  vtkGetVectorMacro(Point,double,3);
132 
134 
139  vtkSetVector3Macro(Ray,double);
140  vtkGetVectorMacro(Ray,double,3);
142 
144 
148  vtkSetVector3Macro(Normal,double);
149  vtkGetVectorMacro(Normal,double,3);
151 
155  vtkMTimeType GetMTime() VTK_OVERRIDE;
156 
157 protected:
159  ~vtkSphereTreeFilter() VTK_OVERRIDE;
160 
164  int Level;
165  double Point[3];
166  double Ray[3];
167  double Normal[3];
168 
170  vtkInformationVector *) VTK_OVERRIDE;
171  virtual int FillInputPortInformation(int port,
172  vtkInformation *info) VTK_OVERRIDE;
173 
174 private:
175  vtkSphereTreeFilter(const vtkSphereTreeFilter&) VTK_DELETE_FUNCTION;
176  void operator=(const vtkSphereTreeFilter&) VTK_DELETE_FUNCTION;
177 
178 };
179 
180 #endif
void SetExtractionModeToLine()
Specify what information this filter is to extract from the sphere tree.
Store vtkAlgorithm input/output information.
vtkTypeUInt32 vtkMTimeType
Definition: vtkType.h:300
virtual int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
This is called by the superclass.
#define VTK_SPHERE_TREE_PLANE
represent a sphere tree as vtkPolyData
void SetExtractionModeToPoint()
Specify what information this filter is to extract from the sphere tree.
static vtkPolyDataAlgorithm * New()
Superclass for algorithms that produce only polydata as output.
a simple class to control print indentation
Definition: vtkIndent.h:33
void SetExtractionModeToPlane()
Specify what information this filter is to extract from the sphere tree.
#define VTK_SPHERE_TREE_POINT
virtual vtkMTimeType GetMTime()
Return this object's modified time.
vtkSetMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
#define VTK_SHORT_MAX
Definition: vtkType.h:153
vtkSphereTree * SphereTree
#define VTK_SPHERE_TREE_LINE
class to build and traverse sphere trees
Definition: vtkSphereTree.h:70
#define VTK_SPHERE_TREE_LEVELS
int FillInputPortInformation(int port, vtkInformation *info) override
Fill the input port information objects for this algorithm.
Store zero or more vtkInformation instances.
vtkBooleanMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void SetExtractionModeToLevels()
Specify what information this filter is to extract from the sphere tree.