59 #include "vtkFiltersGeneralModule.h"
78 void DebugPrintTree(
int level,
double *leaf_vol,
int *minCells,
123 double& t,
double x[3],
double pcoords[3],
131 static void ComputeOBB(
vtkPoints *pts,
double corner[3],
double max[3],
132 double mid[3],
double min[3],
double size[3]);
140 void ComputeOBB(
vtkDataSet *input,
double corner[3],
double max[3],
141 double mid[3],
double min[3],
double size[3]);
148 int InsideOrOutside(
const double point[3]);
160 int LineIntersectsNode(
vtkOBBNode *pA,
double b0[3],
double b1[3] );
166 double p0[3],
double p1[3],
185 void BuildLocator() VTK_OVERRIDE;
201 ~vtkOBBTree() VTK_OVERRIDE;
206 void ComputeOBB(
vtkIdList *cells,
double corner[3],
double max[3],
207 double mid[3],
double min[3],
double size[3]);
216 void GeneratePolygons(
vtkOBBNode *OBBptr,
int level,
int repLevel,
220 vtkOBBTree(const vtkOBBTree&) VTK_DELETE_FUNCTION;
221 void operator=(const vtkOBBTree&) VTK_DELETE_FUNCTION;
represent and manipulate 4x4 transformation matrices
abstract class to specify dataset behavior
an abstract base class for locators which find cells
concrete dataset represents vertices, lines, polygons, and triangle strips
virtual void FreeSearchStructure()=0
Free the memory required for the spatial data structure.
provides thread-safe access to cells
generate oriented bounding box (OBB) tree
a simple class to control print indentation
list of point or cell ids
virtual int IntersectWithLine(double p1[3], double p2[3], double tol, double &t, double x[3], double pcoords[3], int &subId)
Return intersection point (if any) of finite line with cells contained in cell locator.
object to represent cell connectivity
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...
represent and manipulate 3D points