GEOS 3.14.0dev
operation/overlayng/CoverageUnion.h
1/**********************************************************************
2 *
3 * GEOS - Geometry Engine Open Source
4 * http://geos.osgeo.org
5 *
6 * Copyright (C) 2021 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#pragma once
16
17#include <geos/export.h>
18#include <memory>
19
20// Forward declarations
21namespace geos {
22namespace geom {
23class Geometry;
24}
25}
26
27namespace geos { // geos.
28namespace operation { // geos.operation
29namespace overlayng { // geos.operation.overlayng
30
67class GEOS_DLL CoverageUnion {
69
70private:
71
73 {
74 // No instantiation for now
75 };
76
77
78
79public:
80
81 static constexpr double AREA_PCT_DIFF_TOL = 1e-6;
82
91 static std::unique_ptr<Geometry> geomunion(const Geometry* coverage);
92
93
94};
95
96
97} // namespace geos.operation.overlayng
98} // namespace geos.operation
99} // namespace geos
Basic implementation of Geometry, constructed and destructed by GeometryFactory.
Definition Geometry.h:197
Definition operation/overlayng/CoverageUnion.h:67
static std::unique_ptr< Geometry > geomunion(const Geometry *coverage)
Basic namespace for all GEOS functionalities.
Definition geos.h:39