GEOS  3.9.1dev
SnappingPointIndex.h
Go to the documentation of this file.
1 /**********************************************************************
2  *
3  * GEOS - Geometry Engine Open Source
4  * http://geos.osgeo.org
5  *
6  * Copyright (C) 2020 Paul Ramsey <pramsey@cleverelephant.ca>
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  * Last port: noding/snap/SnappingPointIndex.java
16  *
17  **********************************************************************/
18 
19 #pragma once
20 
21 #include <geos/geom/Coordinate.h>
24 
25 namespace geos {
26 namespace noding { // geos::noding
27 namespace snap { // geos::noding::snap
28 
30 
36 private:
37 
38  // double snapTolerance;
39  std::unique_ptr<index::kdtree::KdTree> snapPointIndex;
40 
41 public:
42 
43  SnappingPointIndex(double p_snapTolerance);
44 
53  const geom::Coordinate& snap(const geom::Coordinate& p);
54 
55 };
56 
57 } // namespace geos::noding::snap
58 } // namespace geos::noding
59 } // namespace geos
60 
61 
62 
#define GEOS_DLL
Definition: export.h:28
Coordinate is the lightweight class used to store coordinates.
Definition: Coordinate.h:60
Basic namespace for all GEOS functionalities.
std::unique_ptr< index::kdtree::KdTree > snapPointIndex