66 #ifndef vtkIntersectionPolyDataFilter_h
67 #define vtkIntersectionPolyDataFilter_h
69 #include "vtkFiltersGeneralModule.h"
83 vtkGetMacro(NumberOfIntersectionPoints,
int);
84 vtkGetMacro(NumberOfIntersectionLines,
int);
112 vtkGetMacro(ComputeIntersectionPointArray,
vtkTypeBool);
113 vtkSetMacro(ComputeIntersectionPointArray,
vtkTypeBool);
114 vtkBooleanMacro(ComputeIntersectionPointArray,
vtkTypeBool);
142 vtkGetMacro(Status,
int);
149 vtkGetMacro(Tolerance,
double);
150 vtkSetMacro(Tolerance,
double);
159 vtkGetMacro(RelativeSubtriangleArea,
double);
160 vtkSetMacro(RelativeSubtriangleArea,
double);
173 static int TriangleTriangleIntersection(
double p1[3],
double q1[3],
double r1[3],
double p2[3],
174 double q2[3],
double r2[3],
int& coplanar,
double pt1[3],
double pt2[3],
double surfaceid[2],
181 static void CleanAndCheckSurface(
vtkPolyData* pd,
double stats[2],
double tolerance);
186 static void CleanAndCheckInput(
vtkPolyData* pd,
double tolerance);
200 int NumberOfIntersectionPoints;
201 int NumberOfIntersectionLines;
209 double RelativeSubtriangleArea;
214 #endif // vtkIntersectionPolyDataFilter_h
virtual int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
This is called by the superclass.
concrete dataset represents vertices, lines, polygons, and triangle strips
static vtkPolyDataAlgorithm * New()
Superclass for algorithms that produce only polydata as output.
a simple class to control print indentation
vtkIntersectionPolyDataFilter computes the intersection between two vtkPolyData objects.
int FillInputPortInformation(int port, vtkInformation *info) override
Fill the input port information objects for this algorithm.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.