47 #ifndef vtkHyperTreeGrid_h 48 #define vtkHyperTreeGrid_h 50 #include "vtkCommonDataModelModule.h" 93 void CopyStructure(
vtkDataSet* ) VTK_OVERRIDE;
99 void SetGridSize(
unsigned int[3] );
100 void SetGridSize(
unsigned int i,
unsigned int j,
unsigned int k );
101 vtkGetVector3Macro(GridSize,
unsigned int);
108 void SetGridExtent(
int extent[6]);
109 void SetGridExtent(
int iMin,
int iMax,
int jMin,
int jMax,
119 vtkGetMacro(TransposedRootIndexing,
bool);
120 void SetIndexingModeToKJI()
121 { this->SetTransposedRootIndexing(
false ); }
123 { this->SetTransposedRootIndexing(
true ); }
131 void SetBranchFactor(
unsigned int );
132 vtkGetMacro(BranchFactor,
unsigned int);
140 void SetDimension(
unsigned int );
141 vtkGetMacro(Dimension,
unsigned int);
212 virtual void GenerateTrees();
332 double tol2,
int& subId,
double pcoords[3],
333 double *weights ) VTK_OVERRIDE;
344 double tol2,
int& subId,
double pcoords[3],
345 double *weights ) VTK_OVERRIDE;
392 void GenerateSuperCursorTraversalTable();
415 unsigned int childIdx );
422 vtkGetMacro(NumberOfChildren,
unsigned int);
442 void ComputeDualGrid();
447 unsigned int GridSize[3];
465 std::map<vtkIdType, double> PointShifts[3];
468 void DeleteInternalArrays();
471 #if !defined(__VTK_WRAP__) && !defined(__WRAP_GCCXML__) 507 vtkIdType RecursiveFindPoint(
double x[3],
509 double* origin,
double*
size);
533 unsigned short Level;
560 std::map<vtkIdType, vtkHyperTree*>::iterator
Iterator;
579 return this->Cursors + this->MiddleCursorId + idx;
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.
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()
virtual void ComputeBounds()
Compute the data bounding box from data points.
dynamic, self-adjusting array of vtkIdType
unsigned int BranchFactor
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
Objects that can traverse hypertree nodes.
cell represents a 1D line
abstract class to specify cell behavior
a cell that represents a 3D orthogonal parallelepiped
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...
vtkSetMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
void Initialize() override
Restore data object to initial state.
dynamic, self-adjusting array of bits
create and manipulate unsorted lists of objects
An object structured as a tree where each node has exactly either 2^n or 3^n children.
bool TransposedRootIndexing
vtkHyperTreeSimpleCursor * GetCursor(int idx)
void ShallowCopy(vtkDataObject *src) override
Shallow and Deep copy.
virtual double * GetPoint(vtkIdType ptId)=0
Get point coordinates with ptId such that: 0 <= ptId < NumberOfPoints.
std::map< vtkIdType, double > ReductionFactors
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.
std::map< vtkIdType, vtkHyperTree * >::iterator Iterator
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.