45 #ifndef vtkSimpleCellTessellator_h 46 #define vtkSimpleCellTessellator_h 48 #include "vtkCommonDataModelModule.h" 51 class vtkTriangleTile;
158 int GetFixedSubdivisions();
168 int GetMaxSubdivisionLevel();
174 int GetMaxAdaptiveSubdivisions();
182 void SetFixedSubdivisions(
int level);
190 void SetMaxSubdivisionLevel(
int level);
201 void SetSubdivisionLevels(
int fixed,
220 void InsertEdgesIntoEdgeTable( vtkTriangleTile &tri );
221 void RemoveEdgesFromEdgeTable( vtkTriangleTile &tri );
222 void InsertPointsIntoEdgeTable( vtkTriangleTile &tri );
224 void InsertEdgesIntoEdgeTable( vtkTetraTile &tetra );
225 void RemoveEdgesFromEdgeTable( vtkTetraTile &tetra );
243 void InitTetraTile(vtkTetraTile &root,
282 void AllocateScalars(
int size);
324 int FindEdgeReferenceCount(
double p1[3],
double p2[3],
327 int GetNumberOfCellsUsingFace(
int faceId );
328 int GetNumberOfCellsUsingEdge(
int edgeId );
338 int IsEdgeOnFace(
double p1[3],
double p2[3]);
348 int FindEdgeParent2D(
double p1[3],
double p2[3],
int &localId);
359 int FindEdgeParent(
double p1[3],
double p2[3],
int &localId);
365 void AllocatePointIds(
int size);
372 int FacesAreEqual(
int *originalFace,
385 int FixedSubdivisions;
386 int MaxSubdivisionLevel;
387 int CurrentSubdivisionLevel;
417 int PointIdsCapacity;
423 friend class vtkTetraTile;
424 friend class vtkTriangleTile;
represent and manipulate point attribute data
helper class to perform cell tessellation
a collection of attributes
virtual void TessellateFace(vtkGenericAdaptorCell *cell, vtkGenericAttributeCollection *att, vtkIdType index, vtkDoubleArray *points, vtkCellArray *cellArray, vtkPointData *internalPd)=0
Tessellate a face of a 3D ‘cell’.
helper class to perform cell tessellation
keep track of edges (defined by pair of integer id's)
helper class to generate triangulations
virtual void Triangulate(vtkGenericAdaptorCell *cell, vtkGenericAttributeCollection *att, vtkDoubleArray *points, vtkCellArray *cellArray, vtkPointData *internalPd)=0
Triangulate a 2D ‘cell’.
dynamic, self-adjusting array of double
iterator used to traverse cells
a simple class to control print indentation
virtual void Tessellate(vtkGenericAdaptorCell *cell, vtkGenericAttributeCollection *att, vtkDoubleArray *points, vtkCellArray *cellArray, vtkPointData *internalPd)=0
Tessellate a 3D ‘cell’.
list of point or cell ids
a cell that represents an n-sided polygon
virtual void Initialize(vtkGenericDataSet *ds)=0
Initialize the tessellator with a data set ‘ds’.
Objects that compute error during cell tessellation.
object to represent cell connectivity
defines dataset interface
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.