26 #ifndef vtkHyperTreeGridNonOrientedSuperCursorLight_h
27 #define vtkHyperTreeGridNonOrientedSuperCursorLight_h
29 #include "vtkCommonDataModelModule.h"
38 VTK_ABI_NAMESPACE_BEGIN
78 bool HasTree(
unsigned int icursor);
92 vtkIdType GetVertexId(
unsigned int icursor);
104 vtkIdType GetGlobalNodeIndex(
unsigned int icursor);
110 unsigned int icursor,
unsigned int&
level,
bool& leaf,
vtkIdType&
id);
116 unsigned char GetDimension();
122 unsigned char GetNumberOfChildren();
144 void SetMask(
bool state);
145 void SetMask(
unsigned int icursor,
bool state);
151 bool IsMasked(
unsigned int icursor);
169 bool IsLeaf(
unsigned int icursor);
174 void SubdivideLeaf();
184 unsigned int GetLevel();
185 unsigned int GetLevel(
unsigned int icursor);
192 void ToChild(
unsigned char);
244 std::vector<vtkHyperTreeGridLevelEntry>
Entries;
258 assert(
"pre: icursor != IndiceCentralCursor" && icursor != this->IndiceCentralCursor);
259 assert(
"pre: valid_icursor" && icursor < this->NumberOfCursors);
260 if (icursor > this->IndiceCentralCursor)
262 assert(
"pre: valid_icursor" &&
263 0 <=
long(this->FirstCurrentNeighboorReferenceEntry + icursor) - 1 &&
264 long(this->FirstCurrentNeighboorReferenceEntry + icursor) - 1 <
265 long(this->ReferenceEntries.size()));
266 assert(
"pre: valid_icursor" &&
267 this->ReferenceEntries[this->FirstCurrentNeighboorReferenceEntry + icursor - 1] <
268 this->Entries.size());
269 return this->ReferenceEntries[this->FirstCurrentNeighboorReferenceEntry + icursor - 1];
273 assert(
"pre: valid_icursor" &&
274 this->FirstCurrentNeighboorReferenceEntry + icursor < this->ReferenceEntries.size());
275 assert(
"pre: valid_icursor" &&
276 this->ReferenceEntries[this->FirstCurrentNeighboorReferenceEntry + icursor] <
277 this->Entries.size());
278 return this->ReferenceEntries[this->FirstCurrentNeighboorReferenceEntry + icursor];
287 assert(
"pre: icursor != IndiceCentralCursor" && icursor != IndiceCentralCursor);
288 assert(
"pre: valid_icursor" && icursor < this->NumberOfCursors);
289 if (icursor > this->IndiceCentralCursor)
291 assert(
"pre: valid_icursor" &&
293 long(this->FirstCurrentNeighboorReferenceEntry - (this->NumberOfCursors - 1) + icursor) -
295 long(this->FirstCurrentNeighboorReferenceEntry - (this->NumberOfCursors - 1) + icursor) -
297 long(this->ReferenceEntries.size()));
298 assert(
"pre: valid_icursor" &&
299 this->ReferenceEntries[this->FirstCurrentNeighboorReferenceEntry -
300 (this->NumberOfCursors - 1) + icursor - 1] < this->Entries.size());
301 return this->ReferenceEntries[this->FirstCurrentNeighboorReferenceEntry -
302 (this->NumberOfCursors - 1) + icursor - 1];
306 assert(
"pre: valid_icursor" &&
307 this->FirstCurrentNeighboorReferenceEntry - (this->NumberOfCursors - 1) + icursor <
308 this->ReferenceEntries.size());
309 assert(
"pre: valid_icursor" &&
310 this->ReferenceEntries[this->FirstCurrentNeighboorReferenceEntry -
311 (this->NumberOfCursors - 1) + icursor] < this->Entries.size());
312 return this->ReferenceEntries[this->FirstCurrentNeighboorReferenceEntry -
313 (this->NumberOfCursors - 1) + icursor];
339 VTK_ABI_NAMESPACE_END
void GetBounds(T a, double bds[6])
abstract base class for most VTK objects
unsigned int GetNumberOfCursors()
JB.
std::vector< unsigned int > FirstNonValidEntryByLevel
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
unsigned int IndiceCentralCursor
JB.
unsigned int FirstCurrentNeighboorReferenceEntry
JB La derniere reference valide pour decrire tous les voisins.
A dataset containing a grid of vtkHyperTree instances arranged as a rectilinear grid.
const unsigned int * ChildCursorToChildTable
vtkSmartPointer< vtkHyperTreeGridNonOrientedGeometryCursor > CentralCursor
JB.
std::vector< vtkHyperTreeGridLevelEntry > Entries
unsigned int GetIndiceEntry(unsigned int icursor)
JB.
Objects for traversal a HyperTreeGrid.
a simple class to control print indentation
unsigned int NumberOfCursors
unsigned int GetIndicePreviousEntry(unsigned int icursor)
JB La valeur precedente.
void GetPoint(int i, int j, int k, double pnt[3])
A data object structured as a tree.
vtkHyperTreeGrid * Grid
JB Reference sur l'hyper tree grid parcouru actuellement.
unsigned int CurrentFirstNonValidEntryByLevel
JB Hyper tree grid to which the cursor is attached.
Objects for traversal a HyperTreeGrid.
const unsigned int * ChildCursorToParentCursorTable
std::vector< unsigned int > ReferenceEntries