geos/3.12.0

C++11 library for performing operations on two-dimensional vector geometries
Recipe info
2023-09-07

Available packages
Linux
Windows
macOS
macOS Apple Silicon

Install
Add the following line to your conanfile.txt:
[requires]
geos/3.12.0

Using geos

Note

If you are a new Conan user, we recommend reading the how to consume packages tutorial.

If you need additional assistance, please ask a question in the Conan Center Index repository.

Simplest use case consuming this recipe and assuming CMake as your local build tool:

[requires]
geos/3.12.0
[generators]
CMakeDeps
CMakeToolchain
[layout]
cmake_layout
from conan import ConanFile
from conan.tools.cmake import cmake_layout


class ExampleRecipe(ConanFile):
    settings = "os", "compiler", "build_type", "arch"
    generators = "CMakeDeps", "CMakeToolchain"

    def requirements(self):
        self.requires("geos/3.12.0")

    def layout(self):
        cmake_layout(self)

Now, you can run this Conan command to locally install (and build if necessary) this recipe and its dependencies (if any):

$ conan install conanfile.txt --build=missing

Useful information to take into account to consume this library:


These are the main declared targets:

  • CMake package name(s): geos
  • CMake target name(s): GEOS::geos_c
  • geos_c => GEOS::geos_c
    geos_cpp => GEOS::geos
    geos_cxx_flags => GEOS::geos_cxx_flags
    
  • pkg-config file name(s): geos.pc
  • geos_c => geos-geos_c.pc
    geos_cpp => geos-geos_cpp.pc
    geos_cxx_flags => geos-geos_cxx_flags.pc
    

A simple use case using the CMake file name and the global target:

# ...
find_package(geos REQUIRED)
# ...
target_link_libraries(YOUR_TARGET GEOS::geos_c)

These are all the available headers. Some of these ones might be non-public; make sure of it by visiting the geos homepage listed above:

