46 #ifndef vtkHyperTreeGrid_h 47 #define vtkHyperTreeGrid_h 49 #include "vtkCommonDataModelModule.h" 74 class vtkHyperTreePositionCursor;
102 void SetGridSize(
unsigned int[3] );
103 void SetGridSize(
unsigned int,
unsigned int,
unsigned int );
104 vtkGetVector3Macro(GridSize,
unsigned int);
112 void SetGridExtent(
int extent[6]);
113 void SetGridExtent(
int,
int,
int,
int,
int,
int );
121 vtkSetMacro(TransposedRootIndexing,
bool);
122 vtkGetMacro(TransposedRootIndexing,
bool);
124 { this->SetTransposedRootIndexing(
false ); }
126 { this->SetTransposedRootIndexing(
true ); }
133 void SetDimension(
unsigned int );
134 vtkGetMacro(Dimension,
unsigned int);
144 virtual void SetOrientation(
unsigned int);
145 vtkGetMacro(Orientation,
unsigned int);
152 void SetBranchFactor(
unsigned int );
153 vtkGetMacro(BranchFactor,
unsigned int);
226 bool HasMaterialMask();
240 vtkSetMacro( HasInterface,
bool );
241 vtkGetMacro( HasInterface,
bool );
242 vtkBooleanMacro( HasInterface,
bool );
249 vtkSetStringMacro(InterfaceNormalsName);
250 vtkGetStringMacro(InterfaceNormalsName);
257 vtkSetStringMacro(InterfaceInterceptsName);
258 vtkGetStringMacro(InterfaceInterceptsName);
264 virtual void GenerateTrees();
355 return this->Superclass::GetCell(i,j,k);
435 double tol2,
int& subId,
double pcoords[3],
436 double *weights )
override;
447 double tol2,
int& subId,
double pcoords[3],
448 double *weights )
override;
510 vtkGetMacro(NumberOfChildren,
unsigned int);
573 unsigned int GetChildMask(
unsigned int );
578 void GetLevelZeroCoordinatesFromIndex(
vtkIdType,
586 void GetIndexFromLevelZeroCoordinates(
vtkIdType&,
596 unsigned int GetShiftedLevelZeroIndex(
vtkIdType,
633 unsigned short Level;
678 std::map<vtkIdType, vtkHyperTree*>::iterator
Iterator;
701 void ComputeBounds()
override;
709 void ComputeDualGrid();
717 unsigned int GridSize[3];
740 std::map<vtkIdType, double> PointShifts[3];
765 void ResetSuperCursor();
824 vtkIdType RecursivelyFindPoint(
double x[3],
829 #if !defined(__VTK_WRAP__) && !defined(__WRAP_GCCXML__)
vtkLine * Line
These are needed by the GetCell() method.
std::map< vtkIdType, vtkHyperTree * > HyperTrees
virtual vtkIdType GetNumberOfCells()=0
Determine the number of cells composing the dataset.
virtual void GetPointCells(vtkIdType ptId, vtkIdList *cellIds)=0
Topological inquiry to get cells using point.
object represents upward pointers from points to list of cells using each point
static vtkDataObject * New()
virtual vtkIdType FindCell(double x[3], vtkCell *cell, vtkIdType cellId, double tol2, int &subId, double pcoords[3], double *weights)=0
Locate cell based on global coordinate x and tolerance squared.
void SetIndexingModeToKJI()
Specify whether indexing mode of grid root cells must be transposed to x-axis first, z-axis last, instead of the default z-axis first, k-axis last.
vtkHyperTreeGridIterator()
unsigned int NumberOfChildren
virtual vtkIdType GetNumberOfPoints()=0
Determine the number of points composing the dataset.
abstract class to specify dataset behavior
A dataset containing a grid of vtkHyperTree instances arranged as a rectilinear grid.
a cell that represents an orthogonal quadrilateral
vtkDataArray * ZCoordinates
unsigned short GetLevel()
Return level at which cursor is positioned.
vtkCell * GetCell(int i, int j, int k) override
Overridden so as no not unintentionally hide parent class.
dynamic, self-adjusting array of vtkIdType
unsigned int BranchFactor
vtkHyperTree * GetTree()
Methods that belong to the vtkHyperTreeCursor API.
void SetIndexingModeToIJK()
Specify whether indexing mode of grid root cells must be transposed to x-axis first, z-axis last, instead of the default z-axis first, k-axis last.
provides thread-safe access to cells
vtkVoxel * Voxel
These are needed by the GetCell() method.
Objects for depth-first traversal HyperTrees.
cell represents a 1D line
abstract class to specify cell behavior
Objects for depth-first traversal HyperTreeGrids.
a cell that represents a 3D orthogonal parallelepiped
std::map< vtkIdType, vtkHyperTree * >::iterator Iterator
char * InterfaceNormalsName
unsigned long GetActualMemorySize() override
Return the actual size of the data in kibibytes (1024 bytes).
a simple class to control print indentation
virtual int GetMaxCellSize()=0
Convenience method returns largest cell size in dataset.
list of point or cell ids
virtual void GetCellPoints(vtkIdType cellId, vtkIdList *ptIds)=0
Topological inquiry to get points defining cell.
abstract superclass for arrays of numeric data
int GetDataObjectType() override
Return the type of data object.
vtkDataArray * YCoordinates
vtkIdTypeArray * Connectivity
std::map< vtkIdType, bool > PointShifted
void DeepCopy(vtkDataObject *src) override
Shallow and Deep copy.
represent and manipulate attribute data in a dataset
vtkIdTypeArray * MaterialMaskIndex
virtual void GetCellNeighbors(vtkIdType cellId, vtkIdList *ptIds, vtkIdList *cellIds)
Topological inquiry to get all cells using list of points exclusive of cell specified (e...
void Initialize() override
Restore data object to initial state.
A simplified hyper tree cursor, to be used by the hyper tree.
dynamic, self-adjusting array of bits
create and manipulate ordered lists of objects
Public structure used by filters to move around the hyper tree grid and easily access neighbors to le...
An object structured as a tree where each node has exactly either 2^d or 3^d children.
bool TransposedRootIndexing
vtkIdType GetLeafIndex()
Only valid for leaves.
An iterator object to iteratively access trees in the grid.
virtual void CopyStructure(vtkDataSet *ds)=0
Copy the geometric and topological structure of an object.
void ShallowCopy(vtkDataObject *src) override
Shallow and Deep copy.
vtkBitArray * PureMaterialMask
bool InitPureMaterialMask
virtual double * GetPoint(vtkIdType ptId)=0
Get point coordinates with ptId such that: 0 <= ptId < NumberOfPoints.
std::map< vtkIdType, double > ReductionFactors
vtkPixel * Pixel
These are needed by the GetCell() method.
vtkCellLinks * Links
Not really needed.
vtkBitArray * MaterialMask
general representation of visualization data
int GetExtentType() override
Structured extent.
vtkIdType FindPoint(double x, double y, double z)
Locate the closest point to the global coordinate x.
char * InterfaceInterceptsName
vtkDataArray * XCoordinates
virtual vtkCell * GetCell(vtkIdType cellId)=0
Get cell with cellId such that: 0 <= cellId < NumberOfCells.
represent and manipulate 3D points
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
virtual int GetCellType(vtkIdType cellId)=0
Get type of cell with cellId such that: 0 <= cellId < NumberOfCells.
Fast Simple Class for dealing with 3D bounds.