37 #ifndef vtkAbstractCellLocator_h
38 #define vtkAbstractCellLocator_h
40 #include "vtkCommonDataModelModule.h"
61 vtkSetClampMacro(NumberOfCellsPerNode,
int,1,
VTK_INT_MAX);
62 vtkGetMacro(NumberOfCellsPerNode,
int);
109 vtkSetMacro(UseExistingSearchStructure,
vtkTypeBool);
110 vtkGetMacro(UseExistingSearchStructure,
vtkTypeBool);
111 vtkBooleanMacro(UseExistingSearchStructure,
vtkTypeBool);
118 virtual int IntersectWithLine(
const double p1[3],
const double p2[3],
double tol,
double& t,
double x[3],
119 double pcoords[3],
int &subId);
125 virtual int IntersectWithLine(
const double p1[3],
const double p2[3],
double tol,
double& t,
double x[3],
126 double pcoords[3],
int &subId,
vtkIdType &cellId);
133 virtual int IntersectWithLine(
const double p1[3],
const double p2[3],
double tol,
double& t,
double x[3],
148 virtual int IntersectWithLine(
149 const double p1[3],
const double p2[3],
157 virtual void FindClosestPoint(
158 const double x[3],
double closestPoint[3],
159 vtkIdType &cellId,
int &subId,
double& dist2);
172 virtual void FindClosestPoint(
173 const double x[3],
double closestPoint[3],
175 int &subId,
double& dist2);
185 virtual vtkIdType FindClosestPointWithinRadius(
186 double x[3],
double radius,
187 double closestPoint[3],
vtkIdType &cellId,
188 int &subId,
double& dist2);
204 virtual vtkIdType FindClosestPointWithinRadius(
205 double x[3],
double radius,
206 double closestPoint[3],
208 int &subId,
double& dist2);
226 virtual vtkIdType FindClosestPointWithinRadius(
227 double x[3],
double radius,
228 double closestPoint[3],
230 int &subId,
double& dist2,
int &inside);
237 virtual void FindCellsWithinBounds(
double *bbox,
vtkIdList *cells);
246 virtual void FindCellsAlongLine(
const double p1[3],
const double p2[3],
double tolerance,
vtkIdList *cells);
261 double pcoords[3],
double *weights);
268 virtual bool InsideCellBounds(
double x[3],
vtkIdType cell_ID);
282 virtual bool StoreCellBounds();
283 virtual void FreeCellBounds();