44 #ifndef vtkHyperTreeGridSource_h
45 #define vtkHyperTreeGridSource_h
47 #include "vtkFiltersSourcesModule.h"
55 VTK_ABI_NAMESPACE_BEGIN
77 unsigned int GetMaxDepth();
85 void SetMaxDepth(
unsigned int levels);
91 vtkSetVector3Macro(Origin,
double);
92 vtkGetVector3Macro(Origin,
double);
99 vtkSetVector3Macro(GridScale,
double);
100 vtkGetVector3Macro(GridScale,
double);
108 void SetDimensions(
const unsigned int* dims);
109 void SetDimensions(
unsigned int,
unsigned int,
unsigned int);
110 vtkGetVector3Macro(Dimensions,
unsigned int);
118 vtkSetMacro(TransposedRootIndexing,
bool);
119 vtkGetMacro(TransposedRootIndexing,
bool);
120 void SetIndexingModeToKJI();
121 void SetIndexingModeToIJK();
128 vtkGetMacro(Orientation,
unsigned int);
135 vtkSetClampMacro(BranchFactor,
unsigned int, 2, 3);
136 vtkGetMacro(BranchFactor,
unsigned int);
145 vtkSetMacro(UseDescriptor,
bool);
146 vtkGetMacro(UseDescriptor,
bool);
147 vtkBooleanMacro(UseDescriptor,
bool);
156 vtkSetMacro(UseMask,
bool);
157 vtkGetMacro(UseMask,
bool);
158 vtkBooleanMacro(UseMask,
bool);
167 vtkSetMacro(GenerateInterfaceFields,
bool);
168 vtkGetMacro(GenerateInterfaceFields,
bool);
169 vtkBooleanMacro(GenerateInterfaceFields,
bool);
176 vtkSetStringMacro(Descriptor);
177 vtkGetStringMacro(Descriptor);
184 vtkSetStringMacro(Mask);
185 vtkGetStringMacro(Mask);
221 void SetQuadricCoefficients(
double[10]);
222 void GetQuadricCoefficients(
double[10]);
223 double* GetQuadricCoefficients();
257 int InitializeFromStringDescriptor();
262 int InitializeFromBitsDescriptor();
268 int treeIdx,
int idx[3],
int offset = 0);
277 int idx[3],
int parentPos,
int offset = 0);
284 int idx[3],
int parentPos);
290 unsigned int level,
int treeIdx,
const int idx[3],
double origin[3],
double size[3]);
295 double EvaluateQuadric(
double[3]);
301 unsigned int Dimensions[3];
342 int CurrentTreeProcess = 0;
349 bool IsLevelDescriptorConsistent(
bool isRootLevel,
unsigned int nRefined,
unsigned int nLeaves,
350 unsigned int nTotal,
unsigned int nNextLevel,
const std::ostringstream& descriptor);
353 VTK_ABI_NAMESPACE_END
abstract interface for implicit functions
vtkHyperTreeGrid * OutputHTG
Create a synthetic grid of hypertrees.
std::vector< vtkIdType > LevelBitsIndexCnt
int FillOutputPortInformation(int, vtkInformation *) override
Define default input and output port types.
std::map< vtkIdType, vtkIdType > LevelZeroMaterialMap
vtkDataArray * ZCoordinates
vtkTypeUInt32 vtkMTimeType
unsigned int BranchFactor
A dataset containing a grid of vtkHyperTree instances arranged as a rectilinear grid.
virtual int RequestInformation(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
std::vector< std::string > LevelDescriptors
vtkIdTypeArray * LevelZeroMaterialIndex
dynamic, self-adjusting array of vtkIdType
Objects for traversal a HyperTreeGrid.
vtkDataArray * YCoordinates
std::vector< vtkIdType > LevelBitsIndex
a simple class to control print indentation
evaluate implicit quadric function
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
abstract superclass for arrays of numeric data
virtual vtkMTimeType GetMTime()
Return this object's modified time.
vtkDataArray * XCoordinates
virtual int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
This is called by the superclass.
dynamic, self-adjusting array of bits
std::vector< std::string > LevelMasks
Superclass for algorithms that produce a hyper tree grid as output.
vtkBitArray * DescriptorBits
static vtkAlgorithm * New()
std::map< DataSetType, DataSet > Piece
std::vector< int > LevelCounters
general representation of visualization data
void SetGridScale(double scale)
Set/Get the scale to be applied to root cells in each dimension of the grid.
bool TransposedRootIndexing
bool GenerateInterfaceFields
virtual int ProcessTrees(vtkHyperTreeGrid *, vtkDataObject *)=0
Main routine to process individual trees in the grid This is pure virtual method to be implemented by...