Go to the documentation of this file.
85 #ifndef vtkDecimatePro_h
86 #define vtkDecimatePro_h
331 {this->MaxId = -1; this->Array =
new LocalVertex[sz];};
334 delete [] this->Array;
338 {this->MaxId++; this->Array[this->MaxId] =
v;};
351 {this->MaxId = -1; this->Array =
new LocalTri[sz];};
354 delete [] this->Array;
358 {this->MaxId++; this->Array[this->MaxId] =
t;};
371 void Insert(
vtkIdType id,
double error= -1.0);
372 int Pop(
double &error);
395 double TheSplitAngle;
void InsertNextTriangle(LocalTri &t)
vtkIdType GetNumberOfTriangles()
double * GetInflectionPoints()
int OutputPointsPrecision
void DistributeError(double error)
LocalVertex * LocalVertexPtr
void SplitLoop(vtkIdType fedges[2], vtkIdType &n1, vtkIdType *l1, vtkIdType &n2, vtkIdType *l2)
#define vtkTypeMacro(thisClass, superclass)
a list of ids arranged in priority order
LocalTri & GetTriangle(vtkIdType i)
GLint GLint GLint GLint GLint x
void SplitVertex(vtkIdType ptId, int type, unsigned short int numTris, vtkIdType *tris, int insert)
int CollapseEdge(int type, vtkIdType ptId, vtkIdType collapseId, vtkIdType pt1, vtkIdType pt2, vtkIdList *CollapseTris)
reduce the number of triangles in a mesh
#define vtkSetClampMacro(name, type, min, max)
static vtkDecimatePro * New()
vtkPriorityQueue * EdgeLengths
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
#define VTKFILTERSCORE_EXPORT
a simple class to control print indentation
LocalVertex & GetVertex(vtkIdType i)
list of point or cell ids
void InsertNextVertex(LocalVertex &v)
double InflectionPointRatio
#define vtkGetMacro(name, type)
TriArray(const vtkIdType sz)
int BoundaryVertexDeletion
vtkDoubleArray * InflectionPoints
vtkBooleanMacro(IgnoreDriverBugs, bool)
vtkSetMacro(IgnoreDriverBugs, bool)
vtkIdType GetNumberOfInflectionPoints()
vtkIdType FindSplit(int type, vtkIdType fedges[2], vtkIdType &pt1, vtkIdType &pt2, vtkIdList *CollapseTris)
concrete dataset represents vertices, lines, polygons, and triangle strips
VertexArray(const vtkIdType sz)
dynamic, self-adjusting array of double
vtkIdType GetNumberOfVertices()
int EvaluateVertex(vtkIdType ptId, unsigned short int numTris, vtkIdType *tris, vtkIdType fedges[2])
void PrintSelf(ostream &os, vtkIndent indent)
GLuint GLuint GLsizei GLenum type
void GetInflectionPoints(double *inflectionPoints)
int IsValidSplit(int index)
Superclass for algorithms that produce only polydata as output.