1 #ifndef DM_IPOINT_SET_HPP_INCLUDED
2 #define DM_IPOINT_SET_HPP_INCLUDED
8 #include "DM/config.hpp"
9 #include "DM/IAddInfoLayout.hpp"
10 #include "DM/Handle.hpp"
11 #include "DM/IGeometry.hpp"
12 #include "DM/IAddInfo.hpp"
13 #include "DM/IAddInfoContainer.hpp"
14 #include "DM/IPoint.hpp"
15 #include "DM/Iterator.hpp"
16 #include "DM/AutoLink.hpp"
33 virtual unsigned sizePoint()
const = 0;
34 virtual void reservePoint(
unsigned size) = 0;
35 virtual void resizePoint(
unsigned resize) = 0;
36 virtual void removePoint(
unsigned) = 0;
37 virtual void clearPoint() = 0;
38 virtual void addPoint(
const DM::IPoint &pt) = 0;
40 virtual void addPoint(
double x,
double y,
double z) = 0;
48 virtual void sortByDistance(
const DM::IPoint &refPt,
int dim,
bool ascending =
true) = 0;
50 virtual const_iterator_point beginPoint()
const = 0;
51 virtual const_iterator_point endPoint()
const = 0;
53 virtual const IPoint& operator[](
unsigned)
const = 0;
54 virtual IPoint& operator[](
unsigned) = 0;
56 virtual const PointHandle& operator()(
unsigned idx)
const = 0;
60 typedef Handle< IPointSet > PointSetHandle;
64 #endif //DM_IPOINT_SET_HPP_INCLUDED