50#ifndef vtkHyperTreeGrid_h
51#define vtkHyperTreeGrid_h
53#include "vtkCommonDataModelModule.h"
64VTK_ABI_NAMESPACE_BEGIN
111 vtkSetStringMacro(ModeSqueeze);
112 vtkGetStringMacro(ModeSqueeze);
156 void GetDimensions(
int dim[3]) const;
157 void GetDimensions(
unsigned int dim[3]) const;
167 void SetExtent(const
int extent[6]);
168 void SetExtent(
int x1,
int x2,
int y1,
int y2,
int z1,
int z2);
169 vtkGetVector6Macro(Extent,
int);
179 void GetCellDims(
int cellDims[3]) const;
180 void GetCellDims(
unsigned int cellDims[3]) const;
190 unsigned int GetDimension()
const {
return this->Dimension; }
199 assert(
"pre: valid_dim" && this->GetDimension() == 1);
200 axis = this->Axis[0];
208 void Get2DAxes(
unsigned int& axis1,
unsigned int& axis2)
const
210 assert(
"pre: valid_dim" && this->GetDimension() == 2);
211 axis1 = this->Axis[0];
212 axis2 = this->Axis[1];
220 const unsigned int*
GetAxes()
const {
return this->Axis; }
247 vtkSetMacro(TransposedRootIndexing,
bool);
248 vtkGetMacro(TransposedRootIndexing,
bool);
267 vtkGetMacro(FreezeState,
bool);
307 unsigned int GetNumberOfLevels();
338 virtual
void SetFixedCoordinates(
unsigned int axis,
double value);
358 vtkSetMacro(HasInterface,
bool);
359 vtkGetMacro(HasInterface,
bool);
360 vtkBooleanMacro(HasInterface,
bool);
367 vtkSetStringMacro(InterfaceNormalsName);
368 vtkGetStringMacro(InterfaceNormalsName);
375 vtkSetStringMacro(InterfaceInterceptsName);
376 vtkGetStringMacro(InterfaceInterceptsName);
383 vtkSetMacro(DepthLimiter,
unsigned int);
384 vtkGetMacro(DepthLimiter,
unsigned int);
397 void InitializeOrientedCursor(
402 void InitializeOrientedGeometryCursor(
408 void InitializeNonOrientedCursor(
413 void InitializeNonOrientedGeometryCursor(
419 void InitializeNonOrientedUnlimitedGeometryCursor(
421 bool create = false);
433 unsigned int RecurseDichotomic(
434 double value,
vtkDoubleArray* coord,
double tol,
unsigned int ideb,
unsigned int ifin) const;
436 unsigned int FindDichotomic(
double value,
vtkDataArray* coord,
double tol) const;
439 virtual
unsigned int FindDichotomicX(
double value,
double tol = 0.0) const;
440 virtual
unsigned int FindDichotomicY(
double value,
double tol = 0.0) const;
441 virtual
unsigned int FindDichotomicZ(
double value,
double tol = 0.0) const;
453 void InitializeNonOrientedVonNeumannSuperCursor(
459 void InitializeNonOrientedVonNeumannSuperCursorLight(
461 bool create = false);
466 void InitializeNonOrientedMooreSuperCursor(
472 void InitializeNonOrientedMooreSuperCursorLight(
478 void InitializeNonOrientedUnlimitedMooreSuperCursor(
480 bool create = false);
489 void Initialize() override;
617 vtkIdType,
unsigned int&,
unsigned int&,
unsigned int&)
const;
695 std::map<vtkIdType, vtkSmartPointer<vtkHyperTree>>::iterator
Iterator;
725 void GetBounds(
double bounds[6]);
737 void GetCenter(
double center[3]);
785 unsigned int BranchFactor;
786 unsigned int Dimension;
794 bool TreeGhostArrayCached;
797 unsigned int Orientation;
798 unsigned int Axis[2];
801 unsigned int NumberOfChildren;
802 bool TransposedRootIndexing;
808 unsigned int Dimensions[3];
809 unsigned int CellDims[3];
814 bool WithCoordinates;
825 char* InterfaceNormalsName;
826 char* InterfaceInterceptsName;
832 unsigned int DepthLimiter;
dynamic, self-adjusting array of bits
Fast, simple class for representing and operating on 3D bounds.
represent and manipulate cell attribute data
object represents upward pointers from points to list of cells using each point
create and manipulate ordered lists of objects
abstract superclass for arrays of numeric data
general representation of visualization data
represent and manipulate attribute data in a dataset
dynamic, self-adjusting array of double
represent and manipulate fields of data
Objects for traversal a HyperTreeGrid.
Objects for traversal a HyperTreeGrid.
Objects for traversal a HyperTreeGrid.
Objects for traversal a HyperTreeGrid.
Objects for traversal a HyperTreeGrid.
Specific Moore super cursor that can subdivied neighborhood.
Objects for traversal a HyperTreeGrid.
Objects for traversal a HyperTreeGrid.
Objects for traversal a HyperTreeGrid.
Objects for traversal a HyperTreeGrid.
An iterator object to iteratively access trees in the grid.
vtkHyperTreeGridIterator()=default
std::map< vtkIdType, vtkSmartPointer< vtkHyperTree > >::iterator Iterator
vtkHyperTree * GetNextTree()
Get the next tree and set its index then increment the iterator.
vtkHyperTree * GetNextTree(vtkIdType &index)
Get the next tree and set its index then increment the iterator.
void Initialize(vtkHyperTreeGrid *)
Initialize the iterator on the tree set of the given grid.
A dataset containing a grid of vtkHyperTree instances arranged as a rectilinear grid.
vtkIdType GetShiftedLevelZeroIndex(vtkIdType, unsigned int, unsigned int, unsigned int) const
Return the root index of a root cell with given index displaced.
virtual void GetLevelZeroOriginFromIndex(vtkIdType, double *)
JB Convert the global index of a root to its Spacial coordinates origin and size.
const unsigned int * GetDimensions() const
Get dimensions of this rectilinear grid dataset.
virtual void Squeeze()
Squeeze this representation.
virtual void CopyEmptyStructure(vtkDataObject *)
Copy the internal structure with no data associated.
void Get1DAxis(unsigned int &axis) const
JB retourne l'indice de la dimension valide.
static vtkHyperTreeGrid * GetData(vtkInformation *info)
Retrieve an instance of this class from an information object.
void GetIndexFromLevelZeroCoordinates(vtkIdType &, unsigned int, unsigned int, unsigned int) const
Convert the Cartesian coordinates of a root in the grid to its global index.
virtual void CopyStructure(vtkDataObject *)
Copy the internal geometric and topological structure of a vtkHyperTreeGrid object.
const unsigned int * GetAxes() const
JB Get the axis information (used for CopyStructure)
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
bool RecursivelyInitializePureMask(vtkHyperTreeGridNonOrientedCursor *cursor, vtkDataArray *normale)
Recursively initialize pure material mask.
static vtkInformationIntegerKey * ORIENTATION()
vtkUnsignedCharArray * GetTreeGhostArray()
Gets the array that defines the ghost type of each cell.
unsigned int GetOrientation() const
Get the orientation of 1D or 2D grids:
void SetIndexingModeToKJI()
Get the number or trees available along the 3 axis.
virtual void GetLevelZeroOriginAndSizeFromIndex(vtkIdType, double *, double *)
Convert the global index of a root to its Spacial coordinates origin and size.
void SetDimensions(unsigned int i, unsigned int j, unsigned int k)
Set/Get sizes of this rectilinear grid dataset.
vtkUnsignedCharArray * AllocateTreeGhostArray()
Allocate ghost array for points.
virtual unsigned long GetActualMemorySizeBytes()
Return the actual size of the data in bytes.
void Get2DAxes(unsigned int &axis1, unsigned int &axis2) const
JB Retourne l'indice des deux dimensions valides.
static vtkHyperTreeGrid * GetData(vtkInformationVector *v, int i=0)
Retrieve an instance of this class from an information object.
vtkIdType GetGlobalNodeIndexMax()
JB Retourne la valeur maximale du global index.
void InitializeLocalIndexNode()
JB Permet d'initialiser les index locaux de chacun des HT de cet HTG une fois que TOUS les HTs aient ...
unsigned long GetActualMemorySize() override
Return the actual size of the data in kibibytes (1024 bytes).
void InitializeTreeIterator(vtkHyperTreeGridIterator &)
Initialize an iterator to browse level 0 trees.
void SetDimensions(const unsigned int dims[3])
Set/Get sizes of this rectilinear grid dataset.
static vtkInformationIntegerKey * DIMENSION()
static vtkInformationIntegerKey * LEVELS()
void SetDimensions(int i, int j, int k)
Set/Get sizes of this rectilinear grid dataset.
unsigned int GetChildMask(unsigned int)
Return hard-coded bitcode correspondng to child mask Dimension 1: Factor 2: 0: 100,...
vtkUnsignedCharArray * GetGhostCells()
Gets the array that defines the ghost type of each cell.
void SetIndexingModeToIJK()
Get the number or trees available along the 3 axis.
static vtkHyperTreeGrid * New()
vtkBitArray * GetPureMask()
Get or create pure material mask.
vtkIdType GetMaxNumberOfTrees()
Return the maximum number of trees in the level 0 grid.
bool HasAnyGhostCells() const
Returns true if a ghost cell array is defined.
void SetBranchFactor(unsigned int)
Set/Get the subdivision factor in the grid refinement scheme.
virtual double * GetBounds()
Return a pointer to the geometry bounding box in the form (xmin,xmax, ymin,ymax, zmin,...
static vtkInformationDoubleVectorKey * SIZES()
unsigned int GetBranchFactor() const
Set/Get the subdivision factor in the grid refinement scheme.
unsigned int GetNumberOfChildren() const
The number of children each node can have.
void GetLevelZeroCoordinatesFromIndex(vtkIdType, unsigned int &, unsigned int &, unsigned int &) const
Convert the global index of a root to its Cartesian coordinates in the grid.
int GetDataObjectType() override
Return what type of dataset this is.
void SetDimensions(const int dims[3])
Set/Get sizes of this rectilinear grid dataset.
A data object structured as a tree.
dynamic, self-adjusting array of vtkIdType
a simple class to control print indentation
cell represents a 1D line
Allocate and hold a VTK object.
a cell that represents an orthogonal quadrilateral
represent and manipulate 3D points
Hold a reference to a vtkObjectBase instance.
dynamic, self-adjusting array of unsigned char
#define VTK_DEPRECATED_IN_9_2_0(reason)
#define VTK_HYPER_TREE_GRID
#define VTK_SIZEHINT(...)