36 #ifndef __vtkOctreePointLocatorNode_h
37 #define __vtkOctreePointLocatorNode_h
56 this->NumberOfPoints = numberOfPoints;
58 vtkGetMacro(NumberOfPoints,
int);
64 void SetBounds(
double xMin,
double xMax,
double yMin,
65 double yMax,
double zMin,
double zMax);
68 this->SetBounds(b[0], b[1], b[2], b[3], b[4], b[5]);
70 void GetBounds(
double *b)
const;
77 void SetDataBounds(
double xMin,
double xMax,
double yMin,
78 double yMax,
double zMin,
double zMax);
79 void GetDataBounds(
double *b)
const;
86 vtkGetMacro(MinBounds,
double*);
87 vtkGetMacro(MaxBounds,
double*);
95 this->MinBounds[0] = minBounds[0];
96 this->MinBounds[1] = minBounds[1];
97 this->MinBounds[2] = minBounds[2];
105 this->MaxBounds[0] = maxBounds[0];
106 this->MaxBounds[1] = maxBounds[1];
107 this->MaxBounds[2] = maxBounds[2];
115 vtkGetMacro(MinDataBounds,
double*);
116 vtkGetMacro(MaxDataBounds,
double*);
125 this->MinDataBounds[0] = minDataBounds[0];
126 this->MinDataBounds[1] = minDataBounds[1];
127 this->MinDataBounds[2] = minDataBounds[2];
136 this->MaxDataBounds[0] = maxDataBounds[0];
137 this->MaxDataBounds[1] = maxDataBounds[1];
138 this->MaxDataBounds[2] = maxDataBounds[2];
145 vtkGetMacro(ID,
int);
153 vtkGetMacro(MinID,
int);
157 void CreateChildNodes();
160 void DeleteChildNodes();
176 int ContainsPoint(
double x,
double y,
double z,
int useDataBounds);
182 double GetDistance2ToBoundary(
double x,
double y,
double z,
191 double GetDistance2ToBoundary(
double x,
double y,
double z,
201 double GetDistance2ToInnerBoundary(
double x,
double y,
double z,
210 int GetSubOctantIndex(
double*
point,
int CheckContainment);
217 int& NextLeafId,
int & NextMinId,
227 double _GetDistance2ToBoundary(
228 double x,
double y,
double z,
double *boundaryPt,
240 double MinDataBounds[3];
244 double MaxDataBounds[3];