VTK  9.1.0
vtkHyperTreeGrid.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkHyperTreeGrid.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
59 #ifndef vtkHyperTreeGrid_h
60 #define vtkHyperTreeGrid_h
61 
62 #include "vtkCommonDataModelModule.h" // For export macro
63 #include "vtkDataObject.h"
64 
65 #include "vtkNew.h" // vtkSmartPointer
66 #include "vtkSmartPointer.h" // vtkSmartPointer
67 
68 #include <cassert> // std::assert
69 #include <map> // std::map
70 #include <memory> // std::shared_ptr
71 
72 class vtkBitArray;
73 class vtkBoundingBox;
74 class vtkCellLinks;
75 class vtkCollection;
76 class vtkDataArray;
77 class vtkHyperTree;
86 class vtkDoubleArray;
88 class vtkIdTypeArray;
89 class vtkLine;
90 class vtkPixel;
91 class vtkPoints;
92 class vtkCellData;
94 
95 class VTKCOMMONDATAMODEL_EXPORT vtkHyperTreeGrid : public vtkDataObject
96 {
97 public:
103 
105  void PrintSelf(ostream& os, vtkIndent indent) override;
106 
111  static constexpr vtkIdType InvalidIndex = ~0;
112 
116  vtkSetStringMacro(ModeSqueeze); // By copy
117  vtkGetStringMacro(ModeSqueeze);
118 
122  virtual void Squeeze();
123 
127  int GetDataObjectType() override { return VTK_HYPER_TREE_GRID; }
128 
133  virtual void CopyStructure(vtkDataObject*);
134 
139 
140  // --------------------------------------------------------------------------
141  // RectilinearGrid common API
142  // --------------------------------------------------------------------------
143 
145 
148  void SetDimensions(const unsigned int dims[3]);
149  void SetDimensions(const int dims[3]);
150  void SetDimensions(unsigned int i, unsigned int j, unsigned int k);
151  void SetDimensions(int i, int j, int k);
153 
155 
159  const unsigned int* GetDimensions() const VTK_SIZEHINT(3);
160  // JB Dommage, car vtkGetVectorMacro(Dimensions,int,3); not const function
161  void GetDimensions(int dim[3]) const;
162  void GetDimensions(unsigned int dim[3]) const;
164 
166 
172  void SetExtent(const int extent[6]);
173  void SetExtent(int x1, int x2, int y1, int y2, int z1, int z2);
174  vtkGetVector6Macro(Extent, int);
176 
178 
183  const unsigned int* GetCellDims() const VTK_SIZEHINT(3);
184  void GetCellDims(int cellDims[3]) const;
185  void GetCellDims(unsigned int cellDims[3]) const;
187 
188  // --------------------------------------------------------------------------
189 
191 
195  unsigned int GetDimension() const { return this->Dimension; }
197 
199 
202  void Get1DAxis(unsigned int& axis) const
203  {
204  assert("pre: valid_dim" && this->GetDimension() == 1);
205  axis = this->Axis[0];
206  }
208 
210 
213  void Get2DAxes(unsigned int& axis1, unsigned int& axis2) const
214  {
215  assert("pre: valid_dim" && this->GetDimension() == 2);
216  axis1 = this->Axis[0];
217  axis2 = this->Axis[1];
218  }
220 
222 
225  const unsigned int* GetAxes() const { return this->Axis; }
227 
229 
232  // vtkGetMacro(NumberOfChildren, unsigned int); not const
233  unsigned int GetNumberOfChildren() const { return this->NumberOfChildren; }
235 
245  // JB ?? virtual void GetNumberOfTreesPerDimension(unsigned int dimsOut[3]);
246 
248 
252  vtkSetMacro(TransposedRootIndexing, bool);
253  vtkGetMacro(TransposedRootIndexing, bool);
254  void SetIndexingModeToKJI() { this->SetTransposedRootIndexing(false); }
255  void SetIndexingModeToIJK() { this->SetTransposedRootIndexing(true); }
257 
259 
265  unsigned int GetOrientation() const { return this->Orientation; }
267 
269 
272  vtkGetMacro(FreezeState, bool);
274 
276 
279  void SetBranchFactor(unsigned int);
280  unsigned int GetBranchFactor() const { return this->BranchFactor; }
282 
287 
292 
297 
302 
307 
311  unsigned int GetNumberOfLevels();
312 
314 
318  vtkGetObjectMacro(XCoordinates, vtkDataArray);
320 
322 
326  vtkGetObjectMacro(YCoordinates, vtkDataArray);
328 
330 
334  vtkGetObjectMacro(ZCoordinates, vtkDataArray);
336 
338 
341  virtual void CopyCoordinates(const vtkHyperTreeGrid* output);
342  virtual void SetFixedCoordinates(unsigned int axis, double value);
344 
346 
350  vtkGetObjectMacro(Mask, vtkBitArray);
352 
356  bool HasMask();
357 
359 
362  vtkSetMacro(HasInterface, bool);
363  vtkGetMacro(HasInterface, bool);
364  vtkBooleanMacro(HasInterface, bool);
366 
368 
371  vtkSetStringMacro(InterfaceNormalsName);
372  vtkGetStringMacro(InterfaceNormalsName);
374 
376 
379  vtkSetStringMacro(InterfaceInterceptsName);
380  vtkGetStringMacro(InterfaceInterceptsName);
382 
384 
387  vtkSetMacro(DepthLimiter, unsigned int);
388  vtkGetMacro(DepthLimiter, unsigned int);
390 
395  vtkHyperTreeGridOrientedCursor* cursor, vtkIdType index, bool create = false);
397 
402  vtkHyperTreeGridOrientedGeometryCursor* cursor, vtkIdType index, bool create = false);
404  vtkIdType index, bool create = false);
405 
410  vtkHyperTreeGridNonOrientedCursor* cursor, vtkIdType index, bool create = false);
412 
417  vtkHyperTreeGridNonOrientedGeometryCursor* cursor, vtkIdType index, bool create = false);
419  vtkIdType index, bool create = false);
420 
425 
426 private:
427  unsigned int RecurseDichotomic(
428  double value, vtkDoubleArray* coord, unsigned int ideb, unsigned int ifin) const;
429 
430  unsigned int FindDichotomic(double value, vtkDataArray* coord) const;
431 
432 public:
433  virtual unsigned int FindDichotomicX(double value) const;
434  virtual unsigned int FindDichotomicY(double value) const;
435  virtual unsigned int FindDichotomicZ(double value) const;
436 
443  vtkIdType index, bool create = false);
444 
450  bool create = false);
452  vtkIdType index, bool create = false);
453 
458  vtkHyperTreeGridNonOrientedMooreSuperCursor* cursor, vtkIdType index, bool create = false);
460  vtkIdType index, bool create = false);
461 
468  vtkIdType index, bool create = false);
469 
473  void Initialize() override;
474 
479  virtual vtkHyperTree* GetTree(vtkIdType, bool create = false);
480 
486 
490  void ShallowCopy(vtkDataObject*) override;
491 
495  void DeepCopy(vtkDataObject*) override;
496 
500  int GetExtentType() override { return VTK_3D_EXTENT; }
501 
510  virtual unsigned long GetActualMemorySizeBytes();
511 
520  unsigned long GetActualMemorySize() override;
521 
527 
532 
583  unsigned int GetChildMask(unsigned int);
584 
588  void GetIndexFromLevelZeroCoordinates(vtkIdType&, unsigned int, unsigned int, unsigned int) const;
589 
595  vtkIdType GetShiftedLevelZeroIndex(vtkIdType, unsigned int, unsigned int, unsigned int) const;
596 
601  vtkIdType, unsigned int&, unsigned int&, unsigned int&) const;
602 
606  virtual void GetLevelZeroOriginAndSizeFromIndex(vtkIdType, double*, double*);
607 
611  virtual void GetLevelZeroOriginFromIndex(vtkIdType, double*);
612 
622 
629 
634  bool HasAnyGhostCells() const;
635 
640 
646 
651 
655  class VTKCOMMONDATAMODEL_EXPORT vtkHyperTreeGridIterator
656  {
657  public:
659 
664 
670 
676 
677  protected:
678  std::map<vtkIdType, vtkSmartPointer<vtkHyperTree>>::iterator Iterator;
680  };
681 
687 
689 
695 
701  virtual double* GetBounds() VTK_SIZEHINT(6);
702 
708  void GetBounds(double bounds[6]);
709 
714  double* GetCenter() VTK_SIZEHINT(3);
715 
720  void GetCenter(double center[3]);
721 
726  vtkCellData* GetCellData();
727 
733  vtkFieldData* GetAttributesAsFieldData(int type) override;
734 
740  vtkIdType GetNumberOfElements(int type) override;
741 
742 protected:
747 
751  ~vtkHyperTreeGrid() override;
752 
756  char* ModeSqueeze;
757 
758  double Bounds[6]; // (xmin,xmax, ymin,ymax, zmin,zmax) geometric bounds
759  double Center[3]; // geometric center
760 
761  bool FreezeState;
762  unsigned int BranchFactor; // 2 or 3
763  unsigned int Dimension; // 1, 2, or 3
764 
766 
770  vtkUnsignedCharArray* TreeGhostArray;
771  bool TreeGhostArrayCached;
773 private:
774  unsigned int Orientation; // 0, 1, or 2
775  unsigned int Axis[2];
776 
777 protected:
778  unsigned int NumberOfChildren;
779  bool TransposedRootIndexing;
780 
781  // --------------------------------
782  // RectilinearGrid common fields
783  // --------------------------------
784 private:
785  unsigned int Dimensions[3]; // Just for GetDimensions
786  unsigned int CellDims[3]; // Just for GetCellDims
787 protected:
788  int DataDescription;
789  int Extent[6];
790 
791  bool WithCoordinates;
792  vtkDataArray* XCoordinates;
793  vtkDataArray* YCoordinates;
794  vtkDataArray* ZCoordinates;
795  // --------------------------------
796 
797  vtkBitArray* Mask;
798  vtkBitArray* PureMask;
799  bool InitPureMask;
800 
801  bool HasInterface;
802  char* InterfaceNormalsName;
803  char* InterfaceInterceptsName;
804 
805  std::map<vtkIdType, vtkSmartPointer<vtkHyperTree>> HyperTrees;
806 
807  vtkNew<vtkCellData> CellData; // Scalars, vectors, etc. associated w/ each point
808 
809  unsigned int DepthLimiter;
810 
811 private:
812  vtkHyperTreeGrid(const vtkHyperTreeGrid&) = delete;
813  void operator=(const vtkHyperTreeGrid&) = delete;
814 };
815 
816 #endif
vtkPoints
represent and manipulate 3D points
Definition: vtkPoints.h:143
vtkHyperTreeGrid::GetTree
virtual vtkHyperTree * GetTree(vtkIdType, bool create=false)
Return tree located at given index of hyper tree grid NB: This will construct a new HyperTree if grid...
vtkHyperTreeGrid::GetMaxNumberOfTrees
vtkIdType GetMaxNumberOfTrees()
Return the maximum number of trees in the level 0 grid.
vtkHyperTreeGridNonOrientedGeometryCursor
Objects for traversal a HyperTreeGrid.
Definition: vtkHyperTreeGridNonOrientedGeometryCursor.h:57
vtkHyperTreeGrid::GetBranchFactor
unsigned int GetBranchFactor() const
Set/Get the subdivision factor in the grid refinement scheme.
Definition: vtkHyperTreeGrid.h:280
vtkHyperTreeGrid::RecursivelyInitializePureMask
bool RecursivelyInitializePureMask(vtkHyperTreeGridNonOrientedCursor *cursor, vtkDataArray *normale)
Recursively initialize pure material mask.
vtkHyperTreeGrid::Squeeze
virtual void Squeeze()
Squeeze this representation.
vtkHyperTreeGridNonOrientedMooreSuperCursor
Objects for traversal a HyperTreeGrid.
Definition: vtkHyperTreeGridNonOrientedMooreSuperCursor.h:50
vtkHyperTreeGrid::CopyCoordinates
virtual void CopyCoordinates(const vtkHyperTreeGrid *output)
JB Augented services on Coordinates.
vtkHyperTreeGrid::SetTree
void SetTree(vtkIdType, vtkHyperTree *)
Assign given tree to given index of hyper tree grid NB: This will create a new slot in the grid if ne...
vtkHyperTreeGrid::vtkHyperTreeGridIterator::GetNextTree
vtkHyperTree * GetNextTree(vtkIdType &index)
Get the next tree and set its index then increment the iterator.
vtkHyperTreeGrid::GetActualMemorySize
unsigned long GetActualMemorySize() override
Return the actual size of the data in kibibytes (1024 bytes).
vtkHyperTreeGrid::InitializeNonOrientedGeometryCursor
void InitializeNonOrientedGeometryCursor(vtkHyperTreeGridNonOrientedGeometryCursor *cursor, vtkIdType index, bool create=false)
JB.
vtkHyperTreeGrid::vtkHyperTreeGridIterator::Initialize
void Initialize(vtkHyperTreeGrid *)
Initialize the iterator on the tree set of the given grid.
vtkHyperTreeGrid::GetNumberOfVertices
vtkIdType GetNumberOfVertices()
Get the number of vertices in the primal tree grid.
vtkX3D::value
@ value
Definition: vtkX3D.h:226
vtkX3D::type
@ type
Definition: vtkX3D.h:522
vtkIdType
int vtkIdType
Definition: vtkType.h:332
vtkHyperTreeGrid::FindDichotomicX
virtual unsigned int FindDichotomicX(double value) const
vtkHyperTreeGrid::GetTreeGhostArray
vtkUnsignedCharArray * GetTreeGhostArray()
Gets the array that defines the ghost type of each point.
vtkHyperTreeGrid::LEVELS
static vtkInformationIntegerKey * LEVELS()
vtkDataSetAttributes
represent and manipulate attribute data in a dataset
Definition: vtkDataSetAttributes.h:170
vtkHyperTreeGrid::GetNumberOfLevels
unsigned int GetNumberOfLevels()
Return the number of levels in the hyper tree grid.
vtkHyperTreeGrid::GetGhostCells
vtkUnsignedCharArray * GetGhostCells()
Accessor on ghost cells.
vtkInformationVector
Store zero or more vtkInformation instances.
Definition: vtkInformationVector.h:145
vtkHyperTreeGrid::SetDimensions
void SetDimensions(int i, int j, int k)
Set/Get sizes of this rectilinear grid dataset.
vtkUnsignedCharArray
dynamic, self-adjusting array of unsigned char
Definition: vtkUnsignedCharArray.h:145
vtkHyperTreeGrid::DeepCopy
void DeepCopy(vtkDataObject *) override
Create deep copy of hyper tree grid.
vtkHyperTreeGrid::HasAnyGhostCells
bool HasAnyGhostCells() const
Returns 1 if there are any ghost cells 0 otherwise.
vtkSmartPointer
Hold a reference to a vtkObjectBase instance.
Definition: vtkSmartPointer.h:145
vtkHyperTreeGrid::NewNonOrientedVonNeumannSuperCursorLight
vtkHyperTreeGridNonOrientedVonNeumannSuperCursorLight * NewNonOrientedVonNeumannSuperCursorLight(vtkIdType index, bool create=false)
vtkHyperTreeGrid::SetYCoordinates
virtual void SetYCoordinates(vtkDataArray *)
Set/Get the grid coordinates in the y-direction.
vtkHyperTreeGrid::FindNonOrientedGeometryCursor
vtkHyperTreeGridNonOrientedGeometryCursor * FindNonOrientedGeometryCursor(double x[3])
JB Retourne un curseur geometrique pointant une des mailles comportant la position spatiale x.
vtkHyperTreeGrid::GetChildMask
unsigned int GetChildMask(unsigned int)
Return hard-coded bitcode correspondng to child mask Dimension 1: Factor 2: 0: 100,...
vtkHyperTreeGrid::CopyEmptyStructure
virtual void CopyEmptyStructure(vtkDataObject *)
Copy the internal structure with no data associated.
VTK_HYPER_TREE_GRID
#define VTK_HYPER_TREE_GRID
Definition: vtkType.h:109
vtkHyperTreeGrid::SetBranchFactor
void SetBranchFactor(unsigned int)
Set/Get the subdivision factor in the grid refinement scheme.
vtkHyperTreeGridNonOrientedVonNeumannSuperCursorLight
Objects for traversal a HyperTreeGrid.
Definition: vtkHyperTreeGridNonOrientedVonNeumannSuperCursorLight.h:47
vtkHyperTreeGrid::HasMask
bool HasMask()
Determine whether blanking mask is empty or not.
vtkHyperTreeGrid::SetIndexingModeToKJI
void SetIndexingModeToKJI()
Get the number or trees available along the 3 axis.
Definition: vtkHyperTreeGrid.h:254
vtkHyperTreeGrid::SetDimensions
void SetDimensions(const int dims[3])
Set/Get sizes of this rectilinear grid dataset.
vtkX3D::center
@ center
Definition: vtkX3D.h:236
vtkHyperTreeGridNonOrientedCursor
Objects for traversal a HyperTreeGrid.
Definition: vtkHyperTreeGridNonOrientedCursor.h:51
vtkDataArray
abstract superclass for arrays of numeric data
Definition: vtkDataArray.h:159
vtkHyperTreeGrid::InitializeNonOrientedMooreSuperCursorLight
void InitializeNonOrientedMooreSuperCursorLight(vtkHyperTreeGridNonOrientedMooreSuperCursorLight *cursor, vtkIdType index, bool create=false)
JB.
vtkHyperTreeGrid::ORIENTATION
static vtkInformationIntegerKey * ORIENTATION()
vtkHyperTreeGrid::vtkHyperTreeGridIterator
An iterator object to iteratively access trees in the grid.
Definition: vtkHyperTreeGrid.h:656
vtkHyperTreeGrid::GetExtentType
int GetExtentType() override
Structured extent.
Definition: vtkHyperTreeGrid.h:500
vtkLine
cell represents a 1D line
Definition: vtkLine.h:140
vtkHyperTreeGrid::GetNumberOfChildren
unsigned int GetNumberOfChildren() const
The number of children each node can have.
Definition: vtkHyperTreeGrid.h:233
vtkHyperTreeGrid::NewNonOrientedGeometryCursor
vtkHyperTreeGridNonOrientedGeometryCursor * NewNonOrientedGeometryCursor(vtkIdType index, bool create=false)
vtkFieldData
represent and manipulate fields of data
Definition: vtkFieldData.h:164
vtkHyperTreeGrid::vtkHyperTreeGridIterator::Grid
vtkHyperTreeGrid * Grid
Definition: vtkHyperTreeGrid.h:679
VTK_3D_EXTENT
#define VTK_3D_EXTENT
Definition: vtkDataObject.h:165
vtkHyperTreeGrid::GetIndexFromLevelZeroCoordinates
void GetIndexFromLevelZeroCoordinates(vtkIdType &, unsigned int, unsigned int, unsigned int) const
Convert the Cartesian coordinates of a root in the grid to its global index.
vtkHyperTreeGrid::GetGlobalNodeIndexMax
vtkIdType GetGlobalNodeIndexMax()
JB Retourne la valeur maximale du global index.
vtkHyperTreeGrid::InitializeOrientedGeometryCursor
void InitializeOrientedGeometryCursor(vtkHyperTreeGridOrientedGeometryCursor *cursor, vtkIdType index, bool create=false)
JB.
vtkHyperTreeGrid::NewNonOrientedMooreSuperCursor
vtkHyperTreeGridNonOrientedMooreSuperCursor * NewNonOrientedMooreSuperCursor(vtkIdType index, bool create=false)
vtkBoundingBox
Fast, simple class for representing and operating on 3D bounds.
Definition: vtkBoundingBox.h:66
vtkHyperTreeGrid::GetData
static vtkHyperTreeGrid * GetData(vtkInformation *info)
Retrieve an instance of this class from an information object.
vtkHyperTreeGrid::GetNumberOfLeaves
vtkIdType GetNumberOfLeaves()
Get the number of leaves in the primal tree grid.
vtkCollection
create and manipulate ordered lists of objects
Definition: vtkCollection.h:53
vtkHyperTreeGrid::SetDimensions
void SetDimensions(unsigned int i, unsigned int j, unsigned int k)
Set/Get sizes of this rectilinear grid dataset.
vtkHyperTreeGrid::Get1DAxis
void Get1DAxis(unsigned int &axis) const
JB retourne l'indice de la dimension valide.
Definition: vtkHyperTreeGrid.h:202
vtkHyperTreeGrid::SetXCoordinates
virtual void SetXCoordinates(vtkDataArray *)
Set/Get the grid coordinates in the x-direction.
VTK_SIZEHINT
#define VTK_SIZEHINT(...)
Definition: vtkWrappingHints.h:48
vtkHyperTreeGrid::FindDichotomicZ
virtual unsigned int FindDichotomicZ(double value) const
vtkBlockSortHelper::GetBounds
void GetBounds(T a, double bds[6])
Definition: vtkBlockSortHelper.h:37
vtkInformationIntegerKey
Key for integer values in vtkInformation.
Definition: vtkInformationIntegerKey.h:32
vtkCellData
represent and manipulate cell attribute data
Definition: vtkCellData.h:142
vtkHyperTreeGridOrientedGeometryCursor
Objects for traversal a HyperTreeGrid.
Definition: vtkHyperTreeGridOrientedGeometryCursor.h:55
vtkIndent
a simple class to control print indentation
Definition: vtkIndent.h:113
vtkHyperTreeGrid::InitializeNonOrientedMooreSuperCursor
void InitializeNonOrientedMooreSuperCursor(vtkHyperTreeGridNonOrientedMooreSuperCursor *cursor, vtkIdType index, bool create=false)
JB.
vtkHyperTreeGrid::vtkHyperTreeGridIterator::Iterator
std::map< vtkIdType, vtkSmartPointer< vtkHyperTree > >::iterator Iterator
Definition: vtkHyperTreeGrid.h:678
vtkHyperTreeGrid::GetShiftedLevelZeroIndex
vtkIdType GetShiftedLevelZeroIndex(vtkIdType, unsigned int, unsigned int, unsigned int) const
Return the root index of a root cell with given index displaced.
vtkSmartPointer.h
vtkHyperTreeGrid::Get2DAxes
void Get2DAxes(unsigned int &axis1, unsigned int &axis2) const
JB Retourne l'indice des deux dimensions valides.
Definition: vtkHyperTreeGrid.h:213
vtkHyperTree
A data object structured as a tree.
Definition: vtkHyperTree.h:177
vtkNew
Allocate and hold a VTK object.
Definition: vtkNew.h:165
vtkHyperTreeGrid::SetMask
void SetMask(vtkBitArray *)
Set/Get the blanking mask of primal leaf cells.
vtkHyperTreeGrid::GetLevelZeroOriginFromIndex
virtual void GetLevelZeroOriginFromIndex(vtkIdType, double *)
JB Convert the global index of a root to its Spacial coordinates origin and size.
vtkHyperTreeGrid::SetZCoordinates
virtual void SetZCoordinates(vtkDataArray *)
Set/Get the grid coordinates in the z-direction.
vtkHyperTreeGrid::GetOrientation
unsigned int GetOrientation() const
Get the orientation of 1D or 2D grids:
Definition: vtkHyperTreeGrid.h:265
vtkHyperTreeGrid::InitializeNonOrientedVonNeumannSuperCursorLight
void InitializeNonOrientedVonNeumannSuperCursorLight(vtkHyperTreeGridNonOrientedVonNeumannSuperCursorLight *cursor, vtkIdType index, bool create=false)
JB.
vtkHyperTreeGrid::GetAxes
const unsigned int * GetAxes() const
JB Get the axis information (used for CopyStructure)
Definition: vtkHyperTreeGrid.h:225
vtkHyperTreeGrid::GetDimensions
const unsigned int * GetDimensions() const
Get dimensions of this rectilinear grid dataset.
vtkHyperTreeGridOrientedCursor
Objects for traversal a HyperTreeGrid.
Definition: vtkHyperTreeGridOrientedCursor.h:49
vtkHyperTreeGrid::NewOrientedGeometryCursor
vtkHyperTreeGridOrientedGeometryCursor * NewOrientedGeometryCursor(vtkIdType index, bool create=false)
vtkInformation
Store vtkAlgorithm input/output information.
Definition: vtkInformation.h:183
vtkHyperTreeGridNonOrientedVonNeumannSuperCursor
Objects for traversal a HyperTreeGrid.
Definition: vtkHyperTreeGridNonOrientedVonNeumannSuperCursor.h:47
vtkHyperTreeGrid::GetNumberOfLevels
unsigned int GetNumberOfLevels(vtkIdType)
Return the number of levels in an individual (primal) tree.
vtkX3D::info
@ info
Definition: vtkX3D.h:382
vtkHyperTreeGrid::InitializeTreeIterator
void InitializeTreeIterator(vtkHyperTreeGridIterator &)
Initialize an iterator to browse level 0 trees.
vtkHyperTreeGrid::GetBounds
virtual double * GetBounds()
Return a pointer to the geometry bounding box in the form (xmin,xmax, ymin,ymax, zmin,...
vtkIdTypeArray
dynamic, self-adjusting array of vtkIdType
Definition: vtkIdTypeArray.h:145
vtkHyperTreeGrid::GetLevelZeroOriginAndSizeFromIndex
virtual void GetLevelZeroOriginAndSizeFromIndex(vtkIdType, double *, double *)
Convert the global index of a root to its Spacial coordinates origin and size.
vtkNew.h
vtkHyperTreeGrid::SetDimensions
void SetDimensions(const unsigned int dims[3])
Set/Get sizes of this rectilinear grid dataset.
vtkPixel
a cell that represents an orthogonal quadrilateral
Definition: vtkPixel.h:74
vtkHyperTreeGrid::GetActualMemorySizeBytes
virtual unsigned long GetActualMemorySizeBytes()
Return the actual size of the data in kibibytes (1024 bytes).
vtkDataObject.h
vtkInformationDoubleVectorKey
Key for double vector values.
Definition: vtkInformationDoubleVectorKey.h:51
vtkHyperTreeGrid::NewOrientedCursor
vtkHyperTreeGridOrientedCursor * NewOrientedCursor(vtkIdType index, bool create=false)
vtkHyperTreeGrid::NewNonOrientedVonNeumannSuperCursor
vtkHyperTreeGridNonOrientedVonNeumannSuperCursor * NewNonOrientedVonNeumannSuperCursor(vtkIdType index, bool create=false)
vtkHyperTreeGrid::GetLevelZeroCoordinatesFromIndex
void GetLevelZeroCoordinatesFromIndex(vtkIdType, unsigned int &, unsigned int &, unsigned int &) const
Convert the global index of a root to its Cartesian coordinates in the grid.
vtkHyperTreeGrid::New
static vtkHyperTreeGrid * New()
vtkHyperTreeGrid::InitializeOrientedCursor
void InitializeOrientedCursor(vtkHyperTreeGridOrientedCursor *cursor, vtkIdType index, bool create=false)
JB.
vtkHyperTreeGrid::GetData
static vtkHyperTreeGrid * GetData(vtkInformationVector *v, int i=0)
Retrieve an instance of this class from an information object.
vtkHyperTreeGrid::DIMENSION
static vtkInformationIntegerKey * DIMENSION()
vtkBitArray
dynamic, self-adjusting array of bits
Definition: vtkBitArray.h:34
vtkHyperTreeGrid::CopyStructure
virtual void CopyStructure(vtkDataObject *)
Copy the internal geometric and topological structure of a vtkHyperTreeGrid object.
vtkDoubleArray
dynamic, self-adjusting array of double
Definition: vtkDoubleArray.h:145
vtkX3D::extent
@ extent
Definition: vtkX3D.h:351
vtkHyperTreeGrid::ShallowCopy
void ShallowCopy(vtkDataObject *) override
Create shallow copy of hyper tree grid.
vtkHyperTreeGrid::NewNonOrientedMooreSuperCursorLight
vtkHyperTreeGridNonOrientedMooreSuperCursorLight * NewNonOrientedMooreSuperCursorLight(vtkIdType index, bool create=false)
vtkHyperTreeGrid::InitializeLocalIndexNode
void InitializeLocalIndexNode()
JB Permet d'initialiser les index locaux de chacun des HT de cet HTG une fois que TOUS les HTs aient ...
vtkHyperTreeGrid::vtkHyperTreeGridIterator::GetNextTree
vtkHyperTree * GetNextTree()
Get the next tree and set its index then increment the iterator.
vtkHyperTreeGrid::InitializeNonOrientedCursor
void InitializeNonOrientedCursor(vtkHyperTreeGridNonOrientedCursor *cursor, vtkIdType index, bool create=false)
JB.
vtkDataObject
general representation of visualization data
Definition: vtkDataObject.h:169
vtkHyperTreeGrid::SIZES
static vtkInformationDoubleVectorKey * SIZES()
vtkHyperTreeGrid::AllocateTreeGhostArray
vtkUnsignedCharArray * AllocateTreeGhostArray()
Allocate ghost array for points.
vtkHyperTreeGrid::SetFixedCoordinates
virtual void SetFixedCoordinates(unsigned int axis, double value)
JB Augented services on Coordinates.
vtkX3D::index
@ index
Definition: vtkX3D.h:252
vtkHyperTreeGrid::NewNonOrientedCursor
vtkHyperTreeGridNonOrientedCursor * NewNonOrientedCursor(vtkIdType index, bool create=false)
vtkHyperTreeGridNonOrientedMooreSuperCursorLight
Objects for traversal a HyperTreeGrid.
Definition: vtkHyperTreeGridNonOrientedMooreSuperCursorLight.h:51
vtkHyperTreeGrid::vtkHyperTreeGridIterator::vtkHyperTreeGridIterator
vtkHyperTreeGridIterator()=default
vtkHyperTreeGrid::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkHyperTreeGrid::GetDataObjectType
int GetDataObjectType() override
Return what type of dataset this is.
Definition: vtkHyperTreeGrid.h:127
vtkHyperTreeGrid
A dataset containing a grid of vtkHyperTree instances arranged as a rectilinear grid.
Definition: vtkHyperTreeGrid.h:96
vtkHyperTreeGrid::Initialize
void Initialize() override
Restore data object to initial state.
vtkHyperTreeGrid::FindDichotomicY
virtual unsigned int FindDichotomicY(double value) const
vtkHyperTreeGrid::GetPureMask
vtkBitArray * GetPureMask()
Get or create pure material mask.
vtkHyperTreeGrid::SetIndexingModeToIJK
void SetIndexingModeToIJK()
Get the number or trees available along the 3 axis.
Definition: vtkHyperTreeGrid.h:255
vtkHyperTreeGrid::GetNumberOfNonEmptyTrees
vtkIdType GetNumberOfNonEmptyTrees()
Get the number of non empty trees in this grid.
vtkHyperTreeGrid::InitializeNonOrientedVonNeumannSuperCursor
void InitializeNonOrientedVonNeumannSuperCursor(vtkHyperTreeGridNonOrientedVonNeumannSuperCursor *cursor, vtkIdType index, bool create=false)
JB.