VTK
vtkHyperOctreeSampleFunction.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkHyperOctreeSampleFunction.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 =========================================================================*/
31 #ifndef vtkHyperOctreeSampleFunction_h
32 #define vtkHyperOctreeSampleFunction_h
33 
34 #include "vtkFiltersHyperTreeModule.h" // For export macro
36 
38 
40 {
41 public:
43  void PrintSelf(ostream& os, vtkIndent indent);
44 
46 
49  int GetLevels();
50 
55  void SetLevels(int levels);
56 
59  int GetMinLevels();
60 
64  void SetMinLevels(int minLevels);
65 
68  double GetThreshold();
69 
73  void SetThreshold(double threshold);
74 
78  int GetDimension();
79 
80  // Set the dimension of the tree with `dim'. See GetDimension() for details.
81  // \pre valid_dim: dim>=1 && dim<=3
82  // \post dimension_is_set: GetDimension()==dim
83  void SetDimension(int dim);
84 
86 
87  vtkSetVector3Macro(Size,double);
89 
91 
92  vtkGetVector3Macro(Size,double);
94 
96 
97  vtkSetVector3Macro(Origin,double);
98  // Return the origin (position of corner (0,0,0) ) of the root.
99  vtkGetVector3Macro(Origin,double);
101 
103  double GetWidth();
104 
107  void SetWidth(double width);
108 
111  double GetHeight();
112 
116  void SetHeight(double height);
117 
120  double GetDepth();
121 
125  void SetDepth(double depth);
126 
128 
132 
134 
135  vtkSetMacro(OutputScalarType,int);
136  vtkGetMacro(OutputScalarType,int);
138  {this->SetOutputScalarType(VTK_DOUBLE);}
140  {this->SetOutputScalarType(VTK_FLOAT);}
142  {this->SetOutputScalarType(VTK_LONG);}
144  {this->SetOutputScalarType(VTK_UNSIGNED_LONG);};
146  {this->SetOutputScalarType(VTK_INT);}
148  {this->SetOutputScalarType(VTK_UNSIGNED_INT);}
150  {this->SetOutputScalarType(VTK_SHORT);}
152  {this->SetOutputScalarType(VTK_UNSIGNED_SHORT);}
154  {this->SetOutputScalarType(VTK_CHAR);}
156  {this->SetOutputScalarType(VTK_UNSIGNED_CHAR);}
158 
160  unsigned long GetMTime();
161 
162 protected:
164 
170 
171 
173  vtkInformationVector ** vtkNotUsed( inputVector ),
174  vtkInformationVector *outputVector);
175 
177 
179  int level,
180  vtkHyperOctree *output);
181 
183  double Size[3]; // size on each axis
184  double Origin[3]; // position of corner (0,0,0) of the root.
185  int Levels;
187 
190  double Threshold;
191 
192 private:
194  void operator=(const vtkHyperOctreeSampleFunction&); // Not implemented.
195 };
196 
197 #endif
vtkHyperOctreeAlgorithm.h
vtkGetObjectMacro
#define vtkGetObjectMacro(name, type)
Definition: vtkSetGet.h:232
vtkHyperOctreeSampleFunction::New
static vtkHyperOctreeSampleFunction * New()
vtkHyperOctreeSampleFunction::SetDimension
void SetDimension(int dim)
vtkHyperOctreeSampleFunction
sample an implicit function over an hyperoctree
Definition: vtkHyperOctreeSampleFunction.h:40
vtkHyperOctreeSampleFunction::GetThreshold
double GetThreshold()
vtkHyperOctreeSampleFunction::SetMinLevels
void SetMinLevels(int minLevels)
vtkSetVector3Macro
#define vtkSetVector3Macro(name, type)
Definition: vtkSetGet.h:287
VTK_UNSIGNED_INT
#define VTK_UNSIGNED_INT
Definition: vtkType.h:32
vtkHyperOctreeSampleFunction::SetOutputScalarTypeToUnsignedShort
void SetOutputScalarTypeToUnsignedShort()
Definition: vtkHyperOctreeSampleFunction.h:151
vtkInformationVector
Store zero or more vtkInformation instances.
Definition: vtkInformationVector.h:41
VTK_UNSIGNED_SHORT
#define VTK_UNSIGNED_SHORT
Definition: vtkType.h:30
vtkHyperOctreeSampleFunction::SetOutputScalarTypeToShort
void SetOutputScalarTypeToShort()
Definition: vtkHyperOctreeSampleFunction.h:149
vtkHyperOctreeSampleFunction::SetOutputScalarTypeToDouble
void SetOutputScalarTypeToDouble()
Definition: vtkHyperOctreeSampleFunction.h:137
vtkHyperOctreeSampleFunction::SetOutputScalarTypeToFloat
void SetOutputScalarTypeToFloat()
Definition: vtkHyperOctreeSampleFunction.h:139
vtkHyperOctreeSampleFunction::Threshold
double Threshold
Definition: vtkHyperOctreeSampleFunction.h:190
vtkHyperOctreeSampleFunction::~vtkHyperOctreeSampleFunction
~vtkHyperOctreeSampleFunction()
vtkTypeMacro
#define vtkTypeMacro(thisClass, superclass)
Definition: vtkSetGet.h:642
vtkHyperOctreeCursor
Objects that can traverse hyperoctree nodes.
Definition: vtkHyperOctreeCursor.h:51
vtkHyperOctreeSampleFunction::SetOutputScalarTypeToInt
void SetOutputScalarTypeToInt()
Definition: vtkHyperOctreeSampleFunction.h:145
vtkHyperOctreeSampleFunction::GetMTime
unsigned long GetMTime()
vtkHyperOctreeSampleFunction::Levels
int Levels
Definition: vtkHyperOctreeSampleFunction.h:185
vtkHyperOctreeSampleFunction::GetMinLevels
int GetMinLevels()
vtkHyperOctreeSampleFunction::Dimension
int Dimension
Definition: vtkHyperOctreeSampleFunction.h:182
vtkHyperOctreeSampleFunction::SetOutputScalarTypeToUnsignedChar
void SetOutputScalarTypeToUnsignedChar()
Definition: vtkHyperOctreeSampleFunction.h:155
vtkFiltersHyperTreeModule.h
vtkHyperOctreeSampleFunction::SetThreshold
void SetThreshold(double threshold)
vtkImplicitFunction
abstract interface for implicit functions
Definition: vtkImplicitFunction.h:58
vtkHyperOctreeAlgorithm
Superclass for algorithms that produce only octree as output.
Definition: vtkHyperOctreeAlgorithm.h:41
vtkHyperOctreeSampleFunction::SetOutputScalarTypeToChar
void SetOutputScalarTypeToChar()
Definition: vtkHyperOctreeSampleFunction.h:153
vtkgl::depth
GLint GLint GLsizei GLsizei GLsizei depth
Definition: vtkgl.h:11316
VTKFILTERSHYPERTREE_EXPORT
#define VTKFILTERSHYPERTREE_EXPORT
Definition: vtkFiltersHyperTreeModule.h:15
vtkNotUsed
#define vtkNotUsed(x)
Definition: vtkSetGet.h:557
vtkGetVector3Macro
#define vtkGetVector3Macro(name, type)
Definition: vtkSetGet.h:304
vtkHyperOctreeSampleFunction::RequestData
virtual int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
vtkHyperOctreeSampleFunction::GetDepth
double GetDepth()
vtkHyperOctreeSampleFunction::SetLevels
void SetLevels(int levels)
VTK_CHAR
#define VTK_CHAR
Definition: vtkType.h:26
vtkHyperOctreeSampleFunction::SetDepth
void SetDepth(double depth)
vtkHyperOctreeSampleFunction::SetOutputScalarTypeToLong
void SetOutputScalarTypeToLong()
Definition: vtkHyperOctreeSampleFunction.h:141
vtkIndent
a simple class to control print indentation
Definition: vtkIndent.h:39
vtkHyperOctreeSampleFunction::GetLevels
int GetLevels()
VTK_FLOAT
#define VTK_FLOAT
Definition: vtkType.h:35
vtkHyperOctreeSampleFunction::SetOutputScalarTypeToUnsignedInt
void SetOutputScalarTypeToUnsignedInt()
Definition: vtkHyperOctreeSampleFunction.h:147
VTK_DOUBLE
#define VTK_DOUBLE
Definition: vtkType.h:36
VTK_UNSIGNED_CHAR
#define VTK_UNSIGNED_CHAR
Definition: vtkType.h:28
VTK_LONG
#define VTK_LONG
Definition: vtkType.h:33
vtkGetMacro
#define vtkGetMacro(name, type)
Definition: vtkSetGet.h:93
vtkHyperOctreeSampleFunction::SetWidth
void SetWidth(double width)
vtkHyperOctreeSampleFunction::MinLevels
int MinLevels
Definition: vtkHyperOctreeSampleFunction.h:186
vtkHyperOctreeSampleFunction::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent)
vtkgl::level
GLint level
Definition: vtkgl.h:11316
VTK_UNSIGNED_LONG
#define VTK_UNSIGNED_LONG
Definition: vtkType.h:34
vtkgl::width
GLint GLint GLsizei width
Definition: vtkgl.h:11316
vtkInformation
Store vtkAlgorithm input/output information.
Definition: vtkInformation.h:86
vtkSetMacro
vtkSetMacro(IgnoreDriverBugs, bool)
vtkHyperOctreeSampleFunction::GetDimension
int GetDimension()
VTK_SHORT
#define VTK_SHORT
Definition: vtkType.h:29
vtkHyperOctreeSampleFunction::SetHeight
void SetHeight(double height)
vtkHyperOctreeSampleFunction::GetWidth
double GetWidth()
vtkHyperOctreeSampleFunction::ImplicitFunction
vtkImplicitFunction * ImplicitFunction
Definition: vtkHyperOctreeSampleFunction.h:189
vtkHyperOctreeSampleFunction::RequestInformation
int RequestInformation(vtkInformation *vtkNotUsed(request), vtkInformationVector **vtkNotUsed(inputVector), vtkInformationVector *outputVector)
vtkHyperOctreeSampleFunction::OutputScalarType
int OutputScalarType
Definition: vtkHyperOctreeSampleFunction.h:188
vtkHyperOctreeSampleFunction::SetImplicitFunction
virtual void SetImplicitFunction(vtkImplicitFunction *)
vtkHyperOctreeSampleFunction::vtkHyperOctreeSampleFunction
vtkHyperOctreeSampleFunction()
vtkHyperOctreeSampleFunction::GetHeight
double GetHeight()
vtkHyperOctree
A dataset structured as a tree where each node has exactly 2^n children.
Definition: vtkHyperOctree.h:143
VTK_INT
#define VTK_INT
Definition: vtkType.h:31
vtkHyperOctreeSampleFunction::SetOutputScalarTypeToUnsignedLong
void SetOutputScalarTypeToUnsignedLong()
Definition: vtkHyperOctreeSampleFunction.h:143
vtkHyperOctreeSampleFunction::Subdivide
void Subdivide(vtkHyperOctreeCursor *cursor, int level, vtkHyperOctree *output)
vtkgl::height
GLint GLint GLsizei GLsizei height
Definition: vtkgl.h:11316