48 #ifndef vtkSimpleCellTessellator_h
49 #define vtkSimpleCellTessellator_h
51 #include "vtkCommonDataModelModule.h"
54 class vtkTriangleTile;
223 void InsertEdgesIntoEdgeTable( vtkTriangleTile &tri );
224 void RemoveEdgesFromEdgeTable( vtkTriangleTile &tri );
225 void InsertPointsIntoEdgeTable( vtkTriangleTile &tri );
227 void InsertEdgesIntoEdgeTable( vtkTetraTile &tetra );
228 void RemoveEdgesFromEdgeTable( vtkTetraTile &tetra );
246 void InitTetraTile(vtkTetraTile &root,
285 void AllocateScalars(
int size);
327 int FindEdgeReferenceCount(
double p1[3],
double p2[3],
330 int GetNumberOfCellsUsingFace(
int faceId );
331 int GetNumberOfCellsUsingEdge(
int edgeId );
341 int IsEdgeOnFace(
double p1[3],
double p2[3]);
351 int FindEdgeParent2D(
double p1[3],
double p2[3],
int &localId);
362 int FindEdgeParent(
double p1[3],
double p2[3],
int &localId);
368 void AllocatePointIds(
int size);
375 int FacesAreEqual(
int *originalFace,
388 int FixedSubdivisions;
389 int MaxSubdivisionLevel;
390 int CurrentSubdivisionLevel;
420 int PointIdsCapacity;
426 friend class vtkTetraTile;
427 friend class vtkTriangleTile;
object to represent cell connectivity
dynamic, self-adjusting array of double
a collection of attributes
iterator used to traverse cells
helper class to perform cell tessellation
defines dataset interface
keep track of edges (defined by pair of integer id's)
Objects that compute error during cell tessellation.
list of point or cell ids
a simple class to control print indentation
helper class to generate triangulations
represent and manipulate point attribute data
a cell that represents an n-sided polygon
helper class to perform cell tessellation
void SetSubdivisionLevels(int fixed, int maxLevel)
Set both the number of fixed subdivisions and the maximum level of subdivisions.
static vtkSimpleCellTessellator * New()
~vtkSimpleCellTessellator() override
void SetFixedSubdivisions(int level)
Set the number of fixed subdivisions.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void Initialize(vtkGenericDataSet *ds) override
Initialize the tessellator with a data set ‘ds’.
void Triangulate(vtkGenericAdaptorCell *cell, vtkGenericAttributeCollection *att, vtkDoubleArray *points, vtkCellArray *cellArray, vtkPointData *internalPd) override
Triangulate a 2D ‘cell’.
int GetMaxAdaptiveSubdivisions()
Return the maximum number of adaptive subdivisions.
vtkSimpleCellTessellator()
void Reset()
Reset the output for repeated use of this class.
void TessellateFace(vtkGenericAdaptorCell *cell, vtkGenericAttributeCollection *att, vtkIdType index, vtkDoubleArray *points, vtkCellArray *cellArray, vtkPointData *internalPd) override
Tessellate a face of a 3D ‘cell’.
void Tessellate(vtkGenericAdaptorCell *cell, vtkGenericAttributeCollection *att, vtkDoubleArray *points, vtkCellArray *cellArray, vtkPointData *internalPd) override
Tessellate a 3D ‘cell’.
int GetMaxSubdivisionLevel()
Return the maximum level of subdivision.
int GetFixedSubdivisions()
Return the number of fixed subdivisions.
void SetMaxSubdivisionLevel(int level)
Set the maximum level of subdivision.