GEOS 3.14.0dev
RepeatedPointRemover.h
1/**********************************************************************
2 *
3 * GEOS - Geometry Engine Open Source
4 * http://geos.osgeo.org
5 *
6 * Copyright (C) 2019 Daniel Baston <dbaston@gmail.com>
7 *
8 * This is free software; you can redistribute and/or modify it under
9 * the terms of the GNU Lesser General Public Licence as published
10 * by the Free Software Foundation.
11 * See the COPYING file for more information.
12 *
13 **********************************************************************/
14
15#pragma once
16
17#include <geos/geom/CoordinateSequence.h>
18#include <geos/geom/Geometry.h>
19
20
21namespace geos {
22namespace operation {
23namespace valid {
24
28 class GEOS_DLL RepeatedPointRemover {
29
30 public:
31
41 static std::unique_ptr<geom::CoordinateSequence>
43 const geom::CoordinateSequence* seq,
44 double tolerance = 0.0);
45
46 static std::unique_ptr<geom::CoordinateSequence>
47 removeRepeatedAndInvalidPoints(
48 const geom::CoordinateSequence* seq,
49 double tolerance = 0.0);
50
51 static std::unique_ptr<geom::Geometry>
52 removeRepeatedPoints(
53 const geom::Geometry* geom,
54 double tolerance = 0.0);
55 };
56
57}
58}
59}
60
The internal representation of a list of coordinates inside a Geometry.
Definition CoordinateSequence.h:56
Basic implementation of Geometry, constructed and destructed by GeometryFactory.
Definition Geometry.h:197
Definition RepeatedPointRemover.h:28
static std::unique_ptr< geom::CoordinateSequence > removeRepeatedPoints(const geom::CoordinateSequence *seq, double tolerance=0.0)
Basic namespace for all GEOS functionalities.
Definition geos.h:39