VTK  9.3.0
vtkHyperTreeGridGeometry.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2 // SPDX-License-Identifier: BSD-3-Clause
22 #ifndef vtkHyperTreeGridGeometry_h
23 #define vtkHyperTreeGridGeometry_h
24 
25 #include "vtkFiltersHyperTreeModule.h" // For export macro
27 
28 VTK_ABI_NAMESPACE_BEGIN
29 class vtkBitArray;
30 class vtkCellArray;
31 class vtkDoubleArray;
32 class vtkHyperTreeGrid;
35 class vtkIdList;
36 class vtkIdTypeArray;
38 class vtkPoints;
40 
41 class VTKFILTERSHYPERTREE_EXPORT vtkHyperTreeGridGeometry : public vtkHyperTreeGridAlgorithm
42 {
43 public:
46  void PrintSelf(ostream& os, vtkIndent indent) override;
47 
49 
54  vtkSetMacro(Merging, bool);
55  vtkGetMacro(Merging, bool);
57 
59 
68  vtkSetMacro(PassThroughCellIds, bool);
69  vtkGetMacro(PassThroughCellIds, bool);
70  vtkBooleanMacro(PassThroughCellIds, bool);
71 
80  vtkSetMacro(OriginalCellIdArrayName, std::string);
81  vtkGetMacro(OriginalCellIdArrayName, std::string);
83 
84 protected:
87 
92 
97 
103 
108 
113 
118 
122  void AddFace(vtkIdType useId, const double* origin, const double* size, unsigned int offset,
123  unsigned int orientation, unsigned char hideEdge);
124 
125  void AddFace2(vtkIdType inId, vtkIdType useId, const double* origin, const double* size,
126  unsigned int offset, unsigned int orientation, bool create = true);
127 
132 
137 
141  unsigned int Dimension;
142 
146  unsigned int Orientation;
147 
152 
157 
162 
168  bool PassThroughCellIds = false;
169 
173  std::string OriginalCellIdArrayName = "vtkOriginalCellIds";
174 
179  bool Merging;
181 
182  // JB A RECUPERER DANS LE .H VTK9
186 
189 
190  vtkIdType EdgesA[12];
191  vtkIdType EdgesB[12];
192 
195 
198 
204 
205 private:
207  void operator=(const vtkHyperTreeGridGeometry&) = delete;
208 };
209 
210 VTK_ABI_NAMESPACE_END
211 #endif /* vtkHyperTreeGridGeometry_h */
dynamic, self-adjusting array of bits
Definition: vtkBitArray.h:29
object to represent cell connectivity
Definition: vtkCellArray.h:185
general representation of visualization data
Definition: vtkDataObject.h:64
dynamic, self-adjusting array of double
Superclass for algorithms that produce a hyper tree grid as output.
Hyper tree grid outer surface.
static vtkHyperTreeGridGeometry * New()
int FillOutputPortInformation(int, vtkInformation *) override
For this algorithm the output is a vtkPolyData instance.
vtkBitArray * PureMask
Pure Material Mask.
void AddFace2(vtkIdType inId, vtkIdType useId, const double *origin, const double *size, unsigned int offset, unsigned int orientation, bool create=true)
void ProcessLeaf1D(vtkHyperTreeGridNonOrientedGeometryCursor *)
Process 1D leaves and issue corresponding edges (lines)
void RecursivelyProcessTreeNot3D(vtkHyperTreeGridNonOrientedGeometryCursor *)
Recursively descend into tree down to leaves.
void RecursivelyProcessTree3D(vtkHyperTreeGridNonOrientedVonNeumannSuperCursor *, unsigned char)
bool Merging
JB Un locator est utilise afin de produire un maillage avec moins JB de points.
void AddFace(vtkIdType useId, const double *origin, const double *size, unsigned int offset, unsigned int orientation, unsigned char hideEdge)
Helper method to generate a face based on its normal and offset from cursor origin.
~vtkHyperTreeGridGeometry() override
vtkPoints * Points
Storage for points of output unstructured mesh.
void ProcessLeaf2D(vtkHyperTreeGridNonOrientedGeometryCursor *)
Process 2D leaves and issue corresponding faces (quads)
vtkCellArray * Cells
Storage for cells of output unstructured mesh.
vtkBitArray * Mask
material Mask
unsigned int Orientation
Orientation of input grid when dimension < 3.
unsigned int Dimension
Dimension of input grid.
vtkIncrementalPointLocator * Locator
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void ProcessLeaf3D(vtkHyperTreeGridNonOrientedVonNeumannSuperCursor *)
Process 3D leaves and issue corresponding cells (voxels)
int ProcessTrees(vtkHyperTreeGrid *, vtkDataObject *) override
Main routine to generate external boundary.
vtkUnsignedCharArray * EdgeFlags
Array used to hide edges left by masked cells.
A dataset containing a grid of vtkHyperTree instances arranged as a rectilinear grid.
list of point or cell ids
Definition: vtkIdList.h:32
dynamic, self-adjusting array of vtkIdType
Abstract class in support of both point location and point insertion.
a simple class to control print indentation
Definition: vtkIndent.h:38
Store vtkAlgorithm input/output information.
represent and manipulate 3D points
Definition: vtkPoints.h:38
dynamic, self-adjusting array of unsigned char
@ orientation
Definition: vtkX3D.h:262
@ size
Definition: vtkX3D.h:253
@ offset
Definition: vtkX3D.h:438
@ string
Definition: vtkX3D.h:490
int vtkIdType
Definition: vtkType.h:315