 |
VTK
9.0.1
|
Go to the documentation of this file.
45 #ifndef vtkSimpleCellTessellator_h
46 #define vtkSimpleCellTessellator_h
48 #include "vtkCommonDataModelModule.h"
51 class vtkTriangleTile;
148 int GetFixedSubdivisions();
158 int GetMaxSubdivisionLevel();
164 int GetMaxAdaptiveSubdivisions();
172 void SetFixedSubdivisions(
int level);
180 void SetMaxSubdivisionLevel(
int level);
191 void SetSubdivisionLevels(
int fixed,
int maxLevel);
208 void InsertEdgesIntoEdgeTable(vtkTriangleTile& tri);
209 void RemoveEdgesFromEdgeTable(vtkTriangleTile& tri);
210 void InsertPointsIntoEdgeTable(vtkTriangleTile& tri);
212 void InsertEdgesIntoEdgeTable(vtkTetraTile& tetra);
213 void RemoveEdgesFromEdgeTable(vtkTetraTile& tetra);
232 vtkTetraTile& root,
const vtkIdType* localIds,
vtkIdType* ids,
int* edgeIds,
int* faceIds);
265 void AllocateScalars(
int size);
309 int GetNumberOfCellsUsingFace(
int faceId);
310 int GetNumberOfCellsUsingEdge(
int edgeId);
320 int IsEdgeOnFace(
double p1[3],
double p2[3]);
330 int FindEdgeParent2D(
double p1[3],
double p2[3],
int& localId);
341 int FindEdgeParent(
double p1[3],
double p2[3],
int& localId);
347 void AllocatePointIds(
int size);
402 friend class vtkTetraTile;
403 friend class vtkTriangleTile;
virtual void Triangulate(vtkGenericAdaptorCell *cell, vtkGenericAttributeCollection *att, vtkDoubleArray *points, vtkCellArray *cellArray, vtkPointData *internalPd)=0
Triangulate a 2D ‘cell’.
vtkCellArray * TessellateCellArray
represent and manipulate point attribute data
virtual void Initialize(vtkGenericDataSet *ds)=0
Initialize the tessellator with a data set ‘ds’.
a cell that represents an n-sided polygon
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on.
virtual void Tessellate(vtkGenericAdaptorCell *cell, vtkGenericAttributeCollection *att, vtkDoubleArray *points, vtkCellArray *cellArray, vtkPointData *internalPd)=0
Tessellate a 3D ‘cell’.
vtkDoubleArray * TessellatePoints
To avoid New/Delete.
int CurrentSubdivisionLevel
double * Scalars
Scalar buffer used to save the interpolate values of the attributes The capacity is at least the numb...
iterator used to traverse cells
Objects that compute error during cell tessellation.
vtkGenericCellIterator * CellIterator
Used to iterate over edges boundaries in GetNumberOfCellsUsingEdges()
helper class to perform cell tessellation
defines dataset interface
helper class to generate triangulations
vtkGenericAdaptorCell * GenericCell
To access the higher order cell from third party library.
helper class to perform cell tessellation
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkGenericAttributeCollection * AttributeCollection
To access the higher order field from third party library.
int PointOffset
Number of double value to skip to go to the next point into Scalars array It is 6+attributeCollection...
vtkOrderedTriangulator * Triangulator
a simple class to control print indentation
vtkIdType NumberOfPoints
Number of points in the dataset to be tessellated.
object to represent cell connectivity
list of point or cell ids
virtual void TessellateFace(vtkGenericAdaptorCell *cell, vtkGenericAttributeCollection *att, vtkIdType index, vtkDoubleArray *points, vtkCellArray *cellArray, vtkPointData *internalPd)=0
Tessellate a face of a 3D ‘cell’.
vtkGenericEdgeTable * EdgeTable
HashTable instead of vtkPointLocator.
keep track of edges (defined by pair of integer id's)
const vtkIdType * FaceIds
For each face (4) of the sub-tetra, there is the id of the original face or -1 if the face is not an ...
a collection of attributes
dynamic, self-adjusting array of double
const vtkIdType * EdgeIds
For each edge (6) of the sub-tetra, there is the id of the original edge or -1 if the edge is not an ...
vtkPointData * TessellatePointData
vtkCellArray * Connectivity