25#ifndef vtkHyperTreeGridGeometryUnlimitedLevelEntry_h
26#define vtkHyperTreeGridGeometryUnlimitedLevelEntry_h
36VTK_ABI_NAMESPACE_BEGIN
56 for (
unsigned int d = 0; d < 3; ++d)
101 this->
Initialize(entry->Tree, entry->Level, entry->Index, entry->Origin);
102 this->LastRealIndex = entry->LastRealIndex;
103 this->LastRealLevel = entry->LastRealLevel;
115 cursor->Initialize(grid, this->Tree, this->Level, this->Index, this->Origin);
126 assert(
"pre: level==0" && this->Level == 0);
129 cursor->Initialize(grid, this->Tree, this->Level, this->Index, this->Origin);
198 bool IsRoot() {
return this->Index == 0 && this->Level == 0; }
219 unsigned int GetLevel()
const {
return this->Level; }
228 const double*
GetOrigin()
const {
return this->Origin; }
250 unsigned int Level = 0;
Cursor cache data with coordinates and level info.
void Copy(const vtkHyperTreeGridGeometryUnlimitedLevelEntry *entry)
Copy function.
vtkHyperTreeGridGeometryUnlimitedLevelEntry & operator=(vtkHyperTreeGridGeometryUnlimitedLevelEntry const &)=default
bool IsVirtualLeaf(const vtkHyperTreeGrid *grid) const
Is the cursor pointing to a virually subdivided leaf?
void PrintSelf(ostream &os, vtkIndent indent)
Display info about the entry.
void Dump(ostream &os)
Dump information.
void SetMask(const vtkHyperTreeGrid *grid, bool state)
Set the blanking mask is empty or not.
bool IsLeaf(const vtkHyperTreeGrid *grid) const
Is the cursor pointing to a leaf?
unsigned int GetLastRealLevel() const
Get level info from current cache entry.
unsigned int GetLevel() const
Get level info from current cache entry.
double * GetOrigin()
Getter for origin coordinates of the current cell.
vtkIdType GetVertexId() const
Return the index of the current vertex in the tree.
void Initialize(vtkHyperTree *tree, unsigned int level, vtkIdType index, const double *origin)
Initialize cache entry from explicit required data.
vtkSmartPointer< vtkHyperTreeGridOrientedGeometryCursor > GetHyperTreeGridOrientedGeometryCursor(vtkHyperTreeGrid *grid)
Create a vtkHyperTreeGridOrientedCursor from input grid and current entry data.
void GetPoint(double point[3]) const
Getter for center of the current cell.
vtkHyperTreeGridGeometryUnlimitedLevelEntry(vtkHyperTree *tree=nullptr)
Constructor.
~vtkHyperTreeGridGeometryUnlimitedLevelEntry()=default
Destructor.
void ToChild(const vtkHyperTreeGrid *grid, unsigned char ichild)
Move the cursor to child ‘child’ of the current vertex.
vtkHyperTreeGridGeometryUnlimitedLevelEntry(vtkHyperTreeGridGeometryUnlimitedLevelEntry const &)=default
const double * GetOrigin() const
Getter for origin coordinates of the current cell.
void SetGlobalIndexFromLocal(vtkIdType index)
Set the global index for the current cell of the HyperTree.
void Reset()
Reset function.
bool IsRealLeaf(const vtkHyperTreeGrid *grid) const
Is the cursor pointing to a leaf?
void GetBounds(double bounds[6]) const
Getter for bounding box of the current cell.
void SetGlobalIndexStart(vtkIdType index)
Set the global index for the root cell of the HyperTree.
bool IsTerminalNode(const vtkHyperTreeGrid *grid) const
Is the cursor pointing to a coarse with all children being leaves ?
bool IsRoot()
Is the cursor at tree root?
vtkHyperTree * GetTree() const
Get HyperTree from current cache entry.
bool IsMasked(const vtkHyperTreeGrid *grid) const
Determine whether blanking mask is empty or not.
vtkHyperTree * Initialize(vtkHyperTreeGrid *grid, vtkIdType treeIndex, bool create=false)
Initialize cache entry at root of given tree index in grid.
vtkIdType GetGlobalNodeIndex() const
Return the global index (relative to the grid) of the current vertex in the tree.
vtkSmartPointer< vtkHyperTreeGridNonOrientedGeometryCursor > GetHyperTreeGridNonOrientedGeometryCursor(vtkHyperTreeGrid *grid)
Create a vtkHyperTreeGridNonOrientedCursor from input grid and current entry data.
A dataset containing a grid of vtkHyperTree instances arranged as a rectilinear grid.
A data object structured as a tree.
a simple class to control print indentation
Hold a reference to a vtkObjectBase instance.
static vtkSmartPointer< T > New()
Create an instance of a VTK object.