Go to the documentation of this file.
87 #ifndef vtkQuadricClustering_h
88 #define vtkQuadricClustering_h
96 class vtkQuadricClusteringCellSet;
122 { this->SetNumberOfDivisions(div[0], div[1], div[2]); }
144 {this->SetDivisionOrigin(o[0],o[1],o[2]);}
148 {this->SetDivisionSpacing(
s[0],
s[1],
s[2]);}
209 void StartAppend(
double x0,
double x1,
double y0,
double y1,
double z0,
double z1)
210 {
double b[6];
b[0]=x0;
b[1]=x1;
b[2]=y0;
b[3]=y1;
b[4]=z0;
b[5]=z1;
211 this->StartAppend(
b);}
322 int NumberOfDivisions[3];
329 double DivisionOrigin[3];
330 double DivisionSpacing[3];
represent and manipulate 3D points
PointQuadric * QuadricArray
void AddEdges(vtkCellArray *edges, vtkPoints *points, int geometryFlag, vtkPolyData *input, vtkPolyData *output)
void SetDivisionSpacing(double x, double y, double z)
GLboolean GLboolean GLboolean b
void SetNumberOfXDivisions(int num)
void ComputeRepresentativePoint(double quadric[9], vtkIdType binId, double point[3])
void EndAppendUsingPoints(vtkPolyData *input, vtkPolyData *output)
void InitializeQuadric(double quadric[9])
#define vtkTypeMacro(thisClass, superclass)
void AddStrips(vtkCellArray *strips, vtkPoints *points, int geometryFlag, vtkPolyData *input, vtkPolyData *output)
GLint GLint GLint GLint GLint x
vtkFeatureEdges * FeatureEdges
GLenum GLenum GLenum input
vtkCellArray * OutputTriangleArray
void GetNumberOfDivisions(int div[3])
GLsizei const GLfloat * points
void AddTriangle(vtkIdType *binIds, double *pt0, double *pt1, double *pt2, int geometeryFlag, vtkPolyData *input, vtkPolyData *output)
void AddQuadric(vtkIdType binId, double quadric[9])
int AutoAdjustNumberOfDivisions
static vtkQuadricClustering * New()
void SetNumberOfDivisions(int div0, int div1, int div2)
void AddVertices(vtkCellArray *verts, vtkPoints *points, int geometryFlag, vtkPolyData *input, vtkPolyData *output)
vtksys_stl::pair< boost::graph_traits< vtkGraph * >::edge_iterator, boost::graph_traits< vtkGraph * >::edge_iterator > edges(vtkGraph *g)
void SetNumberOfDivisions(int div[3])
#define vtkSetClampMacro(name, type, min, max)
void SetNumberOfYDivisions(int num)
void EndAppendVertexGeometry(vtkPolyData *input, vtkPolyData *output)
#define vtkGetVector3Macro(name, type)
void SetDivisionSpacing(double s[3])
vtkFeatureEdges * GetFeatureEdges()
void AddVertex(vtkIdType binId, double *pt, int geometryFlag, vtkPolyData *input, vtkPolyData *output)
#define VTKFILTERSCORE_EXPORT
reduce the number of triangles in a mesh
a simple class to control print indentation
vtkIdType HashPoint(double point[3])
object to represent cell connectivity
extract boundary, non-manifold, and/or sharp edges from polygonal data
int PreventDuplicateCells
vtkIdType NumberOfBinsUsed
#define vtkGetMacro(name, type)
double FeaturePointsAngle
void AddEdge(vtkIdType *binIds, double *pt0, double *pt1, int geometeryFlag, vtkPolyData *input, vtkPolyData *output)
void StartAppend(double x0, double x1, double y0, double y1, double z0, double z1)
vtkQuadricClusteringCellSet * CellSet
vtkBooleanMacro(IgnoreDriverBugs, bool)
void AppendFeatureQuadrics(vtkPolyData *pd, vtkPolyData *output)
vtkSetMacro(IgnoreDriverBugs, bool)
void SetDivisionOrigin(double x, double y, double z)
void SetNumberOfZDivisions(int num)
void SetDivisionOrigin(double o[3])
GLint GLint GLint GLint GLint GLint y
vtkCellArray * OutputLines
void AddPolygons(vtkCellArray *polys, vtkPoints *points, int geometryFlag, vtkPolyData *input, vtkPolyData *output)
concrete dataset represents vertices, lines, polygons, and triangle strips
void StartAppend(double *bounds)
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
void PrintSelf(ostream &os, vtkIndent indent)
int FillInputPortInformation(int, vtkInformation *)
int * GetNumberOfDivisions()
void Append(vtkPolyData *piece)
int ComputeNumberOfDivisions
void FindFeaturePoints(vtkCellArray *edges, vtkPoints *edgePts, double angle)
vtkPoints * FeaturePoints
Superclass for algorithms that produce only polydata as output.