20 #ifndef GEOS_SIMPLIFY_DOUBGLASPEUCKERLINESIMPLIFIER_H
21 #define GEOS_SIMPLIFY_DOUBGLASPEUCKERLINESIMPLIFIER_H
23 #include <geos/export.h>
29 #pragma warning(disable: 4251) // warning C4251: needs to have dll-interface to be used by clients of class
50 typedef std::vector<short int> BoolVect;
51 typedef std::auto_ptr<BoolVect> BoolVectAutoPtr;
53 typedef std::vector<geom::Coordinate> CoordsVect;
54 typedef std::auto_ptr<CoordsVect> CoordsVectAutoPtr;
61 static CoordsVectAutoPtr simplify(
62 const CoordsVect& nPts,
63 double distanceTolerance);
75 void setDistanceTolerance(
double nDistanceTolerance);
81 CoordsVectAutoPtr simplify();
85 const CoordsVect& pts;
86 BoolVectAutoPtr usePt;
87 double distanceTolerance;
89 void simplifySection(std::size_t i, std::size_t j);
103 #endif // GEOS_SIMPLIFY_DOUBGLASPEUCKERLINESIMPLIFIER_H