#include "geos.h"
#include "geos/algorithm/Angle.h"
#include "geos/algorithm/Area.h"
#include "geos/algorithm/BoundaryNodeRule.h"
#include "geos/algorithm/CGAlgorithmsDD.h"
#include "geos/algorithm/CentralEndpointIntersector.h"
#include "geos/algorithm/Centroid.h"
#include "geos/algorithm/ConvexHull.h"
#include "geos/algorithm/Distance.h"
#include "geos/algorithm/HCoordinate.h"
#include "geos/algorithm/InteriorPointArea.h"
#include "geos/algorithm/InteriorPointLine.h"
#include "geos/algorithm/InteriorPointPoint.h"
#include "geos/algorithm/Interpolate.h"
#include "geos/algorithm/Intersection.h"
#include "geos/algorithm/Length.h"
#include "geos/algorithm/LineIntersector.h"
#include "geos/algorithm/MinimumAreaRectangle.h"
#include "geos/algorithm/MinimumBoundingCircle.h"
#include "geos/algorithm/MinimumDiameter.h"
#include "geos/algorithm/NotRepresentableException.h"
#include "geos/algorithm/Orientation.h"
#include "geos/algorithm/PointInRing.h"
#include "geos/algorithm/PointLocation.h"
#include "geos/algorithm/PointLocator.h"
#include "geos/algorithm/PolygonNodeTopology.h"
#include "geos/algorithm/RayCrossingCounter.h"
#include "geos/algorithm/Rectangle.h"
#include "geos/algorithm/RobustDeterminant.h"
#include "geos/algorithm/SimplePointInRing.h"
#include "geos/algorithm/construct/LargestEmptyCircle.h"
#include "geos/algorithm/construct/MaximumInscribedCircle.h"
#include "geos/algorithm/distance/DiscreteFrechetDistance.h"
#include "geos/algorithm/distance/DiscreteHausdorffDistance.h"
#include "geos/algorithm/distance/DistanceToPoint.h"
#include "geos/algorithm/distance/PointPairDistance.h"
#include "geos/algorithm/hull/ConcaveHull.h"
#include "geos/algorithm/hull/ConcaveHullOfPolygons.h"
#include "geos/algorithm/hull/HullTri.h"
#include "geos/algorithm/hull/HullTriangulation.h"
#include "geos/algorithm/locate/IndexedPointInAreaLocator.h"
#include "geos/algorithm/locate/PointOnGeometryLocator.h"
#include "geos/algorithm/locate/SimplePointInAreaLocator.h"
#include "geos/constants.h"
#include "geos/coverage/Corner.h"
#include "geos/coverage/CoverageBoundarySegmentFinder.h"
#include "geos/coverage/CoverageEdge.h"
#include "geos/coverage/CoverageGapFinder.h"
#include "geos/coverage/CoveragePolygonValidator.h"
#include "geos/coverage/CoverageRing.h"
#include "geos/coverage/CoverageRingEdges.h"
#include "geos/coverage/CoverageSimplifier.h"
#include "geos/coverage/CoverageUnion.h"
#include "geos/coverage/CoverageValidator.h"
#include "geos/coverage/InvalidSegmentDetector.h"
#include "geos/coverage/TPVWSimplifier.h"
#include "geos/coverage/VertexRingCounter.h"
#include "geos/edgegraph/EdgeGraph.h"
#include "geos/edgegraph/EdgeGraphBuilder.h"
#include "geos/edgegraph/HalfEdge.h"
#include "geos/edgegraph/MarkHalfEdge.h"
#include "geos/export.h"
#include "geos/geom.h"
#include "geos/geom/Coordinate.h"
#include "geos/geom/CoordinateFilter.h"
#include "geos/geom/CoordinateList.h"
#include "geos/geom/CoordinateSequence.h"
#include "geos/geom/CoordinateSequenceFilter.h"
#include "geos/geom/CoordinateSequenceIterator.h"
#include "geos/geom/CoordinateSequences.h"
#include "geos/geom/Dimension.h"
#include "geos/geom/Envelope.h"
#include "geos/geom/Geometry.h"
#include "geos/geom/GeometryCollection.h"
#include "geos/geom/GeometryComponentFilter.h"
#include "geos/geom/GeometryFactory.h"
#include "geos/geom/GeometryFilter.h"
#include "geos/geom/HeuristicOverlay.h"
#include "geos/geom/IntersectionMatrix.h"
#include "geos/geom/LineSegment.h"
#include "geos/geom/LineString.h"
#include "geos/geom/LinearRing.h"
#include "geos/geom/Location.h"
#include "geos/geom/MultiLineString.h"
#include "geos/geom/MultiPoint.h"
#include "geos/geom/MultiPolygon.h"
#include "geos/geom/Point.h"
#include "geos/geom/Polygon.h"
#include "geos/geom/Position.h"
#include "geos/geom/PrecisionModel.h"
#include "geos/geom/Quadrant.h"
#include "geos/geom/Triangle.h"
#include "geos/geom/prep/AbstractPreparedPolygonContains.h"
#include "geos/geom/prep/BasicPreparedGeometry.h"
#include "geos/geom/prep/PreparedGeometry.h"
#include "geos/geom/prep/PreparedGeometryFactory.h"
#include "geos/geom/prep/PreparedLineString.h"
#include "geos/geom/prep/PreparedLineStringDistance.h"
#include "geos/geom/prep/PreparedLineStringIntersects.h"
#include "geos/geom/prep/PreparedLineStringNearestPoints.h"
#include "geos/geom/prep/PreparedPoint.h"
#include "geos/geom/prep/PreparedPolygon.h"
#include "geos/geom/prep/PreparedPolygonContains.h"
#include "geos/geom/prep/PreparedPolygonContainsProperly.h"
#include "geos/geom/prep/PreparedPolygonCovers.h"
#include "geos/geom/prep/PreparedPolygonDistance.h"
#include "geos/geom/prep/PreparedPolygonIntersects.h"
#include "geos/geom/prep/PreparedPolygonPredicate.h"
#include "geos/geom/util/ComponentCoordinateExtracter.h"
#include "geos/geom/util/CoordinateOperation.h"
#include "geos/geom/util/Densifier.h"
#include "geos/geom/util/GeometryCombiner.h"
#include "geos/geom/util/GeometryEditor.h"
#include "geos/geom/util/GeometryEditorOperation.h"
#include "geos/geom/util/GeometryExtracter.h"
#include "geos/geom/util/GeometryFixer.h"
#include "geos/geom/util/GeometryMapper.h"
#include "geos/geom/util/GeometryTransformer.h"
#include "geos/geom/util/LinearComponentExtracter.h"
#include "geos/geom/util/NoOpGeometryOperation.h"
#include "geos/geom/util/PointExtracter.h"
#include "geos/geom/util/PolygonExtracter.h"
#include "geos/geom/util/ShortCircuitedGeometryVisitor.h"
#include "geos/geom/util/SineStarFactory.h"
#include "geos/geomgraph/Depth.h"
#include "geos/geomgraph/DirectedEdge.h"
#include "geos/geomgraph/DirectedEdgeStar.h"
#include "geos/geomgraph/Edge.h"
#include "geos/geomgraph/EdgeEnd.h"
#include "geos/geomgraph/EdgeEndStar.h"
#include "geos/geomgraph/EdgeIntersection.h"
#include "geos/geomgraph/EdgeIntersectionList.h"
#include "geos/geomgraph/EdgeList.h"
#include "geos/geomgraph/EdgeNodingValidator.h"
#include "geos/geomgraph/EdgeRing.h"
#include "geos/geomgraph/GeometryGraph.h"
#include "geos/geomgraph/GraphComponent.h"
#include "geos/geomgraph/Label.h"
#include "geos/geomgraph/Node.h"
#include "geos/geomgraph/NodeFactory.h"
#include "geos/geomgraph/NodeMap.h"
#include "geos/geomgraph/PlanarGraph.h"
#include "geos/geomgraph/TopologyLocation.h"
#include "geos/geomgraph/index/EdgeSetIntersector.h"
#include "geos/geomgraph/index/MonotoneChain.h"
#include "geos/geomgraph/index/MonotoneChainEdge.h"
#include "geos/geomgraph/index/MonotoneChainIndexer.h"
#include "geos/geomgraph/index/SegmentIntersector.h"
#include "geos/geomgraph/index/SimpleEdgeSetIntersector.h"
#include "geos/geomgraph/index/SimpleMCSweepLineIntersector.h"
#include "geos/geomgraph/index/SimpleSweepLineIntersector.h"
#include "geos/geomgraph/index/SweepLineEvent.h"
#include "geos/geomgraph/index/SweepLineEventObj.h"
#include "geos/geomgraph/index/SweepLineSegment.h"
#include "geos/index/ItemVisitor.h"
#include "geos/index/SpatialIndex.h"
#include "geos/index/VertexSequencePackedRtree.h"
#include "geos/index/bintree/Bintree.h"
#include "geos/index/bintree/Interval.h"
#include "geos/index/bintree/Key.h"
#include "geos/index/bintree/Node.h"
#include "geos/index/bintree/NodeBase.h"
#include "geos/index/bintree/Root.h"
#include "geos/index/chain/MonotoneChain.h"
#include "geos/index/chain/MonotoneChainBuilder.h"
#include "geos/index/chain/MonotoneChainOverlapAction.h"
#include "geos/index/chain/MonotoneChainSelectAction.h"
#include "geos/index/intervalrtree/IntervalRTreeBranchNode.h"
#include "geos/index/intervalrtree/IntervalRTreeLeafNode.h"
#include "geos/index/intervalrtree/IntervalRTreeNode.h"
#include "geos/index/intervalrtree/SortedPackedIntervalRTree.h"
#include "geos/index/kdtree/KdNode.h"
#include "geos/index/kdtree/KdNodeVisitor.h"
#include "geos/index/kdtree/KdTree.h"
#include "geos/index/quadtree/IntervalSize.h"
#include "geos/index/quadtree/Key.h"
#include "geos/index/quadtree/Node.h"
#include "geos/index/quadtree/NodeBase.h"
#include "geos/index/quadtree/Quadtree.h"
#include "geos/index/quadtree/Root.h"
#include "geos/index/strtree/AbstractNode.h"
#include "geos/index/strtree/AbstractSTRtree.h"
#include "geos/index/strtree/Boundable.h"
#include "geos/index/strtree/BoundablePair.h"
#include "geos/index/strtree/EnvelopeUtil.h"
#include "geos/index/strtree/GeometryItemDistance.h"
#include "geos/index/strtree/Interval.h"
#include "geos/index/strtree/ItemBoundable.h"
#include "geos/index/strtree/ItemDistance.h"
#include "geos/index/strtree/SIRtree.h"
#include "geos/index/strtree/STRtree.h"
#include "geos/index/strtree/SimpleSTRdistance.h"
#include "geos/index/strtree/SimpleSTRnode.h"
#include "geos/index/strtree/SimpleSTRtree.h"
#include "geos/index/strtree/TemplateSTRNode.h"
#include "geos/index/strtree/TemplateSTRNodePair.h"
#include "geos/index/strtree/TemplateSTRtree.h"
#include "geos/index/strtree/TemplateSTRtreeDistance.h"
#include "geos/index/sweepline/SweepLineEvent.h"
#include "geos/index/sweepline/SweepLineIndex.h"
#include "geos/index/sweepline/SweepLineInterval.h"
#include "geos/index/sweepline/SweepLineOverlapAction.h"
#include "geos/io/ByteOrderDataInStream.h"
#include "geos/io/ByteOrderValues.h"
#include "geos/io/CLocalizer.h"
#include "geos/io/CheckOrdinatesFilter.h"
#include "geos/io/GeoJSON.h"
#include "geos/io/GeoJSONReader.h"
#include "geos/io/GeoJSONWriter.h"
#include "geos/io/OrdinateSet.h"
#include "geos/io/ParseException.h"
#include "geos/io/StringTokenizer.h"
#include "geos/io/WKBConstants.h"
#include "geos/io/WKBReader.h"
#include "geos/io/WKBStreamReader.h"
#include "geos/io/WKBWriter.h"
#include "geos/io/WKTFileReader.h"
#include "geos/io/WKTReader.h"
#include "geos/io/WKTStreamReader.h"
#include "geos/io/WKTWriter.h"
#include "geos/io/Writer.h"
#include "geos/linearref/ExtractLineByLocation.h"
#include "geos/linearref/LengthIndexOfPoint.h"
#include "geos/linearref/LengthIndexedLine.h"
#include "geos/linearref/LengthLocationMap.h"
#include "geos/linearref/LinearGeometryBuilder.h"
#include "geos/linearref/LinearIterator.h"
#include "geos/linearref/LinearLocation.h"
#include "geos/linearref/LocationIndexOfLine.h"
#include "geos/linearref/LocationIndexOfPoint.h"
#include "geos/linearref/LocationIndexedLine.h"
#include "geos/math/DD.h"
#include "geos/namespaces.h"
#include "geos/noding/BasicSegmentString.h"
#include "geos/noding/BoundaryChainNoder.h"
#include "geos/noding/FastNodingValidator.h"
#include "geos/noding/FastSegmentSetIntersectionFinder.h"
#include "geos/noding/GeometryNoder.h"
#include "geos/noding/IntersectionAdder.h"
#include "geos/noding/IntersectionFinderAdder.h"
#include "geos/noding/IteratedNoder.h"
#include "geos/noding/MCIndexNoder.h"
#include "geos/noding/MCIndexSegmentSetMutualIntersector.h"
#include "geos/noding/NodableSegmentString.h"
#include "geos/noding/NodedSegmentString.h"
#include "geos/noding/Noder.h"
#include "geos/noding/NodingIntersectionFinder.h"
#include "geos/noding/NodingValidator.h"
#include "geos/noding/Octant.h"
#include "geos/noding/OrientedCoordinateArray.h"
#include "geos/noding/ScaledNoder.h"
#include "geos/noding/SegmentExtractingNoder.h"
#include "geos/noding/SegmentIntersectionDetector.h"
#include "geos/noding/SegmentIntersector.h"
#include "geos/noding/SegmentNode.h"
#include "geos/noding/SegmentNodeList.h"
#include "geos/noding/SegmentPointComparator.h"
#include "geos/noding/SegmentSetMutualIntersector.h"
#include "geos/noding/SegmentString.h"
#include "geos/noding/SegmentStringUtil.h"
#include "geos/noding/SimpleNoder.h"
#include "geos/noding/SinglePassNoder.h"
#include "geos/noding/ValidatingNoder.h"
#include "geos/noding/snap/SnappingIntersectionAdder.h"
#include "geos/noding/snap/SnappingNoder.h"
#include "geos/noding/snap/SnappingPointIndex.h"
#include "geos/noding/snapround/HotPixel.h"
#include "geos/noding/snapround/HotPixelIndex.h"
#include "geos/noding/snapround/MCIndexPointSnapper.h"
#include "geos/noding/snapround/MCIndexSnapRounder.h"
#include "geos/noding/snapround/SnapRoundingIntersectionAdder.h"
#include "geos/noding/snapround/SnapRoundingNoder.h"
#include "geos/operation/BoundaryOp.h"
#include "geos/operation/GeometryGraphOperation.h"
#include "geos/operation/buffer/BufferBuilder.h"
#include "geos/operation/buffer/BufferCurveSetBuilder.h"
#include "geos/operation/buffer/BufferInputLineSimplifier.h"
#include "geos/operation/buffer/BufferOp.h"
#include "geos/operation/buffer/BufferParameters.h"
#include "geos/operation/buffer/BufferSubgraph.h"
#include "geos/operation/buffer/OffsetCurve.h"
#include "geos/operation/buffer/OffsetCurveBuilder.h"
#include "geos/operation/buffer/OffsetCurveSection.h"
#include "geos/operation/buffer/OffsetSegmentGenerator.h"
#include "geos/operation/buffer/OffsetSegmentString.h"
#include "geos/operation/buffer/RightmostEdgeFinder.h"
#include "geos/operation/buffer/SegmentMCIndex.h"
#include "geos/operation/buffer/SubgraphDepthLocater.h"
#include "geos/operation/cluster/AbstractClusterFinder.h"
#include "geos/operation/cluster/Clusters.h"
#include "geos/operation/cluster/DBSCANClusterFinder.h"
#include "geos/operation/cluster/DisjointOperation.h"
#include "geos/operation/cluster/EnvelopeDistanceClusterFinder.h"
#include "geos/operation/cluster/EnvelopeIntersectsClusterFinder.h"
#include "geos/operation/cluster/GeometryDistanceClusterFinder.h"
#include "geos/operation/cluster/GeometryFlattener.h"
#include "geos/operation/cluster/GeometryIntersectsClusterFinder.h"
#include "geos/operation/cluster/UnionFind.h"
#include "geos/operation/distance/ConnectedElementLocationFilter.h"
#include "geos/operation/distance/ConnectedElementPointFilter.h"
#include "geos/operation/distance/DistanceOp.h"
#include "geos/operation/distance/FacetSequence.h"
#include "geos/operation/distance/FacetSequenceTreeBuilder.h"
#include "geos/operation/distance/GeometryLocation.h"
#include "geos/operation/distance/IndexedFacetDistance.h"
#include "geos/operation/intersection/Rectangle.h"
#include "geos/operation/intersection/RectangleIntersection.h"
#include "geos/operation/intersection/RectangleIntersectionBuilder.h"
#include "geos/operation/linemerge/EdgeString.h"
#include "geos/operation/linemerge/LineMergeDirectedEdge.h"
#include "geos/operation/linemerge/LineMergeEdge.h"
#include "geos/operation/linemerge/LineMergeGraph.h"
#include "geos/operation/linemerge/LineMerger.h"
#include "geos/operation/linemerge/LineSequencer.h"
#include "geos/operation/overlay/MaximalEdgeRing.h"
#include "geos/operation/overlay/MinimalEdgeRing.h"
#include "geos/operation/overlay/OverlayNodeFactory.h"
#include "geos/operation/overlay/PolygonBuilder.h"
#include "geos/operation/overlay/snap/GeometrySnapper.h"
#include "geos/operation/overlay/snap/LineStringSnapper.h"
#include "geos/operation/overlay/snap/SnapOverlayOp.h"
#include "geos/operation/overlay/validate/FuzzyPointLocator.h"
#include "geos/operation/overlay/validate/OffsetPointGenerator.h"
#include "geos/operation/overlay/validate/OverlayResultValidator.h"
#include "geos/operation/overlayng/CoverageUnion.h"
#include "geos/operation/overlayng/Edge.h"
#include "geos/operation/overlayng/EdgeKey.h"
#include "geos/operation/overlayng/EdgeMerger.h"
#include "geos/operation/overlayng/EdgeNodingBuilder.h"
#include "geos/operation/overlayng/EdgeSourceInfo.h"
#include "geos/operation/overlayng/ElevationModel.h"
#include "geos/operation/overlayng/IndexedPointOnLineLocator.h"
#include "geos/operation/overlayng/InputGeometry.h"
#include "geos/operation/overlayng/IntersectionPointBuilder.h"
#include "geos/operation/overlayng/LineBuilder.h"
#include "geos/operation/overlayng/LineLimiter.h"
#include "geos/operation/overlayng/MaximalEdgeRing.h"
#include "geos/operation/overlayng/OverlayEdge.h"
#include "geos/operation/overlayng/OverlayEdgeRing.h"
#include "geos/operation/overlayng/OverlayGraph.h"
#include "geos/operation/overlayng/OverlayLabel.h"
#include "geos/operation/overlayng/OverlayLabeller.h"
#include "geos/operation/overlayng/OverlayMixedPoints.h"
#include "geos/operation/overlayng/OverlayNG.h"
#include "geos/operation/overlayng/OverlayNGRobust.h"
#include "geos/operation/overlayng/OverlayPoints.h"
#include "geos/operation/overlayng/OverlayUtil.h"
#include "geos/operation/overlayng/PolygonBuilder.h"
#include "geos/operation/overlayng/PrecisionReducer.h"
#include "geos/operation/overlayng/PrecisionUtil.h"
#include "geos/operation/overlayng/RingClipper.h"
#include "geos/operation/overlayng/RobustClipEnvelopeComputer.h"
#include "geos/operation/overlayng/UnaryUnionNG.h"
#include "geos/operation/polygonize/BuildArea.h"
#include "geos/operation/polygonize/EdgeRing.h"
#include "geos/operation/polygonize/HoleAssigner.h"
#include "geos/operation/polygonize/PolygonizeDirectedEdge.h"
#include "geos/operation/polygonize/PolygonizeEdge.h"
#include "geos/operation/polygonize/PolygonizeGraph.h"
#include "geos/operation/polygonize/Polygonizer.h"
#include "geos/operation/predicate/RectangleContains.h"
#include "geos/operation/predicate/RectangleIntersects.h"
#include "geos/operation/predicate/SegmentIntersectionTester.h"
#include "geos/operation/relate/EdgeEndBuilder.h"
#include "geos/operation/relate/EdgeEndBundle.h"
#include "geos/operation/relate/EdgeEndBundleStar.h"
#include "geos/operation/relate/RelateComputer.h"
#include "geos/operation/relate/RelateNode.h"
#include "geos/operation/relate/RelateNodeFactory.h"
#include "geos/operation/relate/RelateNodeGraph.h"
#include "geos/operation/relate/RelateOp.h"
#include "geos/operation/sharedpaths/SharedPathsOp.h"
#include "geos/operation/union/CascadedPolygonUnion.h"
#include "geos/operation/union/CoverageUnion.h"
#include "geos/operation/union/DisjointSubsetUnion.h"
#include "geos/operation/union/OverlapUnion.h"
#include "geos/operation/union/PointGeometryUnion.h"
#include "geos/operation/union/UnaryUnionOp.h"
#include "geos/operation/union/UnionStrategy.h"
#include "geos/operation/valid/ConsistentAreaTester.h"
#include "geos/operation/valid/IndexedNestedHoleTester.h"
#include "geos/operation/valid/IndexedNestedPolygonTester.h"
#include "geos/operation/valid/IsSimpleOp.h"
#include "geos/operation/valid/IsValidOp.h"
#include "geos/operation/valid/MakeValid.h"
#include "geos/operation/valid/PolygonIntersectionAnalyzer.h"
#include "geos/operation/valid/PolygonRing.h"
#include "geos/operation/valid/PolygonRingSelfNode.h"
#include "geos/operation/valid/PolygonRingTouch.h"
#include "geos/operation/valid/PolygonTopologyAnalyzer.h"
#include "geos/operation/valid/RepeatedPointRemover.h"
#include "geos/operation/valid/RepeatedPointTester.h"
#include "geos/operation/valid/TopologyValidationError.h"
#include "geos/planargraph/DirectedEdge.h"
#include "geos/planargraph/DirectedEdgeStar.h"
#include "geos/planargraph/Edge.h"
#include "geos/planargraph/GraphComponent.h"
#include "geos/planargraph/Node.h"
#include "geos/planargraph/NodeMap.h"
#include "geos/planargraph/PlanarGraph.h"
#include "geos/planargraph/Subgraph.h"
#include "geos/planargraph/algorithm/ConnectedSubgraphFinder.h"
#include "geos/precision/CommonBits.h"
#include "geos/precision/CommonBitsOp.h"
#include "geos/precision/CommonBitsRemover.h"
#include "geos/precision/EnhancedPrecisionOp.h"
#include "geos/precision/GeometryPrecisionReducer.h"
#include "geos/precision/MinimumClearance.h"
#include "geos/precision/PointwisePrecisionReducerTransformer.h"
#include "geos/precision/PrecisionReducerCoordinateOperation.h"
#include "geos/precision/PrecisionReducerTransformer.h"
#include "geos/precision/SimpleGeometryPrecisionReducer.h"
#include "geos/profiler.h"
#include "geos/shape/fractal/HilbertCode.h"
#include "geos/shape/fractal/HilbertEncoder.h"
#include "geos/shape/fractal/MortonCode.h"
#include "geos/simplify/DouglasPeuckerLineSimplifier.h"
#include "geos/simplify/DouglasPeuckerSimplifier.h"
#include "geos/simplify/LineSegmentIndex.h"
#include "geos/simplify/LinkedLine.h"
#include "geos/simplify/LinkedRing.h"
#include "geos/simplify/PolygonHullSimplifier.h"
#include "geos/simplify/RingHull.h"
#include "geos/simplify/RingHullIndex.h"
#include "geos/simplify/TaggedLineSegment.h"
#include "geos/simplify/TaggedLineString.h"
#include "geos/simplify/TaggedLineStringSimplifier.h"
#include "geos/simplify/TaggedLinesSimplifier.h"
#include "geos/simplify/TopologyPreservingSimplifier.h"
#include "geos/triangulate/DelaunayTriangulationBuilder.h"
#include "geos/triangulate/IncrementalDelaunayTriangulator.h"
#include "geos/triangulate/VoronoiDiagramBuilder.h"
#include "geos/triangulate/polygon/ConstrainedDelaunayTriangulator.h"
#include "geos/triangulate/polygon/PolygonEarClipper.h"
#include "geos/triangulate/polygon/PolygonHoleJoiner.h"
#include "geos/triangulate/polygon/PolygonNoder.h"
#include "geos/triangulate/polygon/PolygonTriangulator.h"
#include "geos/triangulate/polygon/TriDelaunayImprover.h"
#include "geos/triangulate/quadedge/LastFoundQuadEdgeLocator.h"
#include "geos/triangulate/quadedge/LocateFailureException.h"
#include "geos/triangulate/quadedge/QuadEdge.h"
#include "geos/triangulate/quadedge/QuadEdgeLocator.h"
#include "geos/triangulate/quadedge/QuadEdgeQuartet.h"
#include "geos/triangulate/quadedge/QuadEdgeSubdivision.h"
#include "geos/triangulate/quadedge/TrianglePredicate.h"
#include "geos/triangulate/quadedge/TriangleVisitor.h"
#include "geos/triangulate/quadedge/Vertex.h"
#include "geos/triangulate/tri/Tri.h"
#include "geos/triangulate/tri/TriEdge.h"
#include "geos/triangulate/tri/TriList.h"
#include "geos/triangulate/tri/TriangulationBuilder.h"
#include "geos/unload.h"
#include "geos/util.h"
#include "geos/util/Assert.h"
#include "geos/util/AssertionFailedException.h"
#include "geos/util/CoordinateArrayFilter.h"
#include "geos/util/GEOSException.h"
#include "geos/util/GeometricShapeFactory.h"
#include "geos/util/IllegalArgumentException.h"
#include "geos/util/IllegalStateException.h"
#include "geos/util/Interrupt.h"
#include "geos/util/Machine.h"
#include "geos/util/TopologyException.h"
#include "geos/util/UniqueCoordinateArrayFilter.h"
#include "geos/util/UnsupportedOperationException.h"
#include "geos/util/math.h"
#include "geos/util/string.h"
#include "geos/vend/include_nlohmann_json.hpp"
#include "geos/vend/json.hpp"
#include "geos/version.h"
#include "geos_c.h"