41 #ifndef vtkHyperTreeGrid_h 42 #define vtkHyperTreeGrid_h 44 #include "vtkCommonDataModelModule.h" 87 void CopyStructure(
vtkDataSet* ) VTK_OVERRIDE;
93 void SetGridSize(
unsigned int[3] );
94 void SetGridSize(
unsigned int i,
unsigned int j,
unsigned int k );
95 vtkGetVector3Macro(GridSize,
unsigned int);
102 void SetGridExtent(
int extent[6]);
103 void SetGridExtent(
int iMin,
int iMax,
int jMin,
int jMax,
113 vtkGetMacro(TransposedRootIndexing,
bool);
114 void SetIndexingModeToKJI()
115 { this->SetTransposedRootIndexing(
false ); }
117 { this->SetTransposedRootIndexing(
true ); }
125 void SetBranchFactor(
unsigned int );
126 vtkGetMacro(BranchFactor,
unsigned int);
134 void SetDimension(
unsigned int );
135 vtkGetMacro(Dimension,
unsigned int);
206 virtual void GenerateTrees();
327 double tol2,
int& subId,
double pcoords[3],
328 double *weights ) VTK_OVERRIDE;
339 double tol2,
int& subId,
double pcoords[3],
340 double *weights ) VTK_OVERRIDE;
387 void GenerateSuperCursorTraversalTable();
410 unsigned int childIdx );
417 vtkGetMacro(NumberOfChildren,
unsigned int);
437 void ComputeDualGrid();
442 unsigned int GridSize[3];
460 std::map<vtkIdType, double> PointShifts[3];
463 void DeleteInternalArrays();
466 #if !defined(__VTK_WRAP__) && !defined(__WRAP_GCCXML__) 502 vtkIdType RecursiveFindPoint(
double x[3],
504 double* origin,
double*
size);
528 unsigned short Level;
555 std::map<vtkIdType, vtkHyperTree*>::iterator
Iterator;
574 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 ordered 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.