25 #ifndef vtkAnnularBinIterator_h
26 #define vtkAnnularBinIterator_h
28 #include "vtkFiltersMeshingModule.h"
34 VTK_ABI_NAMESPACE_BEGIN
38 struct InternalAnnularBinIterator;
53 this->LargeIds =
false;
54 this->Iterator =
nullptr;
63 void GetBin(
int IJ[2]);
102 return this->Dispatch.Begin(ptId, x, results);
112 return this->Dispatch.Next(radius2, circles, results);
123 void GetBin(
int IJ[2]) { this->Dispatch.GetBin(IJ); }
129 double GetMinD2() {
return this->Dispatch.GetMinD2(); }
136 VTK_ABI_NAMESPACE_END
double GetMinD2()
Return the minimum distance of the current annulus of bins to the initial starting point x[2]...
bool Next(double radius2, vtkDoubleArray *circles, vtkDist2TupleArray &results)
Move to the next bin, returning all points that are inside the circle given by x[2] (specified in Beg...
vtkAnnularBinIteratorDispatch & operator=(const vtkAnnularBinIteratorDispatch &)
vtkAnnularBinIteratorDispatch()
vtkAnnularBinIteratorDispatch(const vtkAnnularBinIteratorDispatch &)
void GetBin(int IJ[2])
Return the current bin/bucket index IJ of traversal.
bool Begin(vtkIdType ptId, double x[3], vtkDist2TupleArray &results)
Begin iterating over the bins, starting with point ptId at position x[3].
void Initialize(vtkStaticPointLocator2D *locator)
Initialize an iterator with the associated vtkStaticPointLocator2D over which to iterate.
vtkAnnularBinIterator(vtkStaticPointLocator2D *loc)
Construct the iterator with a vtkStaticPointLocator2D.
dynamic, self-adjusting array of double
InternalAnnularBinIterator * Iterator
vtkAnnularBinIteratorDispatch(vtkStaticPointLocator2D *loc)
vtkAnnularBinIterator & operator=(const vtkAnnularBinIterator &)
vtkIdType GetBinId()
Return the current bin/bucket id of traversal.
Represent an array of vtkDist2Tuples.
vtkAnnularBinIterator(const vtkAnnularBinIterator &)
A fast, lightweight class for iterating over the bins of a 2D vtkStaticPointLocator2D.
quickly locate points in 2-space