@crossbind/port-geos-ios 2.0.0-beta.56 → 2.0.0-beta.60
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/prebuilt/ios-iphoneos-mt-release/bin/geos-config +2 -2
- package/dist/prebuilt/ios-iphoneos-mt-release/crossbind-source.fingerprint +1 -1
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/algorithm/Angle.h +28 -0
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/algorithm/CircularArcIntersector.h +146 -0
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/algorithm/CircularArcs.h +241 -2
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/algorithm/CurveToLineParams.h +76 -0
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/algorithm/Interpolate.h +17 -2
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/algorithm/LineIntersector.h +5 -1
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/algorithm/LineToCurveConverter.h +74 -0
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/algorithm/LineToCurveParams.h +79 -0
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/algorithm/PointLocator.h +10 -2
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/algorithm/RayCrossingCounter.h +1 -3
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/algorithm/distance/DiscreteHausdorffDistance.h +2 -2
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/algorithm/distance/DistanceToPoint.h +2 -1
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/coverage/CoverageCleaner.h +3 -3
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/coverage/CoverageEdge.h +6 -6
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/coverage/CoverageEdges.h +61 -0
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/coverage/CoveragePolygonValidator.h +0 -1
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/coverage/CoverageRing.h +1 -1
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/coverage/CoverageSimplifier.h +17 -7
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/coverage/TPVWSimplifier.h +10 -4
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/dissolve/LineDissolver.h +3 -1
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/edgegraph/HalfEdge.h +1 -1
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/geom/CircularArc.h +163 -133
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/geom/CircularString.h +30 -1
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/geom/CompoundCurve.h +23 -0
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/geom/Coordinate.h +108 -0
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/geom/CoordinateSequence.h +122 -2
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/geom/Curve.h +32 -0
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/geom/CurvePolygon.h +16 -1
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/geom/Envelope.h +26 -0
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/geom/Geometry.h +41 -3
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/geom/GeometryCollection.h +13 -0
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/geom/GeometryFactory.h +36 -1
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/geom/LineSegment.h +42 -0
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/geom/LineString.h +19 -0
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/geom/LinearRing.h +3 -0
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/geom/MultiCurve.h +13 -0
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/geom/MultiLineString.h +11 -0
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/geom/MultiPolygon.h +4 -1
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/geom/MultiSurface.h +12 -0
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/geom/Point.h +4 -0
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/geom/Polygon.h +11 -1
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/geom/Quadrant.h +2 -2
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/geom/SimpleCurve.h +17 -26
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/geom/Surface.h +4 -0
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/geom/SurfaceImpl.h +3 -6
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/geom/util/CurveBuilder.h +89 -0
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/geom/util/GeometryTransformer.h +25 -0
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/geom/util/LinealExtracter.h +51 -0
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/geom/util/SimpleCurveExtracter.h +52 -0
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/geom/util/SurfaceExtracter.h +60 -0
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/geomgraph/EdgeNodingValidator.h +2 -9
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/index/intervalrtree/IntervalRTreeLeafNode.h +2 -1
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/index/intervalrtree/IntervalRTreeNode.h +2 -1
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/index/intervalrtree/SortedPackedIntervalRTree.h +2 -1
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/index/kdtree/KdNode.h +5 -5
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/index/kdtree/KdNodeVisitor.h +1 -0
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/index/kdtree/KdTree.h +21 -21
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/io/GeoJSONReader.h +1 -0
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/io/WKBReader.h +12 -0
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/io/WKTReader.h +2 -0
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/linearref/LengthIndexedLine.h +4 -5
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/linearref/LinearLocation.h +3 -1
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/math/DD.h +3 -0
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/noding/ArcIntersectionAdder.h +44 -0
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/noding/ArcIntersector.h +44 -0
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/noding/ArcNoder.h +53 -0
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/noding/ArcString.h +72 -0
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/noding/BasicSegmentString.h +1 -1
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/noding/BoundaryChainNoder.h +21 -22
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/noding/DirectionIndependentArcString.h +52 -0
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/noding/FastNodingValidator.h +6 -3
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/noding/GeometryNoder.h +31 -10
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/noding/IteratedNoder.h +10 -6
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/noding/MCIndexNoder.h +5 -6
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/noding/NodableArcString.h +44 -0
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/noding/NodablePath.h +40 -0
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/noding/NodableSegmentString.h +1 -1
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/noding/NodedSegmentString.h +9 -14
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/noding/Noder.h +13 -9
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/noding/NodingValidator.h +8 -4
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/noding/Octant.h +4 -4
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/noding/PathString.h +76 -0
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/noding/ScaledNoder.h +4 -4
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/noding/SegmentExtractingNoder.h +9 -7
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/noding/SegmentNodeList.h +3 -3
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/noding/SegmentPointComparator.h +2 -2
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/noding/SegmentString.h +24 -38
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/noding/SegmentStringUtil.h +2 -2
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/noding/SimpleNoder.h +13 -18
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/noding/SinglePassNoder.h +0 -21
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/noding/ValidatingNoder.h +11 -4
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/noding/snap/SnappingNoder.h +9 -8
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/noding/snapround/MCIndexSnapRounder.h +8 -8
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/noding/snapround/SnapRoundingNoder.h +5 -5
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/operation/BoundaryOp.h +6 -3
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/operation/buffer/BufferCurveSetBuilder.h +2 -2
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/operation/buffer/OffsetCurveBuilder.h +4 -5
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/operation/buffer/OffsetSegmentGenerator.h +4 -3
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/operation/distance/DistanceOp.h +32 -5
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/operation/distance/FacetSequence.h +25 -15
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/operation/distance/FacetSequenceTreeBuilder.h +14 -5
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/operation/distance/GeometryLocation.h +5 -5
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/operation/distance/IndexedFacetDistance.h +3 -6
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/operation/grid/Cell.h +12 -4
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/operation/grid/Grid.h +78 -21
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/operation/grid/GridIntersection.h +16 -5
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/operation/grid/PerimeterDistance.h +13 -2
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/operation/grid/Side.h +23 -2
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/operation/grid/Traversal.h +13 -4
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/operation/grid/TraversalAreas.h +4 -2
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/operation/linemerge/EdgeString.h +3 -3
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/operation/linemerge/LineMergeDirectedEdge.h +1 -1
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/operation/linemerge/LineMergeEdge.h +6 -6
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/operation/linemerge/LineMergeGraph.h +17 -8
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/operation/linemerge/LineMerger.h +6 -4
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/operation/overlay/snap/GeometrySnapper.h +4 -6
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/operation/overlayng/Edge.h +26 -36
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/operation/overlayng/EdgeKey.h +1 -1
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/operation/overlayng/EdgeNodingBuilder.h +36 -24
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/operation/overlayng/InputGeometry.h +2 -1
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/operation/overlayng/LineBuilder.h +4 -4
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/operation/overlayng/LineLimiter.h +13 -5
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/operation/overlayng/OverlayEdge.h +16 -13
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/operation/overlayng/OverlayEdgeRing.h +21 -16
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/operation/overlayng/OverlayGraph.h +4 -5
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/operation/overlayng/OverlayMixedPoints.h +12 -5
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/operation/overlayng/OverlayUtil.h +10 -7
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/operation/overlayng/PolygonBuilder.h +3 -3
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/operation/overlayng/RingClipper.h +5 -4
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/operation/polygonize/EdgeRing.h +26 -44
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/operation/polygonize/PolygonizeDirectedEdge.h +1 -1
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/operation/polygonize/PolygonizeEdge.h +4 -4
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/operation/polygonize/PolygonizeGraph.h +16 -7
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/operation/polygonize/Polygonizer.h +39 -27
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/operation/relateng/RelateGeometry.h +4 -5
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/operation/relateng/RelateSegmentString.h +8 -8
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/operation/spanning/SpanningTree.h +59 -0
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/operation/split/GeometrySplitter.h +64 -0
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/operation/split/SplitLinealAtPoint.h +90 -0
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/operation/union/CascadedPolygonUnion.h +33 -25
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/operation/union/UnaryUnionOp.h +12 -23
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/operation/valid/IsSimpleOp.h +2 -2
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/operation/valid/PolygonTopologyAnalyzer.h +0 -5
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/operation/valid/RepeatedPointRemover.h +7 -0
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/planargraph/DirectedEdge.h +13 -11
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/planargraph/DirectedEdgeStar.h +6 -6
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/planargraph/Edge.h +2 -1
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/planargraph/Node.h +15 -34
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/planargraph/NodeMap.h +3 -3
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/planargraph/PlanarGraph.h +1 -1
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/precision/GeometryPrecisionReducer.h +1 -3
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/precision/PointwisePrecisionReducerTransformer.h +1 -1
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/precision/PrecisionReducerTransformer.h +2 -2
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/shape/GeometricShapeBuilder.h +83 -0
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/shape/random/RandomPointsBuilder.h +65 -0
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/simplify/DouglasPeuckerSimplifier.h +1 -1
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/triangulate/polygon/PolygonHoleJoiner.h +3 -3
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/triangulate/polygon/PolygonNoder.h +5 -5
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/triangulate/quadedge/TrianglePredicate.h +1 -1
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/util/Assert.h +7 -0
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/util/Progress.h +84 -0
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/util/TopologyException.h +6 -0
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos/version.h +4 -4
- package/dist/prebuilt/ios-iphoneos-mt-release/include/geos_c.h +1181 -152
- package/dist/prebuilt/ios-iphoneos-mt-release/lib/cmake/GEOS/geos-config-version.cmake +1 -1
- package/dist/prebuilt/ios-iphoneos-mt-release/lib/cmake/GEOS/geos-targets.cmake +2 -2
- package/dist/prebuilt/ios-iphoneos-mt-release/lib/libgeos.a +0 -0
- package/dist/prebuilt/ios-iphoneos-mt-release/lib/libgeos_c.a +0 -0
- package/dist/prebuilt/ios-iphoneos-mt-release/lib/pkgconfig/geos.pc +1 -1
- package/dist/prebuilt/ios-iphonesimulator-mt-release/bin/geos-config +2 -2
- package/dist/prebuilt/ios-iphonesimulator-mt-release/crossbind-source.fingerprint +1 -1
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/algorithm/Angle.h +28 -0
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/algorithm/CircularArcIntersector.h +146 -0
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/algorithm/CircularArcs.h +241 -2
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/algorithm/CurveToLineParams.h +76 -0
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/algorithm/Interpolate.h +17 -2
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/algorithm/LineIntersector.h +5 -1
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/algorithm/LineToCurveConverter.h +74 -0
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/algorithm/LineToCurveParams.h +79 -0
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/algorithm/PointLocator.h +10 -2
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/algorithm/RayCrossingCounter.h +1 -3
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/algorithm/distance/DiscreteHausdorffDistance.h +2 -2
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/algorithm/distance/DistanceToPoint.h +2 -1
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/coverage/CoverageCleaner.h +3 -3
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/coverage/CoverageEdge.h +6 -6
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/coverage/CoverageEdges.h +61 -0
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/coverage/CoveragePolygonValidator.h +0 -1
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/coverage/CoverageRing.h +1 -1
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/coverage/CoverageSimplifier.h +17 -7
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/coverage/TPVWSimplifier.h +10 -4
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/dissolve/LineDissolver.h +3 -1
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/edgegraph/HalfEdge.h +1 -1
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/geom/CircularArc.h +163 -133
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/geom/CircularString.h +30 -1
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/geom/CompoundCurve.h +23 -0
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/geom/Coordinate.h +108 -0
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/geom/CoordinateSequence.h +122 -2
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/geom/Curve.h +32 -0
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/geom/CurvePolygon.h +16 -1
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/geom/Envelope.h +26 -0
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/geom/Geometry.h +41 -3
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/geom/GeometryCollection.h +13 -0
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/geom/GeometryFactory.h +36 -1
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/geom/LineSegment.h +42 -0
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/geom/LineString.h +19 -0
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/geom/LinearRing.h +3 -0
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/geom/MultiCurve.h +13 -0
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/geom/MultiLineString.h +11 -0
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/geom/MultiPolygon.h +4 -1
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/geom/MultiSurface.h +12 -0
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/geom/Point.h +4 -0
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/geom/Polygon.h +11 -1
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/geom/Quadrant.h +2 -2
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/geom/SimpleCurve.h +17 -26
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/geom/Surface.h +4 -0
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/geom/SurfaceImpl.h +3 -6
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/geom/util/CurveBuilder.h +89 -0
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/geom/util/GeometryTransformer.h +25 -0
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/geom/util/LinealExtracter.h +51 -0
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/geom/util/SimpleCurveExtracter.h +52 -0
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/geom/util/SurfaceExtracter.h +60 -0
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/geomgraph/EdgeNodingValidator.h +2 -9
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/index/intervalrtree/IntervalRTreeLeafNode.h +2 -1
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/index/intervalrtree/IntervalRTreeNode.h +2 -1
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/index/intervalrtree/SortedPackedIntervalRTree.h +2 -1
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/index/kdtree/KdNode.h +5 -5
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/index/kdtree/KdNodeVisitor.h +1 -0
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/index/kdtree/KdTree.h +21 -21
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/io/GeoJSONReader.h +1 -0
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/io/WKBReader.h +12 -0
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/io/WKTReader.h +2 -0
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/linearref/LengthIndexedLine.h +4 -5
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/linearref/LinearLocation.h +3 -1
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/math/DD.h +3 -0
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/noding/ArcIntersectionAdder.h +44 -0
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/noding/ArcIntersector.h +44 -0
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/noding/ArcNoder.h +53 -0
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/noding/ArcString.h +72 -0
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/noding/BasicSegmentString.h +1 -1
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/noding/BoundaryChainNoder.h +21 -22
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/noding/DirectionIndependentArcString.h +52 -0
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/noding/FastNodingValidator.h +6 -3
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/noding/GeometryNoder.h +31 -10
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/noding/IteratedNoder.h +10 -6
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/noding/MCIndexNoder.h +5 -6
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/noding/NodableArcString.h +44 -0
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/noding/NodablePath.h +40 -0
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/noding/NodableSegmentString.h +1 -1
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/noding/NodedSegmentString.h +9 -14
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/noding/Noder.h +13 -9
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/noding/NodingValidator.h +8 -4
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/noding/Octant.h +4 -4
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/noding/PathString.h +76 -0
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/noding/ScaledNoder.h +4 -4
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/noding/SegmentExtractingNoder.h +9 -7
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/noding/SegmentNodeList.h +3 -3
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/noding/SegmentPointComparator.h +2 -2
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/noding/SegmentString.h +24 -38
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/noding/SegmentStringUtil.h +2 -2
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/noding/SimpleNoder.h +13 -18
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/noding/SinglePassNoder.h +0 -21
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/noding/ValidatingNoder.h +11 -4
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/noding/snap/SnappingNoder.h +9 -8
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/noding/snapround/MCIndexSnapRounder.h +8 -8
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/noding/snapround/SnapRoundingNoder.h +5 -5
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/operation/BoundaryOp.h +6 -3
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/operation/buffer/BufferCurveSetBuilder.h +2 -2
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/operation/buffer/OffsetCurveBuilder.h +4 -5
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/operation/buffer/OffsetSegmentGenerator.h +4 -3
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/operation/distance/DistanceOp.h +32 -5
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/operation/distance/FacetSequence.h +25 -15
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/operation/distance/FacetSequenceTreeBuilder.h +14 -5
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/operation/distance/GeometryLocation.h +5 -5
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/operation/distance/IndexedFacetDistance.h +3 -6
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/operation/grid/Cell.h +12 -4
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/operation/grid/Grid.h +78 -21
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/operation/grid/GridIntersection.h +16 -5
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/operation/grid/PerimeterDistance.h +13 -2
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/operation/grid/Side.h +23 -2
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/operation/grid/Traversal.h +13 -4
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/operation/grid/TraversalAreas.h +4 -2
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/operation/linemerge/EdgeString.h +3 -3
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/operation/linemerge/LineMergeDirectedEdge.h +1 -1
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/operation/linemerge/LineMergeEdge.h +6 -6
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/operation/linemerge/LineMergeGraph.h +17 -8
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/operation/linemerge/LineMerger.h +6 -4
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/operation/overlay/snap/GeometrySnapper.h +4 -6
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/operation/overlayng/Edge.h +26 -36
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/operation/overlayng/EdgeKey.h +1 -1
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/operation/overlayng/EdgeNodingBuilder.h +36 -24
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/operation/overlayng/InputGeometry.h +2 -1
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/operation/overlayng/LineBuilder.h +4 -4
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/operation/overlayng/LineLimiter.h +13 -5
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/operation/overlayng/OverlayEdge.h +16 -13
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/operation/overlayng/OverlayEdgeRing.h +21 -16
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/operation/overlayng/OverlayGraph.h +4 -5
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/operation/overlayng/OverlayMixedPoints.h +12 -5
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/operation/overlayng/OverlayUtil.h +10 -7
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/operation/overlayng/PolygonBuilder.h +3 -3
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/operation/overlayng/RingClipper.h +5 -4
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/operation/polygonize/EdgeRing.h +26 -44
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/operation/polygonize/PolygonizeDirectedEdge.h +1 -1
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/operation/polygonize/PolygonizeEdge.h +4 -4
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/operation/polygonize/PolygonizeGraph.h +16 -7
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/operation/polygonize/Polygonizer.h +39 -27
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/operation/relateng/RelateGeometry.h +4 -5
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/operation/relateng/RelateSegmentString.h +8 -8
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/operation/spanning/SpanningTree.h +59 -0
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/operation/split/GeometrySplitter.h +64 -0
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/operation/split/SplitLinealAtPoint.h +90 -0
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/operation/union/CascadedPolygonUnion.h +33 -25
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/operation/union/UnaryUnionOp.h +12 -23
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/operation/valid/IsSimpleOp.h +2 -2
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/operation/valid/PolygonTopologyAnalyzer.h +0 -5
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/operation/valid/RepeatedPointRemover.h +7 -0
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/planargraph/DirectedEdge.h +13 -11
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/planargraph/DirectedEdgeStar.h +6 -6
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/planargraph/Edge.h +2 -1
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/planargraph/Node.h +15 -34
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/planargraph/NodeMap.h +3 -3
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/planargraph/PlanarGraph.h +1 -1
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/precision/GeometryPrecisionReducer.h +1 -3
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/precision/PointwisePrecisionReducerTransformer.h +1 -1
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/precision/PrecisionReducerTransformer.h +2 -2
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/shape/GeometricShapeBuilder.h +83 -0
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/shape/random/RandomPointsBuilder.h +65 -0
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/simplify/DouglasPeuckerSimplifier.h +1 -1
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/triangulate/polygon/PolygonHoleJoiner.h +3 -3
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/triangulate/polygon/PolygonNoder.h +5 -5
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/triangulate/quadedge/TrianglePredicate.h +1 -1
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/util/Assert.h +7 -0
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/util/Progress.h +84 -0
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/util/TopologyException.h +6 -0
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos/version.h +4 -4
- package/dist/prebuilt/ios-iphonesimulator-mt-release/include/geos_c.h +1181 -152
- package/dist/prebuilt/ios-iphonesimulator-mt-release/lib/cmake/GEOS/geos-config-version.cmake +1 -1
- package/dist/prebuilt/ios-iphonesimulator-mt-release/lib/cmake/GEOS/geos-targets.cmake +2 -2
- package/dist/prebuilt/ios-iphonesimulator-mt-release/lib/libgeos.a +0 -0
- package/dist/prebuilt/ios-iphonesimulator-mt-release/lib/libgeos_c.a +0 -0
- package/dist/prebuilt/ios-iphonesimulator-mt-release/lib/pkgconfig/geos.pc +1 -1
- package/geos.xcframework/Info.plist +4 -4
- package/geos.xcframework/ios-arm64/Headers/geos/algorithm/Angle.h +28 -0
- package/geos.xcframework/ios-arm64/Headers/geos/algorithm/CircularArcIntersector.h +146 -0
- package/geos.xcframework/ios-arm64/Headers/geos/algorithm/CircularArcs.h +241 -2
- package/geos.xcframework/ios-arm64/Headers/geos/algorithm/CurveToLineParams.h +76 -0
- package/geos.xcframework/ios-arm64/Headers/geos/algorithm/Interpolate.h +17 -2
- package/geos.xcframework/ios-arm64/Headers/geos/algorithm/LineIntersector.h +5 -1
- package/geos.xcframework/ios-arm64/Headers/geos/algorithm/LineToCurveConverter.h +74 -0
- package/geos.xcframework/ios-arm64/Headers/geos/algorithm/LineToCurveParams.h +79 -0
- package/geos.xcframework/ios-arm64/Headers/geos/algorithm/PointLocator.h +10 -2
- package/geos.xcframework/ios-arm64/Headers/geos/algorithm/RayCrossingCounter.h +1 -3
- package/geos.xcframework/ios-arm64/Headers/geos/algorithm/distance/DiscreteHausdorffDistance.h +2 -2
- package/geos.xcframework/ios-arm64/Headers/geos/algorithm/distance/DistanceToPoint.h +2 -1
- package/geos.xcframework/ios-arm64/Headers/geos/coverage/CoverageCleaner.h +3 -3
- package/geos.xcframework/ios-arm64/Headers/geos/coverage/CoverageEdge.h +6 -6
- package/geos.xcframework/ios-arm64/Headers/geos/coverage/CoverageEdges.h +61 -0
- package/geos.xcframework/ios-arm64/Headers/geos/coverage/CoveragePolygonValidator.h +0 -1
- package/geos.xcframework/ios-arm64/Headers/geos/coverage/CoverageRing.h +1 -1
- package/geos.xcframework/ios-arm64/Headers/geos/coverage/CoverageSimplifier.h +17 -7
- package/geos.xcframework/ios-arm64/Headers/geos/coverage/TPVWSimplifier.h +10 -4
- package/geos.xcframework/ios-arm64/Headers/geos/dissolve/LineDissolver.h +3 -1
- package/geos.xcframework/ios-arm64/Headers/geos/edgegraph/HalfEdge.h +1 -1
- package/geos.xcframework/ios-arm64/Headers/geos/geom/CircularArc.h +163 -133
- package/geos.xcframework/ios-arm64/Headers/geos/geom/CircularString.h +30 -1
- package/geos.xcframework/ios-arm64/Headers/geos/geom/CompoundCurve.h +23 -0
- package/geos.xcframework/ios-arm64/Headers/geos/geom/Coordinate.h +108 -0
- package/geos.xcframework/ios-arm64/Headers/geos/geom/CoordinateSequence.h +122 -2
- package/geos.xcframework/ios-arm64/Headers/geos/geom/Curve.h +32 -0
- package/geos.xcframework/ios-arm64/Headers/geos/geom/CurvePolygon.h +16 -1
- package/geos.xcframework/ios-arm64/Headers/geos/geom/Envelope.h +26 -0
- package/geos.xcframework/ios-arm64/Headers/geos/geom/Geometry.h +41 -3
- package/geos.xcframework/ios-arm64/Headers/geos/geom/GeometryCollection.h +13 -0
- package/geos.xcframework/ios-arm64/Headers/geos/geom/GeometryFactory.h +36 -1
- package/geos.xcframework/ios-arm64/Headers/geos/geom/LineSegment.h +42 -0
- package/geos.xcframework/ios-arm64/Headers/geos/geom/LineString.h +19 -0
- package/geos.xcframework/ios-arm64/Headers/geos/geom/LinearRing.h +3 -0
- package/geos.xcframework/ios-arm64/Headers/geos/geom/MultiCurve.h +13 -0
- package/geos.xcframework/ios-arm64/Headers/geos/geom/MultiLineString.h +11 -0
- package/geos.xcframework/ios-arm64/Headers/geos/geom/MultiPolygon.h +4 -1
- package/geos.xcframework/ios-arm64/Headers/geos/geom/MultiSurface.h +12 -0
- package/geos.xcframework/ios-arm64/Headers/geos/geom/Point.h +4 -0
- package/geos.xcframework/ios-arm64/Headers/geos/geom/Polygon.h +11 -1
- package/geos.xcframework/ios-arm64/Headers/geos/geom/Quadrant.h +2 -2
- package/geos.xcframework/ios-arm64/Headers/geos/geom/SimpleCurve.h +17 -26
- package/geos.xcframework/ios-arm64/Headers/geos/geom/Surface.h +4 -0
- package/geos.xcframework/ios-arm64/Headers/geos/geom/SurfaceImpl.h +3 -6
- package/geos.xcframework/ios-arm64/Headers/geos/geom/util/CurveBuilder.h +89 -0
- package/geos.xcframework/ios-arm64/Headers/geos/geom/util/GeometryTransformer.h +25 -0
- package/geos.xcframework/ios-arm64/Headers/geos/geom/util/LinealExtracter.h +51 -0
- package/geos.xcframework/ios-arm64/Headers/geos/geom/util/SimpleCurveExtracter.h +52 -0
- package/geos.xcframework/ios-arm64/Headers/geos/geom/util/SurfaceExtracter.h +60 -0
- package/geos.xcframework/ios-arm64/Headers/geos/geomgraph/EdgeNodingValidator.h +2 -9
- package/geos.xcframework/ios-arm64/Headers/geos/index/intervalrtree/IntervalRTreeLeafNode.h +2 -1
- package/geos.xcframework/ios-arm64/Headers/geos/index/intervalrtree/IntervalRTreeNode.h +2 -1
- package/geos.xcframework/ios-arm64/Headers/geos/index/intervalrtree/SortedPackedIntervalRTree.h +2 -1
- package/geos.xcframework/ios-arm64/Headers/geos/index/kdtree/KdNode.h +5 -5
- package/geos.xcframework/ios-arm64/Headers/geos/index/kdtree/KdNodeVisitor.h +1 -0
- package/geos.xcframework/ios-arm64/Headers/geos/index/kdtree/KdTree.h +21 -21
- package/geos.xcframework/ios-arm64/Headers/geos/io/GeoJSONReader.h +1 -0
- package/geos.xcframework/ios-arm64/Headers/geos/io/WKBReader.h +12 -0
- package/geos.xcframework/ios-arm64/Headers/geos/io/WKTReader.h +2 -0
- package/geos.xcframework/ios-arm64/Headers/geos/linearref/LengthIndexedLine.h +4 -5
- package/geos.xcframework/ios-arm64/Headers/geos/linearref/LinearLocation.h +3 -1
- package/geos.xcframework/ios-arm64/Headers/geos/math/DD.h +3 -0
- package/geos.xcframework/ios-arm64/Headers/geos/noding/ArcIntersectionAdder.h +44 -0
- package/geos.xcframework/ios-arm64/Headers/geos/noding/ArcIntersector.h +44 -0
- package/geos.xcframework/ios-arm64/Headers/geos/noding/ArcNoder.h +53 -0
- package/geos.xcframework/ios-arm64/Headers/geos/noding/ArcString.h +72 -0
- package/geos.xcframework/ios-arm64/Headers/geos/noding/BasicSegmentString.h +1 -1
- package/geos.xcframework/ios-arm64/Headers/geos/noding/BoundaryChainNoder.h +21 -22
- package/geos.xcframework/ios-arm64/Headers/geos/noding/DirectionIndependentArcString.h +52 -0
- package/geos.xcframework/ios-arm64/Headers/geos/noding/FastNodingValidator.h +6 -3
- package/geos.xcframework/ios-arm64/Headers/geos/noding/GeometryNoder.h +31 -10
- package/geos.xcframework/ios-arm64/Headers/geos/noding/IteratedNoder.h +10 -6
- package/geos.xcframework/ios-arm64/Headers/geos/noding/MCIndexNoder.h +5 -6
- package/geos.xcframework/ios-arm64/Headers/geos/noding/NodableArcString.h +44 -0
- package/geos.xcframework/ios-arm64/Headers/geos/noding/NodablePath.h +40 -0
- package/geos.xcframework/ios-arm64/Headers/geos/noding/NodableSegmentString.h +1 -1
- package/geos.xcframework/ios-arm64/Headers/geos/noding/NodedSegmentString.h +9 -14
- package/geos.xcframework/ios-arm64/Headers/geos/noding/Noder.h +13 -9
- package/geos.xcframework/ios-arm64/Headers/geos/noding/NodingValidator.h +8 -4
- package/geos.xcframework/ios-arm64/Headers/geos/noding/Octant.h +4 -4
- package/geos.xcframework/ios-arm64/Headers/geos/noding/PathString.h +76 -0
- package/geos.xcframework/ios-arm64/Headers/geos/noding/ScaledNoder.h +4 -4
- package/geos.xcframework/ios-arm64/Headers/geos/noding/SegmentExtractingNoder.h +9 -7
- package/geos.xcframework/ios-arm64/Headers/geos/noding/SegmentNodeList.h +3 -3
- package/geos.xcframework/ios-arm64/Headers/geos/noding/SegmentPointComparator.h +2 -2
- package/geos.xcframework/ios-arm64/Headers/geos/noding/SegmentString.h +24 -38
- package/geos.xcframework/ios-arm64/Headers/geos/noding/SegmentStringUtil.h +2 -2
- package/geos.xcframework/ios-arm64/Headers/geos/noding/SimpleNoder.h +13 -18
- package/geos.xcframework/ios-arm64/Headers/geos/noding/SinglePassNoder.h +0 -21
- package/geos.xcframework/ios-arm64/Headers/geos/noding/ValidatingNoder.h +11 -4
- package/geos.xcframework/ios-arm64/Headers/geos/noding/snap/SnappingNoder.h +9 -8
- package/geos.xcframework/ios-arm64/Headers/geos/noding/snapround/MCIndexSnapRounder.h +8 -8
- package/geos.xcframework/ios-arm64/Headers/geos/noding/snapround/SnapRoundingNoder.h +5 -5
- package/geos.xcframework/ios-arm64/Headers/geos/operation/BoundaryOp.h +6 -3
- package/geos.xcframework/ios-arm64/Headers/geos/operation/buffer/BufferCurveSetBuilder.h +2 -2
- package/geos.xcframework/ios-arm64/Headers/geos/operation/buffer/OffsetCurveBuilder.h +4 -5
- package/geos.xcframework/ios-arm64/Headers/geos/operation/buffer/OffsetSegmentGenerator.h +4 -3
- package/geos.xcframework/ios-arm64/Headers/geos/operation/distance/DistanceOp.h +32 -5
- package/geos.xcframework/ios-arm64/Headers/geos/operation/distance/FacetSequence.h +25 -15
- package/geos.xcframework/ios-arm64/Headers/geos/operation/distance/FacetSequenceTreeBuilder.h +14 -5
- package/geos.xcframework/ios-arm64/Headers/geos/operation/distance/GeometryLocation.h +5 -5
- package/geos.xcframework/ios-arm64/Headers/geos/operation/distance/IndexedFacetDistance.h +3 -6
- package/geos.xcframework/ios-arm64/Headers/geos/operation/grid/Cell.h +12 -4
- package/geos.xcframework/ios-arm64/Headers/geos/operation/grid/Grid.h +78 -21
- package/geos.xcframework/ios-arm64/Headers/geos/operation/grid/GridIntersection.h +16 -5
- package/geos.xcframework/ios-arm64/Headers/geos/operation/grid/PerimeterDistance.h +13 -2
- package/geos.xcframework/ios-arm64/Headers/geos/operation/grid/Side.h +23 -2
- package/geos.xcframework/ios-arm64/Headers/geos/operation/grid/Traversal.h +13 -4
- package/geos.xcframework/ios-arm64/Headers/geos/operation/grid/TraversalAreas.h +4 -2
- package/geos.xcframework/ios-arm64/Headers/geos/operation/linemerge/EdgeString.h +3 -3
- package/geos.xcframework/ios-arm64/Headers/geos/operation/linemerge/LineMergeDirectedEdge.h +1 -1
- package/geos.xcframework/ios-arm64/Headers/geos/operation/linemerge/LineMergeEdge.h +6 -6
- package/geos.xcframework/ios-arm64/Headers/geos/operation/linemerge/LineMergeGraph.h +17 -8
- package/geos.xcframework/ios-arm64/Headers/geos/operation/linemerge/LineMerger.h +6 -4
- package/geos.xcframework/ios-arm64/Headers/geos/operation/overlay/snap/GeometrySnapper.h +4 -6
- package/geos.xcframework/ios-arm64/Headers/geos/operation/overlayng/Edge.h +26 -36
- package/geos.xcframework/ios-arm64/Headers/geos/operation/overlayng/EdgeKey.h +1 -1
- package/geos.xcframework/ios-arm64/Headers/geos/operation/overlayng/EdgeNodingBuilder.h +36 -24
- package/geos.xcframework/ios-arm64/Headers/geos/operation/overlayng/InputGeometry.h +2 -1
- package/geos.xcframework/ios-arm64/Headers/geos/operation/overlayng/LineBuilder.h +4 -4
- package/geos.xcframework/ios-arm64/Headers/geos/operation/overlayng/LineLimiter.h +13 -5
- package/geos.xcframework/ios-arm64/Headers/geos/operation/overlayng/OverlayEdge.h +16 -13
- package/geos.xcframework/ios-arm64/Headers/geos/operation/overlayng/OverlayEdgeRing.h +21 -16
- package/geos.xcframework/ios-arm64/Headers/geos/operation/overlayng/OverlayGraph.h +4 -5
- package/geos.xcframework/ios-arm64/Headers/geos/operation/overlayng/OverlayMixedPoints.h +12 -5
- package/geos.xcframework/ios-arm64/Headers/geos/operation/overlayng/OverlayUtil.h +10 -7
- package/geos.xcframework/ios-arm64/Headers/geos/operation/overlayng/PolygonBuilder.h +3 -3
- package/geos.xcframework/ios-arm64/Headers/geos/operation/overlayng/RingClipper.h +5 -4
- package/geos.xcframework/ios-arm64/Headers/geos/operation/polygonize/EdgeRing.h +26 -44
- package/geos.xcframework/ios-arm64/Headers/geos/operation/polygonize/PolygonizeDirectedEdge.h +1 -1
- package/geos.xcframework/ios-arm64/Headers/geos/operation/polygonize/PolygonizeEdge.h +4 -4
- package/geos.xcframework/ios-arm64/Headers/geos/operation/polygonize/PolygonizeGraph.h +16 -7
- package/geos.xcframework/ios-arm64/Headers/geos/operation/polygonize/Polygonizer.h +39 -27
- package/geos.xcframework/ios-arm64/Headers/geos/operation/relateng/RelateGeometry.h +4 -5
- package/geos.xcframework/ios-arm64/Headers/geos/operation/relateng/RelateSegmentString.h +8 -8
- package/geos.xcframework/ios-arm64/Headers/geos/operation/spanning/SpanningTree.h +59 -0
- package/geos.xcframework/ios-arm64/Headers/geos/operation/split/GeometrySplitter.h +64 -0
- package/geos.xcframework/ios-arm64/Headers/geos/operation/split/SplitLinealAtPoint.h +90 -0
- package/geos.xcframework/ios-arm64/Headers/geos/operation/union/CascadedPolygonUnion.h +33 -25
- package/geos.xcframework/ios-arm64/Headers/geos/operation/union/UnaryUnionOp.h +12 -23
- package/geos.xcframework/ios-arm64/Headers/geos/operation/valid/IsSimpleOp.h +2 -2
- package/geos.xcframework/ios-arm64/Headers/geos/operation/valid/PolygonTopologyAnalyzer.h +0 -5
- package/geos.xcframework/ios-arm64/Headers/geos/operation/valid/RepeatedPointRemover.h +7 -0
- package/geos.xcframework/ios-arm64/Headers/geos/planargraph/DirectedEdge.h +13 -11
- package/geos.xcframework/ios-arm64/Headers/geos/planargraph/DirectedEdgeStar.h +6 -6
- package/geos.xcframework/ios-arm64/Headers/geos/planargraph/Edge.h +2 -1
- package/geos.xcframework/ios-arm64/Headers/geos/planargraph/Node.h +15 -34
- package/geos.xcframework/ios-arm64/Headers/geos/planargraph/NodeMap.h +3 -3
- package/geos.xcframework/ios-arm64/Headers/geos/planargraph/PlanarGraph.h +1 -1
- package/geos.xcframework/ios-arm64/Headers/geos/precision/GeometryPrecisionReducer.h +1 -3
- package/geos.xcframework/ios-arm64/Headers/geos/precision/PointwisePrecisionReducerTransformer.h +1 -1
- package/geos.xcframework/ios-arm64/Headers/geos/precision/PrecisionReducerTransformer.h +2 -2
- package/geos.xcframework/ios-arm64/Headers/geos/shape/GeometricShapeBuilder.h +83 -0
- package/geos.xcframework/ios-arm64/Headers/geos/shape/random/RandomPointsBuilder.h +65 -0
- package/geos.xcframework/ios-arm64/Headers/geos/simplify/DouglasPeuckerSimplifier.h +1 -1
- package/geos.xcframework/ios-arm64/Headers/geos/triangulate/polygon/PolygonHoleJoiner.h +3 -3
- package/geos.xcframework/ios-arm64/Headers/geos/triangulate/polygon/PolygonNoder.h +5 -5
- package/geos.xcframework/ios-arm64/Headers/geos/triangulate/quadedge/TrianglePredicate.h +1 -1
- package/geos.xcframework/ios-arm64/Headers/geos/util/Assert.h +7 -0
- package/geos.xcframework/ios-arm64/Headers/geos/util/Progress.h +84 -0
- package/geos.xcframework/ios-arm64/Headers/geos/util/TopologyException.h +6 -0
- package/geos.xcframework/ios-arm64/Headers/geos/version.h +4 -4
- package/geos.xcframework/ios-arm64/Headers/geos_c.h +1181 -152
- package/geos.xcframework/ios-arm64/libgeos.a +0 -0
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/algorithm/Angle.h +28 -0
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/algorithm/CircularArcIntersector.h +146 -0
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/algorithm/CircularArcs.h +241 -2
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/algorithm/CurveToLineParams.h +76 -0
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/algorithm/Interpolate.h +17 -2
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/algorithm/LineIntersector.h +5 -1
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/algorithm/LineToCurveConverter.h +74 -0
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/algorithm/LineToCurveParams.h +79 -0
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/algorithm/PointLocator.h +10 -2
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/algorithm/RayCrossingCounter.h +1 -3
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/algorithm/distance/DiscreteHausdorffDistance.h +2 -2
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/algorithm/distance/DistanceToPoint.h +2 -1
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/coverage/CoverageCleaner.h +3 -3
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/coverage/CoverageEdge.h +6 -6
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/coverage/CoverageEdges.h +61 -0
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/coverage/CoveragePolygonValidator.h +0 -1
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/coverage/CoverageRing.h +1 -1
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/coverage/CoverageSimplifier.h +17 -7
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/coverage/TPVWSimplifier.h +10 -4
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/dissolve/LineDissolver.h +3 -1
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/edgegraph/HalfEdge.h +1 -1
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/geom/CircularArc.h +163 -133
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/geom/CircularString.h +30 -1
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/geom/CompoundCurve.h +23 -0
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/geom/Coordinate.h +108 -0
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/geom/CoordinateSequence.h +122 -2
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/geom/Curve.h +32 -0
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/geom/CurvePolygon.h +16 -1
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/geom/Envelope.h +26 -0
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/geom/Geometry.h +41 -3
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/geom/GeometryCollection.h +13 -0
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/geom/GeometryFactory.h +36 -1
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/geom/LineSegment.h +42 -0
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/geom/LineString.h +19 -0
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/geom/LinearRing.h +3 -0
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/geom/MultiCurve.h +13 -0
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/geom/MultiLineString.h +11 -0
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/geom/MultiPolygon.h +4 -1
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/geom/MultiSurface.h +12 -0
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/geom/Point.h +4 -0
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/geom/Polygon.h +11 -1
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/geom/Quadrant.h +2 -2
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/geom/SimpleCurve.h +17 -26
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/geom/Surface.h +4 -0
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/geom/SurfaceImpl.h +3 -6
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/geom/util/CurveBuilder.h +89 -0
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/geom/util/GeometryTransformer.h +25 -0
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/geom/util/LinealExtracter.h +51 -0
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/geom/util/SimpleCurveExtracter.h +52 -0
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/geom/util/SurfaceExtracter.h +60 -0
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/geomgraph/EdgeNodingValidator.h +2 -9
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/index/intervalrtree/IntervalRTreeLeafNode.h +2 -1
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/index/intervalrtree/IntervalRTreeNode.h +2 -1
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/index/intervalrtree/SortedPackedIntervalRTree.h +2 -1
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/index/kdtree/KdNode.h +5 -5
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/index/kdtree/KdNodeVisitor.h +1 -0
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/index/kdtree/KdTree.h +21 -21
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/io/GeoJSONReader.h +1 -0
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/io/WKBReader.h +12 -0
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/io/WKTReader.h +2 -0
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/linearref/LengthIndexedLine.h +4 -5
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/linearref/LinearLocation.h +3 -1
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/math/DD.h +3 -0
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/noding/ArcIntersectionAdder.h +44 -0
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/noding/ArcIntersector.h +44 -0
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/noding/ArcNoder.h +53 -0
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/noding/ArcString.h +72 -0
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/noding/BasicSegmentString.h +1 -1
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/noding/BoundaryChainNoder.h +21 -22
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/noding/DirectionIndependentArcString.h +52 -0
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/noding/FastNodingValidator.h +6 -3
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/noding/GeometryNoder.h +31 -10
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/noding/IteratedNoder.h +10 -6
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/noding/MCIndexNoder.h +5 -6
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/noding/NodableArcString.h +44 -0
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/noding/NodablePath.h +40 -0
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/noding/NodableSegmentString.h +1 -1
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/noding/NodedSegmentString.h +9 -14
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/noding/Noder.h +13 -9
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/noding/NodingValidator.h +8 -4
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/noding/Octant.h +4 -4
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/noding/PathString.h +76 -0
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/noding/ScaledNoder.h +4 -4
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/noding/SegmentExtractingNoder.h +9 -7
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/noding/SegmentNodeList.h +3 -3
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/noding/SegmentPointComparator.h +2 -2
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/noding/SegmentString.h +24 -38
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/noding/SegmentStringUtil.h +2 -2
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/noding/SimpleNoder.h +13 -18
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/noding/SinglePassNoder.h +0 -21
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/noding/ValidatingNoder.h +11 -4
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/noding/snap/SnappingNoder.h +9 -8
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/noding/snapround/MCIndexSnapRounder.h +8 -8
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/noding/snapround/SnapRoundingNoder.h +5 -5
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/operation/BoundaryOp.h +6 -3
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/operation/buffer/BufferCurveSetBuilder.h +2 -2
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/operation/buffer/OffsetCurveBuilder.h +4 -5
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/operation/buffer/OffsetSegmentGenerator.h +4 -3
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/operation/distance/DistanceOp.h +32 -5
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/operation/distance/FacetSequence.h +25 -15
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/operation/distance/FacetSequenceTreeBuilder.h +14 -5
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/operation/distance/GeometryLocation.h +5 -5
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/operation/distance/IndexedFacetDistance.h +3 -6
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/operation/grid/Cell.h +12 -4
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/operation/grid/Grid.h +78 -21
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/operation/grid/GridIntersection.h +16 -5
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/operation/grid/PerimeterDistance.h +13 -2
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/operation/grid/Side.h +23 -2
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/operation/grid/Traversal.h +13 -4
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/operation/grid/TraversalAreas.h +4 -2
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/operation/linemerge/EdgeString.h +3 -3
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/operation/linemerge/LineMergeDirectedEdge.h +1 -1
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/operation/linemerge/LineMergeEdge.h +6 -6
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/operation/linemerge/LineMergeGraph.h +17 -8
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/operation/linemerge/LineMerger.h +6 -4
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/operation/overlay/snap/GeometrySnapper.h +4 -6
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/operation/overlayng/Edge.h +26 -36
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/operation/overlayng/EdgeKey.h +1 -1
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/operation/overlayng/EdgeNodingBuilder.h +36 -24
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/operation/overlayng/InputGeometry.h +2 -1
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/operation/overlayng/LineBuilder.h +4 -4
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/operation/overlayng/LineLimiter.h +13 -5
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/operation/overlayng/OverlayEdge.h +16 -13
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/operation/overlayng/OverlayEdgeRing.h +21 -16
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/operation/overlayng/OverlayGraph.h +4 -5
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/operation/overlayng/OverlayMixedPoints.h +12 -5
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/operation/overlayng/OverlayUtil.h +10 -7
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/operation/overlayng/PolygonBuilder.h +3 -3
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/operation/overlayng/RingClipper.h +5 -4
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/operation/polygonize/EdgeRing.h +26 -44
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/operation/polygonize/PolygonizeDirectedEdge.h +1 -1
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/operation/polygonize/PolygonizeEdge.h +4 -4
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/operation/polygonize/PolygonizeGraph.h +16 -7
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/operation/polygonize/Polygonizer.h +39 -27
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/operation/relateng/RelateGeometry.h +4 -5
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/operation/relateng/RelateSegmentString.h +8 -8
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/operation/spanning/SpanningTree.h +59 -0
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/operation/split/GeometrySplitter.h +64 -0
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/operation/split/SplitLinealAtPoint.h +90 -0
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/operation/union/CascadedPolygonUnion.h +33 -25
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/operation/union/UnaryUnionOp.h +12 -23
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/operation/valid/IsSimpleOp.h +2 -2
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/operation/valid/PolygonTopologyAnalyzer.h +0 -5
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/operation/valid/RepeatedPointRemover.h +7 -0
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/planargraph/DirectedEdge.h +13 -11
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/planargraph/DirectedEdgeStar.h +6 -6
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/planargraph/Edge.h +2 -1
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/planargraph/Node.h +15 -34
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/planargraph/NodeMap.h +3 -3
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/planargraph/PlanarGraph.h +1 -1
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/precision/GeometryPrecisionReducer.h +1 -3
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/precision/PointwisePrecisionReducerTransformer.h +1 -1
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/precision/PrecisionReducerTransformer.h +2 -2
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/shape/GeometricShapeBuilder.h +83 -0
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/shape/random/RandomPointsBuilder.h +65 -0
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/simplify/DouglasPeuckerSimplifier.h +1 -1
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/triangulate/polygon/PolygonHoleJoiner.h +3 -3
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/triangulate/polygon/PolygonNoder.h +5 -5
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/triangulate/quadedge/TrianglePredicate.h +1 -1
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/util/Assert.h +7 -0
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/util/Progress.h +84 -0
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/util/TopologyException.h +6 -0
- package/geos.xcframework/ios-arm64-simulator/Headers/geos/version.h +4 -4
- package/geos.xcframework/ios-arm64-simulator/Headers/geos_c.h +1181 -152
- package/geos.xcframework/ios-arm64-simulator/libgeos.a +0 -0
- package/geos_c.xcframework/ios-arm64/Headers/geos/algorithm/Angle.h +28 -0
- package/geos_c.xcframework/ios-arm64/Headers/geos/algorithm/CircularArcIntersector.h +146 -0
- package/geos_c.xcframework/ios-arm64/Headers/geos/algorithm/CircularArcs.h +241 -2
- package/geos_c.xcframework/ios-arm64/Headers/geos/algorithm/CurveToLineParams.h +76 -0
- package/geos_c.xcframework/ios-arm64/Headers/geos/algorithm/Interpolate.h +17 -2
- package/geos_c.xcframework/ios-arm64/Headers/geos/algorithm/LineIntersector.h +5 -1
- package/geos_c.xcframework/ios-arm64/Headers/geos/algorithm/LineToCurveConverter.h +74 -0
- package/geos_c.xcframework/ios-arm64/Headers/geos/algorithm/LineToCurveParams.h +79 -0
- package/geos_c.xcframework/ios-arm64/Headers/geos/algorithm/PointLocator.h +10 -2
- package/geos_c.xcframework/ios-arm64/Headers/geos/algorithm/RayCrossingCounter.h +1 -3
- package/geos_c.xcframework/ios-arm64/Headers/geos/algorithm/distance/DiscreteHausdorffDistance.h +2 -2
- package/geos_c.xcframework/ios-arm64/Headers/geos/algorithm/distance/DistanceToPoint.h +2 -1
- package/geos_c.xcframework/ios-arm64/Headers/geos/coverage/CoverageCleaner.h +3 -3
- package/geos_c.xcframework/ios-arm64/Headers/geos/coverage/CoverageEdge.h +6 -6
- package/geos_c.xcframework/ios-arm64/Headers/geos/coverage/CoverageEdges.h +61 -0
- package/geos_c.xcframework/ios-arm64/Headers/geos/coverage/CoveragePolygonValidator.h +0 -1
- package/geos_c.xcframework/ios-arm64/Headers/geos/coverage/CoverageRing.h +1 -1
- package/geos_c.xcframework/ios-arm64/Headers/geos/coverage/CoverageSimplifier.h +17 -7
- package/geos_c.xcframework/ios-arm64/Headers/geos/coverage/TPVWSimplifier.h +10 -4
- package/geos_c.xcframework/ios-arm64/Headers/geos/dissolve/LineDissolver.h +3 -1
- package/geos_c.xcframework/ios-arm64/Headers/geos/edgegraph/HalfEdge.h +1 -1
- package/geos_c.xcframework/ios-arm64/Headers/geos/geom/CircularArc.h +163 -133
- package/geos_c.xcframework/ios-arm64/Headers/geos/geom/CircularString.h +30 -1
- package/geos_c.xcframework/ios-arm64/Headers/geos/geom/CompoundCurve.h +23 -0
- package/geos_c.xcframework/ios-arm64/Headers/geos/geom/Coordinate.h +108 -0
- package/geos_c.xcframework/ios-arm64/Headers/geos/geom/CoordinateSequence.h +122 -2
- package/geos_c.xcframework/ios-arm64/Headers/geos/geom/Curve.h +32 -0
- package/geos_c.xcframework/ios-arm64/Headers/geos/geom/CurvePolygon.h +16 -1
- package/geos_c.xcframework/ios-arm64/Headers/geos/geom/Envelope.h +26 -0
- package/geos_c.xcframework/ios-arm64/Headers/geos/geom/Geometry.h +41 -3
- package/geos_c.xcframework/ios-arm64/Headers/geos/geom/GeometryCollection.h +13 -0
- package/geos_c.xcframework/ios-arm64/Headers/geos/geom/GeometryFactory.h +36 -1
- package/geos_c.xcframework/ios-arm64/Headers/geos/geom/LineSegment.h +42 -0
- package/geos_c.xcframework/ios-arm64/Headers/geos/geom/LineString.h +19 -0
- package/geos_c.xcframework/ios-arm64/Headers/geos/geom/LinearRing.h +3 -0
- package/geos_c.xcframework/ios-arm64/Headers/geos/geom/MultiCurve.h +13 -0
- package/geos_c.xcframework/ios-arm64/Headers/geos/geom/MultiLineString.h +11 -0
- package/geos_c.xcframework/ios-arm64/Headers/geos/geom/MultiPolygon.h +4 -1
- package/geos_c.xcframework/ios-arm64/Headers/geos/geom/MultiSurface.h +12 -0
- package/geos_c.xcframework/ios-arm64/Headers/geos/geom/Point.h +4 -0
- package/geos_c.xcframework/ios-arm64/Headers/geos/geom/Polygon.h +11 -1
- package/geos_c.xcframework/ios-arm64/Headers/geos/geom/Quadrant.h +2 -2
- package/geos_c.xcframework/ios-arm64/Headers/geos/geom/SimpleCurve.h +17 -26
- package/geos_c.xcframework/ios-arm64/Headers/geos/geom/Surface.h +4 -0
- package/geos_c.xcframework/ios-arm64/Headers/geos/geom/SurfaceImpl.h +3 -6
- package/geos_c.xcframework/ios-arm64/Headers/geos/geom/util/CurveBuilder.h +89 -0
- package/geos_c.xcframework/ios-arm64/Headers/geos/geom/util/GeometryTransformer.h +25 -0
- package/geos_c.xcframework/ios-arm64/Headers/geos/geom/util/LinealExtracter.h +51 -0
- package/geos_c.xcframework/ios-arm64/Headers/geos/geom/util/SimpleCurveExtracter.h +52 -0
- package/geos_c.xcframework/ios-arm64/Headers/geos/geom/util/SurfaceExtracter.h +60 -0
- package/geos_c.xcframework/ios-arm64/Headers/geos/geomgraph/EdgeNodingValidator.h +2 -9
- package/geos_c.xcframework/ios-arm64/Headers/geos/index/intervalrtree/IntervalRTreeLeafNode.h +2 -1
- package/geos_c.xcframework/ios-arm64/Headers/geos/index/intervalrtree/IntervalRTreeNode.h +2 -1
- package/geos_c.xcframework/ios-arm64/Headers/geos/index/intervalrtree/SortedPackedIntervalRTree.h +2 -1
- package/geos_c.xcframework/ios-arm64/Headers/geos/index/kdtree/KdNode.h +5 -5
- package/geos_c.xcframework/ios-arm64/Headers/geos/index/kdtree/KdNodeVisitor.h +1 -0
- package/geos_c.xcframework/ios-arm64/Headers/geos/index/kdtree/KdTree.h +21 -21
- package/geos_c.xcframework/ios-arm64/Headers/geos/io/GeoJSONReader.h +1 -0
- package/geos_c.xcframework/ios-arm64/Headers/geos/io/WKBReader.h +12 -0
- package/geos_c.xcframework/ios-arm64/Headers/geos/io/WKTReader.h +2 -0
- package/geos_c.xcframework/ios-arm64/Headers/geos/linearref/LengthIndexedLine.h +4 -5
- package/geos_c.xcframework/ios-arm64/Headers/geos/linearref/LinearLocation.h +3 -1
- package/geos_c.xcframework/ios-arm64/Headers/geos/math/DD.h +3 -0
- package/geos_c.xcframework/ios-arm64/Headers/geos/noding/ArcIntersectionAdder.h +44 -0
- package/geos_c.xcframework/ios-arm64/Headers/geos/noding/ArcIntersector.h +44 -0
- package/geos_c.xcframework/ios-arm64/Headers/geos/noding/ArcNoder.h +53 -0
- package/geos_c.xcframework/ios-arm64/Headers/geos/noding/ArcString.h +72 -0
- package/geos_c.xcframework/ios-arm64/Headers/geos/noding/BasicSegmentString.h +1 -1
- package/geos_c.xcframework/ios-arm64/Headers/geos/noding/BoundaryChainNoder.h +21 -22
- package/geos_c.xcframework/ios-arm64/Headers/geos/noding/DirectionIndependentArcString.h +52 -0
- package/geos_c.xcframework/ios-arm64/Headers/geos/noding/FastNodingValidator.h +6 -3
- package/geos_c.xcframework/ios-arm64/Headers/geos/noding/GeometryNoder.h +31 -10
- package/geos_c.xcframework/ios-arm64/Headers/geos/noding/IteratedNoder.h +10 -6
- package/geos_c.xcframework/ios-arm64/Headers/geos/noding/MCIndexNoder.h +5 -6
- package/geos_c.xcframework/ios-arm64/Headers/geos/noding/NodableArcString.h +44 -0
- package/geos_c.xcframework/ios-arm64/Headers/geos/noding/NodablePath.h +40 -0
- package/geos_c.xcframework/ios-arm64/Headers/geos/noding/NodableSegmentString.h +1 -1
- package/geos_c.xcframework/ios-arm64/Headers/geos/noding/NodedSegmentString.h +9 -14
- package/geos_c.xcframework/ios-arm64/Headers/geos/noding/Noder.h +13 -9
- package/geos_c.xcframework/ios-arm64/Headers/geos/noding/NodingValidator.h +8 -4
- package/geos_c.xcframework/ios-arm64/Headers/geos/noding/Octant.h +4 -4
- package/geos_c.xcframework/ios-arm64/Headers/geos/noding/PathString.h +76 -0
- package/geos_c.xcframework/ios-arm64/Headers/geos/noding/ScaledNoder.h +4 -4
- package/geos_c.xcframework/ios-arm64/Headers/geos/noding/SegmentExtractingNoder.h +9 -7
- package/geos_c.xcframework/ios-arm64/Headers/geos/noding/SegmentNodeList.h +3 -3
- package/geos_c.xcframework/ios-arm64/Headers/geos/noding/SegmentPointComparator.h +2 -2
- package/geos_c.xcframework/ios-arm64/Headers/geos/noding/SegmentString.h +24 -38
- package/geos_c.xcframework/ios-arm64/Headers/geos/noding/SegmentStringUtil.h +2 -2
- package/geos_c.xcframework/ios-arm64/Headers/geos/noding/SimpleNoder.h +13 -18
- package/geos_c.xcframework/ios-arm64/Headers/geos/noding/SinglePassNoder.h +0 -21
- package/geos_c.xcframework/ios-arm64/Headers/geos/noding/ValidatingNoder.h +11 -4
- package/geos_c.xcframework/ios-arm64/Headers/geos/noding/snap/SnappingNoder.h +9 -8
- package/geos_c.xcframework/ios-arm64/Headers/geos/noding/snapround/MCIndexSnapRounder.h +8 -8
- package/geos_c.xcframework/ios-arm64/Headers/geos/noding/snapround/SnapRoundingNoder.h +5 -5
- package/geos_c.xcframework/ios-arm64/Headers/geos/operation/BoundaryOp.h +6 -3
- package/geos_c.xcframework/ios-arm64/Headers/geos/operation/buffer/BufferCurveSetBuilder.h +2 -2
- package/geos_c.xcframework/ios-arm64/Headers/geos/operation/buffer/OffsetCurveBuilder.h +4 -5
- package/geos_c.xcframework/ios-arm64/Headers/geos/operation/buffer/OffsetSegmentGenerator.h +4 -3
- package/geos_c.xcframework/ios-arm64/Headers/geos/operation/distance/DistanceOp.h +32 -5
- package/geos_c.xcframework/ios-arm64/Headers/geos/operation/distance/FacetSequence.h +25 -15
- package/geos_c.xcframework/ios-arm64/Headers/geos/operation/distance/FacetSequenceTreeBuilder.h +14 -5
- package/geos_c.xcframework/ios-arm64/Headers/geos/operation/distance/GeometryLocation.h +5 -5
- package/geos_c.xcframework/ios-arm64/Headers/geos/operation/distance/IndexedFacetDistance.h +3 -6
- package/geos_c.xcframework/ios-arm64/Headers/geos/operation/grid/Cell.h +12 -4
- package/geos_c.xcframework/ios-arm64/Headers/geos/operation/grid/Grid.h +78 -21
- package/geos_c.xcframework/ios-arm64/Headers/geos/operation/grid/GridIntersection.h +16 -5
- package/geos_c.xcframework/ios-arm64/Headers/geos/operation/grid/PerimeterDistance.h +13 -2
- package/geos_c.xcframework/ios-arm64/Headers/geos/operation/grid/Side.h +23 -2
- package/geos_c.xcframework/ios-arm64/Headers/geos/operation/grid/Traversal.h +13 -4
- package/geos_c.xcframework/ios-arm64/Headers/geos/operation/grid/TraversalAreas.h +4 -2
- package/geos_c.xcframework/ios-arm64/Headers/geos/operation/linemerge/EdgeString.h +3 -3
- package/geos_c.xcframework/ios-arm64/Headers/geos/operation/linemerge/LineMergeDirectedEdge.h +1 -1
- package/geos_c.xcframework/ios-arm64/Headers/geos/operation/linemerge/LineMergeEdge.h +6 -6
- package/geos_c.xcframework/ios-arm64/Headers/geos/operation/linemerge/LineMergeGraph.h +17 -8
- package/geos_c.xcframework/ios-arm64/Headers/geos/operation/linemerge/LineMerger.h +6 -4
- package/geos_c.xcframework/ios-arm64/Headers/geos/operation/overlay/snap/GeometrySnapper.h +4 -6
- package/geos_c.xcframework/ios-arm64/Headers/geos/operation/overlayng/Edge.h +26 -36
- package/geos_c.xcframework/ios-arm64/Headers/geos/operation/overlayng/EdgeKey.h +1 -1
- package/geos_c.xcframework/ios-arm64/Headers/geos/operation/overlayng/EdgeNodingBuilder.h +36 -24
- package/geos_c.xcframework/ios-arm64/Headers/geos/operation/overlayng/InputGeometry.h +2 -1
- package/geos_c.xcframework/ios-arm64/Headers/geos/operation/overlayng/LineBuilder.h +4 -4
- package/geos_c.xcframework/ios-arm64/Headers/geos/operation/overlayng/LineLimiter.h +13 -5
- package/geos_c.xcframework/ios-arm64/Headers/geos/operation/overlayng/OverlayEdge.h +16 -13
- package/geos_c.xcframework/ios-arm64/Headers/geos/operation/overlayng/OverlayEdgeRing.h +21 -16
- package/geos_c.xcframework/ios-arm64/Headers/geos/operation/overlayng/OverlayGraph.h +4 -5
- package/geos_c.xcframework/ios-arm64/Headers/geos/operation/overlayng/OverlayMixedPoints.h +12 -5
- package/geos_c.xcframework/ios-arm64/Headers/geos/operation/overlayng/OverlayUtil.h +10 -7
- package/geos_c.xcframework/ios-arm64/Headers/geos/operation/overlayng/PolygonBuilder.h +3 -3
- package/geos_c.xcframework/ios-arm64/Headers/geos/operation/overlayng/RingClipper.h +5 -4
- package/geos_c.xcframework/ios-arm64/Headers/geos/operation/polygonize/EdgeRing.h +26 -44
- package/geos_c.xcframework/ios-arm64/Headers/geos/operation/polygonize/PolygonizeDirectedEdge.h +1 -1
- package/geos_c.xcframework/ios-arm64/Headers/geos/operation/polygonize/PolygonizeEdge.h +4 -4
- package/geos_c.xcframework/ios-arm64/Headers/geos/operation/polygonize/PolygonizeGraph.h +16 -7
- package/geos_c.xcframework/ios-arm64/Headers/geos/operation/polygonize/Polygonizer.h +39 -27
- package/geos_c.xcframework/ios-arm64/Headers/geos/operation/relateng/RelateGeometry.h +4 -5
- package/geos_c.xcframework/ios-arm64/Headers/geos/operation/relateng/RelateSegmentString.h +8 -8
- package/geos_c.xcframework/ios-arm64/Headers/geos/operation/spanning/SpanningTree.h +59 -0
- package/geos_c.xcframework/ios-arm64/Headers/geos/operation/split/GeometrySplitter.h +64 -0
- package/geos_c.xcframework/ios-arm64/Headers/geos/operation/split/SplitLinealAtPoint.h +90 -0
- package/geos_c.xcframework/ios-arm64/Headers/geos/operation/union/CascadedPolygonUnion.h +33 -25
- package/geos_c.xcframework/ios-arm64/Headers/geos/operation/union/UnaryUnionOp.h +12 -23
- package/geos_c.xcframework/ios-arm64/Headers/geos/operation/valid/IsSimpleOp.h +2 -2
- package/geos_c.xcframework/ios-arm64/Headers/geos/operation/valid/PolygonTopologyAnalyzer.h +0 -5
- package/geos_c.xcframework/ios-arm64/Headers/geos/operation/valid/RepeatedPointRemover.h +7 -0
- package/geos_c.xcframework/ios-arm64/Headers/geos/planargraph/DirectedEdge.h +13 -11
- package/geos_c.xcframework/ios-arm64/Headers/geos/planargraph/DirectedEdgeStar.h +6 -6
- package/geos_c.xcframework/ios-arm64/Headers/geos/planargraph/Edge.h +2 -1
- package/geos_c.xcframework/ios-arm64/Headers/geos/planargraph/Node.h +15 -34
- package/geos_c.xcframework/ios-arm64/Headers/geos/planargraph/NodeMap.h +3 -3
- package/geos_c.xcframework/ios-arm64/Headers/geos/planargraph/PlanarGraph.h +1 -1
- package/geos_c.xcframework/ios-arm64/Headers/geos/precision/GeometryPrecisionReducer.h +1 -3
- package/geos_c.xcframework/ios-arm64/Headers/geos/precision/PointwisePrecisionReducerTransformer.h +1 -1
- package/geos_c.xcframework/ios-arm64/Headers/geos/precision/PrecisionReducerTransformer.h +2 -2
- package/geos_c.xcframework/ios-arm64/Headers/geos/shape/GeometricShapeBuilder.h +83 -0
- package/geos_c.xcframework/ios-arm64/Headers/geos/shape/random/RandomPointsBuilder.h +65 -0
- package/geos_c.xcframework/ios-arm64/Headers/geos/simplify/DouglasPeuckerSimplifier.h +1 -1
- package/geos_c.xcframework/ios-arm64/Headers/geos/triangulate/polygon/PolygonHoleJoiner.h +3 -3
- package/geos_c.xcframework/ios-arm64/Headers/geos/triangulate/polygon/PolygonNoder.h +5 -5
- package/geos_c.xcframework/ios-arm64/Headers/geos/triangulate/quadedge/TrianglePredicate.h +1 -1
- package/geos_c.xcframework/ios-arm64/Headers/geos/util/Assert.h +7 -0
- package/geos_c.xcframework/ios-arm64/Headers/geos/util/Progress.h +84 -0
- package/geos_c.xcframework/ios-arm64/Headers/geos/util/TopologyException.h +6 -0
- package/geos_c.xcframework/ios-arm64/Headers/geos/version.h +4 -4
- package/geos_c.xcframework/ios-arm64/Headers/geos_c.h +1181 -152
- package/geos_c.xcframework/ios-arm64/libgeos_c.a +0 -0
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/algorithm/Angle.h +28 -0
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/algorithm/CircularArcIntersector.h +146 -0
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/algorithm/CircularArcs.h +241 -2
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/algorithm/CurveToLineParams.h +76 -0
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/algorithm/Interpolate.h +17 -2
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/algorithm/LineIntersector.h +5 -1
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/algorithm/LineToCurveConverter.h +74 -0
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/algorithm/LineToCurveParams.h +79 -0
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/algorithm/PointLocator.h +10 -2
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/algorithm/RayCrossingCounter.h +1 -3
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/algorithm/distance/DiscreteHausdorffDistance.h +2 -2
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/algorithm/distance/DistanceToPoint.h +2 -1
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/coverage/CoverageCleaner.h +3 -3
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/coverage/CoverageEdge.h +6 -6
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/coverage/CoverageEdges.h +61 -0
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/coverage/CoveragePolygonValidator.h +0 -1
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/coverage/CoverageRing.h +1 -1
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/coverage/CoverageSimplifier.h +17 -7
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/coverage/TPVWSimplifier.h +10 -4
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/dissolve/LineDissolver.h +3 -1
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/edgegraph/HalfEdge.h +1 -1
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/geom/CircularArc.h +163 -133
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/geom/CircularString.h +30 -1
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/geom/CompoundCurve.h +23 -0
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/geom/Coordinate.h +108 -0
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/geom/CoordinateSequence.h +122 -2
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/geom/Curve.h +32 -0
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/geom/CurvePolygon.h +16 -1
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/geom/Envelope.h +26 -0
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/geom/Geometry.h +41 -3
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/geom/GeometryCollection.h +13 -0
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/geom/GeometryFactory.h +36 -1
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/geom/LineSegment.h +42 -0
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/geom/LineString.h +19 -0
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/geom/LinearRing.h +3 -0
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/geom/MultiCurve.h +13 -0
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/geom/MultiLineString.h +11 -0
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/geom/MultiPolygon.h +4 -1
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/geom/MultiSurface.h +12 -0
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/geom/Point.h +4 -0
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/geom/Polygon.h +11 -1
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/geom/Quadrant.h +2 -2
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/geom/SimpleCurve.h +17 -26
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/geom/Surface.h +4 -0
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/geom/SurfaceImpl.h +3 -6
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/geom/util/CurveBuilder.h +89 -0
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/geom/util/GeometryTransformer.h +25 -0
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/geom/util/LinealExtracter.h +51 -0
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/geom/util/SimpleCurveExtracter.h +52 -0
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/geom/util/SurfaceExtracter.h +60 -0
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/geomgraph/EdgeNodingValidator.h +2 -9
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/index/intervalrtree/IntervalRTreeLeafNode.h +2 -1
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/index/intervalrtree/IntervalRTreeNode.h +2 -1
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/index/intervalrtree/SortedPackedIntervalRTree.h +2 -1
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/index/kdtree/KdNode.h +5 -5
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/index/kdtree/KdNodeVisitor.h +1 -0
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/index/kdtree/KdTree.h +21 -21
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/io/GeoJSONReader.h +1 -0
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/io/WKBReader.h +12 -0
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/io/WKTReader.h +2 -0
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/linearref/LengthIndexedLine.h +4 -5
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/linearref/LinearLocation.h +3 -1
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/math/DD.h +3 -0
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/noding/ArcIntersectionAdder.h +44 -0
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/noding/ArcIntersector.h +44 -0
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/noding/ArcNoder.h +53 -0
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/noding/ArcString.h +72 -0
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/noding/BasicSegmentString.h +1 -1
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/noding/BoundaryChainNoder.h +21 -22
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/noding/DirectionIndependentArcString.h +52 -0
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/noding/FastNodingValidator.h +6 -3
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/noding/GeometryNoder.h +31 -10
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/noding/IteratedNoder.h +10 -6
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/noding/MCIndexNoder.h +5 -6
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/noding/NodableArcString.h +44 -0
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/noding/NodablePath.h +40 -0
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/noding/NodableSegmentString.h +1 -1
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/noding/NodedSegmentString.h +9 -14
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/noding/Noder.h +13 -9
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/noding/NodingValidator.h +8 -4
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/noding/Octant.h +4 -4
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/noding/PathString.h +76 -0
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/noding/ScaledNoder.h +4 -4
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/noding/SegmentExtractingNoder.h +9 -7
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/noding/SegmentNodeList.h +3 -3
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/noding/SegmentPointComparator.h +2 -2
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/noding/SegmentString.h +24 -38
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/noding/SegmentStringUtil.h +2 -2
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/noding/SimpleNoder.h +13 -18
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/noding/SinglePassNoder.h +0 -21
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/noding/ValidatingNoder.h +11 -4
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/noding/snap/SnappingNoder.h +9 -8
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/noding/snapround/MCIndexSnapRounder.h +8 -8
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/noding/snapround/SnapRoundingNoder.h +5 -5
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/operation/BoundaryOp.h +6 -3
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/operation/buffer/BufferCurveSetBuilder.h +2 -2
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/operation/buffer/OffsetCurveBuilder.h +4 -5
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/operation/buffer/OffsetSegmentGenerator.h +4 -3
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/operation/distance/DistanceOp.h +32 -5
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/operation/distance/FacetSequence.h +25 -15
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/operation/distance/FacetSequenceTreeBuilder.h +14 -5
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/operation/distance/GeometryLocation.h +5 -5
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/operation/distance/IndexedFacetDistance.h +3 -6
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/operation/grid/Cell.h +12 -4
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/operation/grid/Grid.h +78 -21
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/operation/grid/GridIntersection.h +16 -5
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/operation/grid/PerimeterDistance.h +13 -2
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/operation/grid/Side.h +23 -2
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/operation/grid/Traversal.h +13 -4
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/operation/grid/TraversalAreas.h +4 -2
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/operation/linemerge/EdgeString.h +3 -3
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/operation/linemerge/LineMergeDirectedEdge.h +1 -1
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/operation/linemerge/LineMergeEdge.h +6 -6
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/operation/linemerge/LineMergeGraph.h +17 -8
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/operation/linemerge/LineMerger.h +6 -4
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/operation/overlay/snap/GeometrySnapper.h +4 -6
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/operation/overlayng/Edge.h +26 -36
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/operation/overlayng/EdgeKey.h +1 -1
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/operation/overlayng/EdgeNodingBuilder.h +36 -24
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/operation/overlayng/InputGeometry.h +2 -1
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/operation/overlayng/LineBuilder.h +4 -4
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/operation/overlayng/LineLimiter.h +13 -5
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/operation/overlayng/OverlayEdge.h +16 -13
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/operation/overlayng/OverlayEdgeRing.h +21 -16
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/operation/overlayng/OverlayGraph.h +4 -5
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/operation/overlayng/OverlayMixedPoints.h +12 -5
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/operation/overlayng/OverlayUtil.h +10 -7
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/operation/overlayng/PolygonBuilder.h +3 -3
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/operation/overlayng/RingClipper.h +5 -4
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/operation/polygonize/EdgeRing.h +26 -44
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/operation/polygonize/PolygonizeDirectedEdge.h +1 -1
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/operation/polygonize/PolygonizeEdge.h +4 -4
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/operation/polygonize/PolygonizeGraph.h +16 -7
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/operation/polygonize/Polygonizer.h +39 -27
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/operation/relateng/RelateGeometry.h +4 -5
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/operation/relateng/RelateSegmentString.h +8 -8
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/operation/spanning/SpanningTree.h +59 -0
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/operation/split/GeometrySplitter.h +64 -0
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/operation/split/SplitLinealAtPoint.h +90 -0
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/operation/union/CascadedPolygonUnion.h +33 -25
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/operation/union/UnaryUnionOp.h +12 -23
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/operation/valid/IsSimpleOp.h +2 -2
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/operation/valid/PolygonTopologyAnalyzer.h +0 -5
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/operation/valid/RepeatedPointRemover.h +7 -0
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/planargraph/DirectedEdge.h +13 -11
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/planargraph/DirectedEdgeStar.h +6 -6
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/planargraph/Edge.h +2 -1
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/planargraph/Node.h +15 -34
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/planargraph/NodeMap.h +3 -3
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/planargraph/PlanarGraph.h +1 -1
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/precision/GeometryPrecisionReducer.h +1 -3
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/precision/PointwisePrecisionReducerTransformer.h +1 -1
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/precision/PrecisionReducerTransformer.h +2 -2
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/shape/GeometricShapeBuilder.h +83 -0
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/shape/random/RandomPointsBuilder.h +65 -0
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/simplify/DouglasPeuckerSimplifier.h +1 -1
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/triangulate/polygon/PolygonHoleJoiner.h +3 -3
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/triangulate/polygon/PolygonNoder.h +5 -5
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/triangulate/quadedge/TrianglePredicate.h +1 -1
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/util/Assert.h +7 -0
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/util/Progress.h +84 -0
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/util/TopologyException.h +6 -0
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos/version.h +4 -4
- package/geos_c.xcframework/ios-arm64-simulator/Headers/geos_c.h +1181 -152
- package/geos_c.xcframework/ios-arm64-simulator/libgeos_c.a +0 -0
- package/package.json +4 -4
|
@@ -61,22 +61,22 @@ extern "C" {
|
|
|
61
61
|
#define GEOS_VERSION_MAJOR 3
|
|
62
62
|
#endif
|
|
63
63
|
#ifndef GEOS_VERSION_MINOR
|
|
64
|
-
#define GEOS_VERSION_MINOR
|
|
64
|
+
#define GEOS_VERSION_MINOR 15
|
|
65
65
|
#endif
|
|
66
66
|
#ifndef GEOS_VERSION_PATCH
|
|
67
|
-
#define GEOS_VERSION_PATCH
|
|
67
|
+
#define GEOS_VERSION_PATCH 0
|
|
68
68
|
#endif
|
|
69
69
|
#ifndef GEOS_VERSION
|
|
70
|
-
#define GEOS_VERSION "3.
|
|
70
|
+
#define GEOS_VERSION "3.15.0"
|
|
71
71
|
#endif
|
|
72
72
|
#ifndef GEOS_JTS_PORT
|
|
73
|
-
#define GEOS_JTS_PORT "1.
|
|
73
|
+
#define GEOS_JTS_PORT "1.20.0"
|
|
74
74
|
#endif
|
|
75
75
|
|
|
76
76
|
#define GEOS_CAPI_VERSION_MAJOR 1
|
|
77
|
-
#define GEOS_CAPI_VERSION_MINOR
|
|
78
|
-
#define GEOS_CAPI_VERSION_PATCH
|
|
79
|
-
#define GEOS_CAPI_VERSION "3.
|
|
77
|
+
#define GEOS_CAPI_VERSION_MINOR 21
|
|
78
|
+
#define GEOS_CAPI_VERSION_PATCH 0
|
|
79
|
+
#define GEOS_CAPI_VERSION "3.15.0-CAPI-1.21.0"
|
|
80
80
|
|
|
81
81
|
#define GEOS_CAPI_FIRST_INTERFACE GEOS_CAPI_VERSION_MAJOR
|
|
82
82
|
#define GEOS_CAPI_LAST_INTERFACE (GEOS_CAPI_VERSION_MAJOR+GEOS_CAPI_VERSION_MINOR)
|
|
@@ -117,6 +117,21 @@ typedef void (*GEOSMessageHandler)(GEOS_PRINTF_FORMAT const char *fmt, ...)
|
|
|
117
117
|
*/
|
|
118
118
|
typedef void (*GEOSMessageHandler_r)(const char *message, void *userdata);
|
|
119
119
|
|
|
120
|
+
|
|
121
|
+
/**
|
|
122
|
+
* A GEOS progress callback function.
|
|
123
|
+
*
|
|
124
|
+
* Such function takes a progress ratio (0 to 1), and an optional message.
|
|
125
|
+
*
|
|
126
|
+
* \param progressRatio Progression ratio (between 0 and 1)
|
|
127
|
+
* \param message Information message (can be NULL)
|
|
128
|
+
* \param userdata the user data pointer that was passed to GEOS together with
|
|
129
|
+
* this callback.
|
|
130
|
+
*/
|
|
131
|
+
typedef void (GEOSProgressCallback)(double progressRatio,
|
|
132
|
+
const char* message, void* userdata);
|
|
133
|
+
|
|
134
|
+
|
|
120
135
|
/*
|
|
121
136
|
* When we're included by geos_c.cpp, these types are #defined to the
|
|
122
137
|
* C++ definitions via preprocessor. We don't touch them to allow the
|
|
@@ -188,6 +203,20 @@ typedef struct GEOSMakeValidParams_t GEOSMakeValidParams;
|
|
|
188
203
|
*/
|
|
189
204
|
typedef struct GEOSClusterInfo_t GEOSClusterInfo;
|
|
190
205
|
|
|
206
|
+
/**
|
|
207
|
+
* Parameter object for curve-to-line conversion
|
|
208
|
+
* \see GEOSCurveToLineParams_create()
|
|
209
|
+
* \see GEOSCurveToLineParams_destroy()
|
|
210
|
+
*/
|
|
211
|
+
typedef struct GEOSCurveToLineParams_t GEOSCurveToLineParams;
|
|
212
|
+
|
|
213
|
+
/**
|
|
214
|
+
* Parameter object for line-to-curve conversion
|
|
215
|
+
* \see GEOSLineToCurveParams_create()
|
|
216
|
+
* \see GEOSLineToCurveParams_destroy()
|
|
217
|
+
*/
|
|
218
|
+
typedef struct GEOSLineToCurveParams_t GEOSLineToCurveParams;
|
|
219
|
+
|
|
191
220
|
#endif
|
|
192
221
|
|
|
193
222
|
/** \cond */
|
|
@@ -406,18 +435,29 @@ extern GEOSContextInterruptCallback GEOS_DLL *GEOSContext_setInterruptCallback_r
|
|
|
406
435
|
*/
|
|
407
436
|
extern void GEOS_DLL GEOS_interruptRequest(void);
|
|
408
437
|
|
|
409
|
-
/**
|
|
410
|
-
* Interrupt the current thread.
|
|
411
|
-
* \since 3.14
|
|
412
|
-
*/
|
|
413
|
-
extern void GEOS_DLL GEOS_interruptThread(void);
|
|
414
|
-
|
|
415
438
|
/**
|
|
416
439
|
* Cancel a pending interruption request
|
|
417
440
|
* \since 3.4
|
|
418
441
|
*/
|
|
419
442
|
extern void GEOS_DLL GEOS_interruptCancel(void);
|
|
420
443
|
|
|
444
|
+
/* ========== Progress monitoring ========== */
|
|
445
|
+
|
|
446
|
+
/**
|
|
447
|
+
* Register a function to be called with progress updates
|
|
448
|
+
*
|
|
449
|
+
* \param extHandle the context returned by \ref GEOS_init_r.
|
|
450
|
+
* \param cb Callback function to invoke
|
|
451
|
+
* \param userData optional data to be pe provided as argument to callback
|
|
452
|
+
* \return the previously registered callback, or NULL
|
|
453
|
+
* \see GEOSProgressCallback
|
|
454
|
+
* \since 3.15
|
|
455
|
+
*/
|
|
456
|
+
extern GEOSProgressCallback GEOS_DLL *GEOSContext_setProgressCallback_r(
|
|
457
|
+
GEOSContextHandle_t extHandle,
|
|
458
|
+
GEOSProgressCallback* cb,
|
|
459
|
+
void* userData);
|
|
460
|
+
|
|
421
461
|
/* ========== Initialization and Cleanup ========== */
|
|
422
462
|
|
|
423
463
|
/**
|
|
@@ -495,6 +535,38 @@ extern GEOSMessageHandler_r GEOS_DLL GEOSContext_setErrorMessageHandler_r(
|
|
|
495
535
|
GEOSMessageHandler_r ef,
|
|
496
536
|
void *userData);
|
|
497
537
|
|
|
538
|
+
/**
|
|
539
|
+
* Set parameters to use for converting input curves to lines.
|
|
540
|
+
*
|
|
541
|
+
* These parameters will be used with this context whenever a curved geometry is
|
|
542
|
+
* provided to a function that only supports linear types. If `params` is NULL,
|
|
543
|
+
* no automatic conversion will be performed.
|
|
544
|
+
*
|
|
545
|
+
* \param extHandle the GEOS context
|
|
546
|
+
* \param params the curve conversion parameters
|
|
547
|
+
*
|
|
548
|
+
* \since 3.15
|
|
549
|
+
*/
|
|
550
|
+
extern void GEOS_DLL GEOSContext_setCurveToLineParams_r(
|
|
551
|
+
GEOSContextHandle_t extHandle,
|
|
552
|
+
const GEOSCurveToLineParams* params);
|
|
553
|
+
|
|
554
|
+
/**
|
|
555
|
+
* Set parameters to use for converting output lines to curves.
|
|
556
|
+
*
|
|
557
|
+
* These parameters will be used with this context whenever a curved geometry is
|
|
558
|
+
* provided to a function that only supports linear types. If `params` is NULL,
|
|
559
|
+
* no automatic conversion will be performed.
|
|
560
|
+
*
|
|
561
|
+
* \param extHandle the GEOS context
|
|
562
|
+
* \param params the curve conversion parameters
|
|
563
|
+
*
|
|
564
|
+
* \since 3.15
|
|
565
|
+
*/
|
|
566
|
+
extern void GEOS_DLL GEOSContext_setLineToCurveParams_r(
|
|
567
|
+
GEOSContextHandle_t extHandle,
|
|
568
|
+
const GEOSLineToCurveParams* params);
|
|
569
|
+
|
|
498
570
|
/* ========== Coordinate Sequence functions ========== */
|
|
499
571
|
|
|
500
572
|
/** \see GEOSCoordSeq_create */
|
|
@@ -938,6 +1010,13 @@ GEOSCoverageSimplifyVW_r(
|
|
|
938
1010
|
double tolerance,
|
|
939
1011
|
int preserveBoundary);
|
|
940
1012
|
|
|
1013
|
+
/** \see GEOSCoverageEdges */
|
|
1014
|
+
extern GEOSGeometry GEOS_DLL *
|
|
1015
|
+
GEOSCoverageEdges_r(
|
|
1016
|
+
GEOSContextHandle_t handle,
|
|
1017
|
+
const GEOSGeometry* input,
|
|
1018
|
+
int edgetype);
|
|
1019
|
+
|
|
941
1020
|
/** \see GEOSCoverageCleanParams_create */
|
|
942
1021
|
extern GEOSCoverageCleanParams GEOS_DLL *
|
|
943
1022
|
GEOSCoverageCleanParams_create_r(
|
|
@@ -1029,6 +1108,16 @@ extern GEOSGeometry GEOS_DLL *GEOSPolygonHullSimplify_r(
|
|
|
1029
1108
|
unsigned int isOuter,
|
|
1030
1109
|
double vertexNumFraction);
|
|
1031
1110
|
|
|
1111
|
+
/**
|
|
1112
|
+
* Controls the behavior of the GEOSPolygonHullSimplify parameter.
|
|
1113
|
+
*/
|
|
1114
|
+
enum GEOSPolygonHullParameterModes {
|
|
1115
|
+
/** Fraction of input vertices retained */
|
|
1116
|
+
GEOSHULL_PARAM_VERTEX_RATIO = 1,
|
|
1117
|
+
/** Ratio of simplified hull area to input area */
|
|
1118
|
+
GEOSHULL_PARAM_AREA_RATIO = 2
|
|
1119
|
+
};
|
|
1120
|
+
|
|
1032
1121
|
/** \see GEOSPolygonHullSimplifyMode */
|
|
1033
1122
|
extern GEOSGeometry GEOS_DLL *GEOSPolygonHullSimplifyMode_r(
|
|
1034
1123
|
GEOSContextHandle_t handle,
|
|
@@ -1161,6 +1250,12 @@ extern GEOSGeometry GEOS_DLL *GEOSNode_r(
|
|
|
1161
1250
|
GEOSContextHandle_t handle,
|
|
1162
1251
|
const GEOSGeometry* g);
|
|
1163
1252
|
|
|
1253
|
+
/** \see GEOSSplit */
|
|
1254
|
+
extern GEOSGeometry GEOS_DLL *GEOSSplit_r(
|
|
1255
|
+
GEOSContextHandle_t handle,
|
|
1256
|
+
const GEOSGeometry* g,
|
|
1257
|
+
const GEOSGeometry* edge);
|
|
1258
|
+
|
|
1164
1259
|
/** \see GEOSClipByRect */
|
|
1165
1260
|
extern GEOSGeometry GEOS_DLL *GEOSClipByRect_r(
|
|
1166
1261
|
GEOSContextHandle_t handle,
|
|
@@ -1168,6 +1263,15 @@ extern GEOSGeometry GEOS_DLL *GEOSClipByRect_r(
|
|
|
1168
1263
|
double xmin, double ymin,
|
|
1169
1264
|
double xmax, double ymax);
|
|
1170
1265
|
|
|
1266
|
+
/** \see GEOSSubdivideByGrid */
|
|
1267
|
+
extern GEOSGeometry GEOS_DLL *GEOSSubdivideByGrid_r(
|
|
1268
|
+
GEOSContextHandle_t handle,
|
|
1269
|
+
const GEOSGeometry* g,
|
|
1270
|
+
double xmin, double ymin,
|
|
1271
|
+
double xmax, double ymax,
|
|
1272
|
+
unsigned nx, unsigned ny,
|
|
1273
|
+
int includeExterior);
|
|
1274
|
+
|
|
1171
1275
|
/** \see GEOSGridIntersectionFractions */
|
|
1172
1276
|
extern int GEOS_DLL GEOSGridIntersectionFractions_r(
|
|
1173
1277
|
GEOSContextHandle_t handle,
|
|
@@ -1213,6 +1317,12 @@ extern GEOSGeometry GEOS_DLL *GEOSLineMerge_r(
|
|
|
1213
1317
|
GEOSContextHandle_t handle,
|
|
1214
1318
|
const GEOSGeometry* g);
|
|
1215
1319
|
|
|
1320
|
+
/** \see GEOSMinimumSpanningTree */
|
|
1321
|
+
extern size_t GEOS_DLL *GEOSMinimumSpanningTree_r(
|
|
1322
|
+
GEOSContextHandle_t handle,
|
|
1323
|
+
const GEOSGeometry * const geoms[],
|
|
1324
|
+
unsigned int ngeoms);
|
|
1325
|
+
|
|
1216
1326
|
/** \see GEOSLineMergeDirected */
|
|
1217
1327
|
extern GEOSGeometry GEOS_DLL *GEOSLineMergeDirected_r(
|
|
1218
1328
|
GEOSContextHandle_t handle,
|
|
@@ -1271,6 +1381,17 @@ extern GEOSGeometry GEOS_DLL * GEOSConstrainedDelaunayTriangulation_r(
|
|
|
1271
1381
|
GEOSContextHandle_t handle,
|
|
1272
1382
|
const GEOSGeometry *g);
|
|
1273
1383
|
|
|
1384
|
+
/** Change behaviour of \ref GEOSVoronoiDiagram */
|
|
1385
|
+
enum GEOSVoronoiFlags
|
|
1386
|
+
{
|
|
1387
|
+
/** Return only edges of the Voronoi cells, as a MultiLineString **/
|
|
1388
|
+
GEOS_VORONOI_ONLY_EDGES = 1,
|
|
1389
|
+
/** Preserve order of inputs, such that the nth cell in the result corresponds
|
|
1390
|
+
* to the nth vertex in the input. If this cannot be done, such as for inputs
|
|
1391
|
+
* that contain repeated points, \ref GEOSVoronoiDiagram will return NULL. **/
|
|
1392
|
+
GEOS_VORONOI_PRESERVE_ORDER = 2
|
|
1393
|
+
};
|
|
1394
|
+
|
|
1274
1395
|
/** \see GEOSVoronoiDiagram */
|
|
1275
1396
|
extern GEOSGeometry GEOS_DLL * GEOSVoronoiDiagram_r(
|
|
1276
1397
|
GEOSContextHandle_t extHandle,
|
|
@@ -1754,6 +1875,16 @@ extern const GEOSGeometry GEOS_DLL *GEOSGetGeometryN_r(
|
|
|
1754
1875
|
GEOSContextHandle_t handle,
|
|
1755
1876
|
const GEOSGeometry* g, int n);
|
|
1756
1877
|
|
|
1878
|
+
/** \see GEOSGetNumCurves */
|
|
1879
|
+
extern int GEOS_DLL GEOSGetNumCurves_r(
|
|
1880
|
+
GEOSContextHandle_t handle,
|
|
1881
|
+
const GEOSGeometry* g);
|
|
1882
|
+
|
|
1883
|
+
/** \see GEOSGetCurveN */
|
|
1884
|
+
extern const GEOSGeometry GEOS_DLL *GEOSGetCurveN_r(
|
|
1885
|
+
GEOSContextHandle_t handle,
|
|
1886
|
+
const GEOSGeometry* g, int n);
|
|
1887
|
+
|
|
1757
1888
|
/** \see GEOSNormalize */
|
|
1758
1889
|
extern int GEOS_DLL GEOSNormalize_r(
|
|
1759
1890
|
GEOSContextHandle_t handle,
|
|
@@ -1790,6 +1921,48 @@ extern double GEOS_DLL GEOSGeom_getPrecision_r(
|
|
|
1790
1921
|
GEOSContextHandle_t handle,
|
|
1791
1922
|
const GEOSGeometry *g);
|
|
1792
1923
|
|
|
1924
|
+
/** \see GEOSCurveToLine */
|
|
1925
|
+
extern GEOSGeometry GEOS_DLL *GEOSCurveToLine_r(
|
|
1926
|
+
GEOSContextHandle_t handle,
|
|
1927
|
+
const GEOSGeometry* g,
|
|
1928
|
+
const GEOSCurveToLineParams* params);
|
|
1929
|
+
|
|
1930
|
+
/** \see GEOSCurveToLineParams_setMaxStepDegrees */
|
|
1931
|
+
extern int GEOS_DLL GEOSCurveToLineParams_setMaxStepDegrees_r(
|
|
1932
|
+
GEOSContextHandle_t extHandle,
|
|
1933
|
+
GEOSCurveToLineParams* params,
|
|
1934
|
+
double tolerance);
|
|
1935
|
+
|
|
1936
|
+
/** \see GEOSCurveToLineParams_setMaxDeviation */
|
|
1937
|
+
extern int GEOS_DLL GEOSCurveToLineParams_setMaxDeviation_r(
|
|
1938
|
+
GEOSContextHandle_t extHandle,
|
|
1939
|
+
GEOSCurveToLineParams* params,
|
|
1940
|
+
double tolerance);
|
|
1941
|
+
|
|
1942
|
+
/** \see GEOSLineToCurve */
|
|
1943
|
+
extern GEOSGeometry GEOS_DLL *GEOSLineToCurve_r(
|
|
1944
|
+
GEOSContextHandle_t handle,
|
|
1945
|
+
const GEOSGeometry* g,
|
|
1946
|
+
const GEOSLineToCurveParams* params);
|
|
1947
|
+
|
|
1948
|
+
/** \see GEOSLineToCurveParams_setRadiusTolerance */
|
|
1949
|
+
extern int GEOS_DLL GEOSLineToCurveParams_setRadiusTolerance_r(
|
|
1950
|
+
GEOSContextHandle_t extHandle,
|
|
1951
|
+
GEOSLineToCurveParams* params,
|
|
1952
|
+
double tolerance);
|
|
1953
|
+
|
|
1954
|
+
/** \see GEOSLineToCurveParams_setMaxStepDegrees */
|
|
1955
|
+
extern int GEOS_DLL GEOSLineToCurveParams_setMaxStepDegrees_r(
|
|
1956
|
+
GEOSContextHandle_t extHandle,
|
|
1957
|
+
GEOSLineToCurveParams* params,
|
|
1958
|
+
double tolerance);
|
|
1959
|
+
|
|
1960
|
+
/** \see GEOSLineToCurveParams_setMaxAngleDifferenceDegrees */
|
|
1961
|
+
extern int GEOS_DLL GEOSLineToCurveParams_setMaxAngleDifferenceDegrees_r(
|
|
1962
|
+
GEOSContextHandle_t extHandle,
|
|
1963
|
+
GEOSLineToCurveParams* params,
|
|
1964
|
+
double tolerance);
|
|
1965
|
+
|
|
1793
1966
|
/** \see GEOSGetNumInteriorRings */
|
|
1794
1967
|
extern int GEOS_DLL GEOSGetNumInteriorRings_r(
|
|
1795
1968
|
GEOSContextHandle_t handle,
|
|
@@ -1945,6 +2118,15 @@ extern int GEOS_DLL GEOSHausdorffDistance_r(
|
|
|
1945
2118
|
const GEOSGeometry *g2,
|
|
1946
2119
|
double *dist);
|
|
1947
2120
|
|
|
2121
|
+
/** \see GEOSHausdorffDistanceWithPoints */
|
|
2122
|
+
extern int GEOS_DLL GEOSHausdorffDistanceWithPoints_r(
|
|
2123
|
+
GEOSContextHandle_t handle,
|
|
2124
|
+
const GEOSGeometry *g1,
|
|
2125
|
+
const GEOSGeometry *g2,
|
|
2126
|
+
double *dist,
|
|
2127
|
+
double *p1x, double *p1y,
|
|
2128
|
+
double *p2x, double *p2y);
|
|
2129
|
+
|
|
1948
2130
|
/** \see GEOSHausdorffDistanceDensify */
|
|
1949
2131
|
extern int GEOS_DLL GEOSHausdorffDistanceDensify_r(
|
|
1950
2132
|
GEOSContextHandle_t handle,
|
|
@@ -1952,6 +2134,15 @@ extern int GEOS_DLL GEOSHausdorffDistanceDensify_r(
|
|
|
1952
2134
|
const GEOSGeometry *g2,
|
|
1953
2135
|
double densifyFrac, double *dist);
|
|
1954
2136
|
|
|
2137
|
+
/** \see GEOSHausdorffDistanceDensifyWithPoints */
|
|
2138
|
+
extern int GEOS_DLL GEOSHausdorffDistanceDensifyWithPoints_r(
|
|
2139
|
+
GEOSContextHandle_t handle,
|
|
2140
|
+
const GEOSGeometry *g1,
|
|
2141
|
+
const GEOSGeometry *g2,
|
|
2142
|
+
double densifyFrac, double* dist,
|
|
2143
|
+
double *p1x, double *p1y,
|
|
2144
|
+
double *p2x, double *p2y);
|
|
2145
|
+
|
|
1955
2146
|
/** \see GEOSFrechetDistance */
|
|
1956
2147
|
extern int GEOS_DLL GEOSFrechetDistance_r(
|
|
1957
2148
|
GEOSContextHandle_t handle,
|
|
@@ -2807,7 +2998,7 @@ extern GEOSGeometry GEOS_DLL *GEOSGeom_createCircularString(GEOSCoordSequence* s
|
|
|
2807
2998
|
* Caller is responsible for freeing with GEOSGeom_destroy().
|
|
2808
2999
|
* \since 3.13
|
|
2809
3000
|
*/
|
|
2810
|
-
extern GEOSGeometry GEOS_DLL *GEOSGeom_createEmptyCircularString();
|
|
3001
|
+
extern GEOSGeometry GEOS_DLL *GEOSGeom_createEmptyCircularString(void);
|
|
2811
3002
|
|
|
2812
3003
|
/**
|
|
2813
3004
|
* Creates a CompoundCurve geometry.
|
|
@@ -2826,7 +3017,7 @@ extern GEOSGeometry GEOS_DLL *GEOSGeom_createCompoundCurve(GEOSGeometry** curves
|
|
|
2826
3017
|
* Caller is responsible for freeing with GEOSGeom_destroy().
|
|
2827
3018
|
* \since 3.13
|
|
2828
3019
|
*/
|
|
2829
|
-
extern GEOSGeometry GEOS_DLL *GEOSGeom_createEmptyCompoundCurve();
|
|
3020
|
+
extern GEOSGeometry GEOS_DLL *GEOSGeom_createEmptyCompoundCurve(void);
|
|
2830
3021
|
|
|
2831
3022
|
/**
|
|
2832
3023
|
* Creates a CurvePolygon geometry from ring geometries.
|
|
@@ -2852,7 +3043,7 @@ extern GEOSGeometry GEOS_DLL *GEOSGeom_createCurvePolygon(
|
|
|
2852
3043
|
* Caller is responsible for freeing with GEOSGeom_destroy().
|
|
2853
3044
|
* \since 3.13
|
|
2854
3045
|
*/
|
|
2855
|
-
extern GEOSGeometry GEOS_DLL *GEOSGeom_createEmptyCurvePolygon();
|
|
3046
|
+
extern GEOSGeometry GEOS_DLL *GEOSGeom_createEmptyCurvePolygon(void);
|
|
2856
3047
|
|
|
2857
3048
|
/**
|
|
2858
3049
|
* Create a geometry collection.
|
|
@@ -3012,6 +3203,33 @@ extern const GEOSGeometry GEOS_DLL *GEOSGetGeometryN(
|
|
|
3012
3203
|
const GEOSGeometry* g,
|
|
3013
3204
|
int n);
|
|
3014
3205
|
|
|
3206
|
+
/**
|
|
3207
|
+
* Returns the number of simple curves in a CompoundCurve.
|
|
3208
|
+
* Returns 1 for a non-empty LineString/CircularString, and 0
|
|
3209
|
+
* for other inputs.
|
|
3210
|
+
* \param g Input geometry
|
|
3211
|
+
* \return Number of child curves in this geometry
|
|
3212
|
+
* \since 3.15
|
|
3213
|
+
*/
|
|
3214
|
+
extern int GEOS_DLL GEOSGetNumCurves(const GEOSGeometry* g);
|
|
3215
|
+
|
|
3216
|
+
/**
|
|
3217
|
+
* Returns the specified sub-curve of a geometry. For a simple curve type
|
|
3218
|
+
* (LineString/CircularString), returns a pointer to the input.
|
|
3219
|
+
* Returns NULL for non-curve types (dimension != 1).
|
|
3220
|
+
*
|
|
3221
|
+
* Returned object is a pointer to internal storage and must NOT be destroyed
|
|
3222
|
+
* directly.
|
|
3223
|
+
|
|
3224
|
+
* \param g Input geometry
|
|
3225
|
+
* \param n Sub-curve index, zero-based
|
|
3226
|
+
* \return A const \ref GEOSGeometry, or NULL
|
|
3227
|
+
* \since 3.15
|
|
3228
|
+
*/
|
|
3229
|
+
extern const GEOSGeometry GEOS_DLL *GEOSGetCurveN(
|
|
3230
|
+
const GEOSGeometry* g,
|
|
3231
|
+
int n);
|
|
3232
|
+
|
|
3015
3233
|
/**
|
|
3016
3234
|
* Read the currently set precision value from the
|
|
3017
3235
|
* geometry and returns the grid size if it is a fixed
|
|
@@ -3033,9 +3251,12 @@ extern double GEOS_DLL GEOSGeom_getPrecision(const GEOSGeometry *g);
|
|
|
3033
3251
|
extern int GEOS_DLL GEOSGetNumInteriorRings(const GEOSGeometry* g);
|
|
3034
3252
|
|
|
3035
3253
|
/**
|
|
3036
|
-
*
|
|
3037
|
-
*
|
|
3038
|
-
*
|
|
3254
|
+
* Return the number of points in a linear geometry.
|
|
3255
|
+
*
|
|
3256
|
+
* CircularString inputs are supported since GEOS 3.14.
|
|
3257
|
+
* CompoundCurve inputs are supported since GEOS 3.15.
|
|
3258
|
+
*
|
|
3259
|
+
* \param g Input geometry, must be a LineString, CircularString, or CompoundCurve
|
|
3039
3260
|
* \return Number of points, -1 on exception
|
|
3040
3261
|
* \since 2.2
|
|
3041
3262
|
*/
|
|
@@ -3119,7 +3340,7 @@ extern int GEOS_DLL GEOSGetNumCoordinates(
|
|
|
3119
3340
|
|
|
3120
3341
|
/**
|
|
3121
3342
|
* Return the coordinate sequence underlying the
|
|
3122
|
-
* given geometry (Must be a LineString, LinearRing or Point).
|
|
3343
|
+
* given geometry (Must be a LineString, LinearRing, CircularString, or Point).
|
|
3123
3344
|
* Do not directly free the coordinate sequence, it is owned by
|
|
3124
3345
|
* the parent geometry.
|
|
3125
3346
|
* \param g Input geometry
|
|
@@ -3132,9 +3353,9 @@ extern const GEOSCoordSequence GEOS_DLL *GEOSGeom_getCoordSeq(
|
|
|
3132
3353
|
/**
|
|
3133
3354
|
* Return the planar dimensionality of the geometry.
|
|
3134
3355
|
*
|
|
3135
|
-
* - 0 for
|
|
3136
|
-
* - 1 for
|
|
3137
|
-
* - 2 for
|
|
3356
|
+
* - 0 for Point, MultiPoint
|
|
3357
|
+
* - 1 for LineString, MultiLineString, CircularString, CompoundCurve, MultiCurve
|
|
3358
|
+
* - 2 for Polygon, MultiPolygon, CurvePolygon, MultiSurface
|
|
3138
3359
|
*
|
|
3139
3360
|
* \see geos::geom::Dimension::DimensionType
|
|
3140
3361
|
* \param g Input geometry
|
|
@@ -3148,7 +3369,8 @@ extern int GEOS_DLL GEOSGeom_getDimensions(
|
|
|
3148
3369
|
* Return the cartesian dimension of the geometry.
|
|
3149
3370
|
*
|
|
3150
3371
|
* - 2 for XY data
|
|
3151
|
-
* - 3 for XYZ data
|
|
3372
|
+
* - 3 for XYZ or XYM data
|
|
3373
|
+
* - 4 for XYZM data
|
|
3152
3374
|
*
|
|
3153
3375
|
* \param g Input geometry
|
|
3154
3376
|
* \return The dimension
|
|
@@ -3159,7 +3381,12 @@ extern int GEOS_DLL GEOSGeom_getCoordinateDimension(
|
|
|
3159
3381
|
const GEOSGeometry* g);
|
|
3160
3382
|
|
|
3161
3383
|
/**
|
|
3162
|
-
*
|
|
3384
|
+
* Gets the minimum X value of the geometry's envelope.
|
|
3385
|
+
* For linear geometry types, this is the same as the minimum X
|
|
3386
|
+
* coordinate value.
|
|
3387
|
+
*
|
|
3388
|
+
* Curved geometry types are supported since GEOS 3.13.
|
|
3389
|
+
*
|
|
3163
3390
|
* \param[in] g Input geometry
|
|
3164
3391
|
* \param[out] value Pointer to place result
|
|
3165
3392
|
* \return 0 on exception
|
|
@@ -3169,7 +3396,12 @@ extern int GEOS_DLL GEOSGeom_getCoordinateDimension(
|
|
|
3169
3396
|
extern int GEOS_DLL GEOSGeom_getXMin(const GEOSGeometry* g, double* value);
|
|
3170
3397
|
|
|
3171
3398
|
/**
|
|
3172
|
-
*
|
|
3399
|
+
* Gets the minimum Y value of the geometry's envelope.
|
|
3400
|
+
* For linear geometry types, this is the same as the minimum Y
|
|
3401
|
+
* coordinate value.
|
|
3402
|
+
*
|
|
3403
|
+
* Curved geometry types are supported since GEOS 3.13.
|
|
3404
|
+
*
|
|
3173
3405
|
* \param[in] g Input geometry
|
|
3174
3406
|
* \param[out] value Pointer to place result
|
|
3175
3407
|
* \return 0 on exception
|
|
@@ -3179,7 +3411,12 @@ extern int GEOS_DLL GEOSGeom_getXMin(const GEOSGeometry* g, double* value);
|
|
|
3179
3411
|
extern int GEOS_DLL GEOSGeom_getYMin(const GEOSGeometry* g, double* value);
|
|
3180
3412
|
|
|
3181
3413
|
/**
|
|
3182
|
-
*
|
|
3414
|
+
* Get the maximum X value of the geometry's envelope.
|
|
3415
|
+
* For linear geometry types, this is the same as the maximum X
|
|
3416
|
+
* coordinate value.
|
|
3417
|
+
*
|
|
3418
|
+
* Curved geometry types are supported since GEOS 3.13.
|
|
3419
|
+
*
|
|
3183
3420
|
* \param[in] g Input geometry
|
|
3184
3421
|
* \param[out] value Pointer to place result
|
|
3185
3422
|
* \return 0 on exception
|
|
@@ -3189,7 +3426,12 @@ extern int GEOS_DLL GEOSGeom_getYMin(const GEOSGeometry* g, double* value);
|
|
|
3189
3426
|
extern int GEOS_DLL GEOSGeom_getXMax(const GEOSGeometry* g, double* value);
|
|
3190
3427
|
|
|
3191
3428
|
/**
|
|
3192
|
-
*
|
|
3429
|
+
* Gets the maximum Y value of the geometry's envelope.
|
|
3430
|
+
* For linear geometry types, this is the same as the maximum Y
|
|
3431
|
+
* coordinate value.
|
|
3432
|
+
*
|
|
3433
|
+
* Curved geometry types are supported since GEOS 3.13.
|
|
3434
|
+
*
|
|
3193
3435
|
* \param[in] g Input geometry
|
|
3194
3436
|
* \param[out] value Pointer to place result
|
|
3195
3437
|
* \return 0 on exception
|
|
@@ -3199,9 +3441,13 @@ extern int GEOS_DLL GEOSGeom_getXMax(const GEOSGeometry* g, double* value);
|
|
|
3199
3441
|
extern int GEOS_DLL GEOSGeom_getYMax(const GEOSGeometry* g, double* value);
|
|
3200
3442
|
|
|
3201
3443
|
/**
|
|
3202
|
-
* Finds the extent (minimum and maximum X and Y value) of the
|
|
3444
|
+
* Finds the extent (minimum and maximum X and Y value) of the
|
|
3445
|
+
* geometry's envelope.
|
|
3446
|
+
*
|
|
3203
3447
|
* Raises an exception for empty geometry input.
|
|
3204
3448
|
*
|
|
3449
|
+
* Curved geometry types are supported since GEOS 3.13.
|
|
3450
|
+
*
|
|
3205
3451
|
* \param[in] g Input geometry
|
|
3206
3452
|
* \param[out] xmin Pointer to place result for minimum X value
|
|
3207
3453
|
* \param[out] ymin Pointer to place result for minimum Y value
|
|
@@ -3219,8 +3465,12 @@ extern int GEOS_DLL GEOSGeom_getExtent(
|
|
|
3219
3465
|
double* ymax);
|
|
3220
3466
|
|
|
3221
3467
|
/**
|
|
3222
|
-
* Return the N'th point of a
|
|
3223
|
-
*
|
|
3468
|
+
* Return the N'th point of a linear geometry.
|
|
3469
|
+
*
|
|
3470
|
+
* CircularString inputs are supported since GEOS 3.14.
|
|
3471
|
+
* CompoundCurve inputs are supported since GEOS 3.15.
|
|
3472
|
+
*
|
|
3473
|
+
* \param g Input geometry, must be a LineString, CircularString, or CompoundCurve
|
|
3224
3474
|
* \param n Index of desired point (zero based)
|
|
3225
3475
|
* \return A Point geometry.
|
|
3226
3476
|
* Caller must free with GEOSGeom_destroy()
|
|
@@ -3230,8 +3480,12 @@ extern int GEOS_DLL GEOSGeom_getExtent(
|
|
|
3230
3480
|
extern GEOSGeometry GEOS_DLL *GEOSGeomGetPointN(const GEOSGeometry *g, int n);
|
|
3231
3481
|
|
|
3232
3482
|
/**
|
|
3233
|
-
* Return the first point of a
|
|
3234
|
-
*
|
|
3483
|
+
* Return the first point of a linear geometry.
|
|
3484
|
+
*
|
|
3485
|
+
* CircularString inputs are supported since GEOS 3.14.
|
|
3486
|
+
* CompoundCurve inputs are supported since GEOS 3.15.
|
|
3487
|
+
*
|
|
3488
|
+
* \param g Input geometry, must be a LineString, CircularString, or CompoundCurve
|
|
3235
3489
|
* \return A Point geometry.
|
|
3236
3490
|
* Caller must free with GEOSGeom_destroy()
|
|
3237
3491
|
* NULL on exception.
|
|
@@ -3240,8 +3494,12 @@ extern GEOSGeometry GEOS_DLL *GEOSGeomGetPointN(const GEOSGeometry *g, int n);
|
|
|
3240
3494
|
extern GEOSGeometry GEOS_DLL *GEOSGeomGetStartPoint(const GEOSGeometry *g);
|
|
3241
3495
|
|
|
3242
3496
|
/**
|
|
3243
|
-
* Return the last point of a
|
|
3244
|
-
*
|
|
3497
|
+
* Return the last point of a linear geometry.
|
|
3498
|
+
*
|
|
3499
|
+
* CircularString inputs are supported since GEOS 3.14.
|
|
3500
|
+
* CompoundCurve inputs are supported since GEOS 3.15.
|
|
3501
|
+
*
|
|
3502
|
+
* \param g Input geometry, must be a LineString, CircularString, or CompoundCurve
|
|
3245
3503
|
* \return A Point geometry.
|
|
3246
3504
|
* Caller must free with GEOSGeom_destroy()
|
|
3247
3505
|
* NULL on exception.
|
|
@@ -3249,7 +3507,6 @@ extern GEOSGeometry GEOS_DLL *GEOSGeomGetStartPoint(const GEOSGeometry *g);
|
|
|
3249
3507
|
*/
|
|
3250
3508
|
extern GEOSGeometry GEOS_DLL *GEOSGeomGetEndPoint(const GEOSGeometry *g);
|
|
3251
3509
|
|
|
3252
|
-
|
|
3253
3510
|
/**
|
|
3254
3511
|
* Tests whether the input geometry is empty. If the geometry or any
|
|
3255
3512
|
* component is non-empty, the geometry is non-empty. An empty geometry
|
|
@@ -3263,7 +3520,8 @@ extern char GEOS_DLL GEOSisEmpty(const GEOSGeometry* g);
|
|
|
3263
3520
|
/**
|
|
3264
3521
|
* Tests whether the input geometry is a ring. Rings are
|
|
3265
3522
|
* linestrings, without self-intersections,
|
|
3266
|
-
* with start and end point
|
|
3523
|
+
* with start and end point having the same XY values.
|
|
3524
|
+
* Z and M values are not considered.
|
|
3267
3525
|
* \param g The geometry to test
|
|
3268
3526
|
* \return 1 on true, 0 on false, 2 on exception
|
|
3269
3527
|
* \since 2.2
|
|
@@ -3289,8 +3547,14 @@ extern char GEOS_DLL GEOSHasM(const GEOSGeometry* g);
|
|
|
3289
3547
|
|
|
3290
3548
|
/**
|
|
3291
3549
|
* Tests whether the input geometry is closed.
|
|
3292
|
-
* A closed geometry is
|
|
3293
|
-
*
|
|
3550
|
+
* A closed geometry is either:
|
|
3551
|
+
* - a non-empty LineString, CircularString, or CompoundCurve whose
|
|
3552
|
+
* start and end points having the same XY values; or
|
|
3553
|
+
* - a non-empty MultiLineString or MultiCurve whose elements are
|
|
3554
|
+
* all closed.
|
|
3555
|
+
*
|
|
3556
|
+
* Z and M values are not considered.
|
|
3557
|
+
*
|
|
3294
3558
|
* \param g The geometry to test
|
|
3295
3559
|
* \return 1 on true, 0 on false, 2 on exception
|
|
3296
3560
|
* \since 3.3
|
|
@@ -3334,7 +3598,11 @@ extern void GEOS_DLL GEOSGeom_setUserData(GEOSGeometry* g, void* userData);
|
|
|
3334
3598
|
* - Rings start with their smallest coordinate
|
|
3335
3599
|
* (using XY ordering)
|
|
3336
3600
|
* - Polygon shell rings are oriented CW, and holes CCW
|
|
3337
|
-
* - Collection elements are sorted by their first coordinate
|
|
3601
|
+
* - Collection elements are sorted by their geometry type and first coordinate
|
|
3602
|
+
*
|
|
3603
|
+
* Coordinate Z and M values are not modified during normalization.
|
|
3604
|
+
*
|
|
3605
|
+
* Curved geometry types are supported since GEOS 3.15.
|
|
3338
3606
|
*
|
|
3339
3607
|
* Use before calling \ref GEOSEqualsExact to avoid false "not equal" results.
|
|
3340
3608
|
* \param g Input geometry
|
|
@@ -3346,6 +3614,7 @@ extern int GEOS_DLL GEOSNormalize(GEOSGeometry* g);
|
|
|
3346
3614
|
/**
|
|
3347
3615
|
* Enforce a ring orientation on all polygonal elements in the input geometry.
|
|
3348
3616
|
* Non-polygonal geometries will not be modified.
|
|
3617
|
+
* Coordinate Z and M values are not modified.
|
|
3349
3618
|
*
|
|
3350
3619
|
* \param g Input geometry
|
|
3351
3620
|
* \param exteriorCW if 1, exterior rings will be clockwise and interior rings
|
|
@@ -3368,6 +3637,13 @@ and geometric quality.
|
|
|
3368
3637
|
/**
|
|
3369
3638
|
* Tests whether the input geometry is "simple". Mostly relevant for
|
|
3370
3639
|
* linestrings. A "simple" linestring has no self-intersections.
|
|
3640
|
+
* Z and M values are not considered.
|
|
3641
|
+
*
|
|
3642
|
+
* This function does not support curved types directly. If curve-to-line
|
|
3643
|
+
* conversion parameters are registered with the context, curved
|
|
3644
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
3645
|
+
* operation will fail.
|
|
3646
|
+
*
|
|
3371
3647
|
* \param g The geometry to test
|
|
3372
3648
|
* \return 1 on true, 0 on false, 2 on exception
|
|
3373
3649
|
* \since 2.2
|
|
@@ -3378,9 +3654,14 @@ extern char GEOS_DLL GEOSisSimple(const GEOSGeometry* g);
|
|
|
3378
3654
|
* In one step, calculate and return whether a geometry is simple
|
|
3379
3655
|
* and one more more points at which the geometry self-intersects
|
|
3380
3656
|
* at interior points.
|
|
3381
|
-
* Caller has the responsibility to destroy 'location' with
|
|
3657
|
+
* Caller has the responsibility to destroy 'location' with
|
|
3382
3658
|
* GEOSGeom_destroy()
|
|
3383
3659
|
*
|
|
3660
|
+
* This function does not support curved types directly. If curve-to-line
|
|
3661
|
+
* conversion parameters are registered with the context, curved
|
|
3662
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
3663
|
+
* operation will fail.
|
|
3664
|
+
*
|
|
3384
3665
|
* \param g The geometry to test
|
|
3385
3666
|
* \param findAllLocations Whether to return all self-intersection locations, or just one
|
|
3386
3667
|
* \param locations A pointer in which the location GEOSGeometry will be placed
|
|
@@ -3401,6 +3682,13 @@ extern char GEOS_DLL GEOSisSimpleDetail(
|
|
|
3401
3682
|
* contained within exterior rings.
|
|
3402
3683
|
* - Multi-polygon components may not touch or overlap.
|
|
3403
3684
|
*
|
|
3685
|
+
* Z and M values are not considered.
|
|
3686
|
+
*
|
|
3687
|
+
* This function does not support curved types directly. If curve-to-line
|
|
3688
|
+
* conversion parameters are registered with the context, curved
|
|
3689
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
3690
|
+
* operation will fail.
|
|
3691
|
+
*
|
|
3404
3692
|
* \param g The geometry to test
|
|
3405
3693
|
* \return 1 on true, 0 on false, 2 on exception
|
|
3406
3694
|
* \see geos::operation::valid::isValidOp
|
|
@@ -3411,6 +3699,12 @@ extern char GEOS_DLL GEOSisValid(const GEOSGeometry* g);
|
|
|
3411
3699
|
/**
|
|
3412
3700
|
* Return the human readable reason a geometry is invalid,
|
|
3413
3701
|
* "Valid Geometry" string otherwise, or NULL on exception.
|
|
3702
|
+
*
|
|
3703
|
+
* This function does not support curved types directly. If curve-to-line
|
|
3704
|
+
* conversion parameters are registered with the context, curved
|
|
3705
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
3706
|
+
* operation will fail.
|
|
3707
|
+
*
|
|
3414
3708
|
* \param g The geometry to test
|
|
3415
3709
|
* \return A string with the reason, NULL on exception.
|
|
3416
3710
|
* Caller must GEOSFree() their result.
|
|
@@ -3425,6 +3719,12 @@ extern char GEOS_DLL *GEOSisValidReason(const GEOSGeometry *g);
|
|
|
3425
3719
|
* rules are broken.
|
|
3426
3720
|
* Caller has the responsibility to destroy 'reason' with GEOSFree()
|
|
3427
3721
|
* and 'location' with GEOSGeom_destroy()
|
|
3722
|
+
*
|
|
3723
|
+
* This function does not support curved types directly. If curve-to-line
|
|
3724
|
+
* conversion parameters are registered with the context, curved
|
|
3725
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
3726
|
+
* operation will fail.
|
|
3727
|
+
*
|
|
3428
3728
|
* \param g The geometry to test
|
|
3429
3729
|
* \param flags A value from the \ref GEOSValidFlags enum
|
|
3430
3730
|
* \param reason A pointer in which the reason string will be places
|
|
@@ -3441,6 +3741,16 @@ extern char GEOS_DLL GEOSisValidDetail(
|
|
|
3441
3741
|
|
|
3442
3742
|
/**
|
|
3443
3743
|
* Repair an invalid geometry, returning a valid output.
|
|
3744
|
+
*
|
|
3745
|
+
* This function does not support curved types directly. If curve-to-line
|
|
3746
|
+
* conversion parameters are registered with the context, curved
|
|
3747
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
3748
|
+
* operation will fail.
|
|
3749
|
+
* This function outputs linear geometry types only. If line-to-curve
|
|
3750
|
+
* conversion parameters are registered with the context, and a
|
|
3751
|
+
* curved input was provided, outputs will be automatically
|
|
3752
|
+
* converted to curved types.
|
|
3753
|
+
*
|
|
3444
3754
|
* \param g The geometry to repair
|
|
3445
3755
|
* \return The repaired geometry. Caller must free with GEOSGeom_destroy().
|
|
3446
3756
|
*
|
|
@@ -3452,6 +3762,16 @@ extern GEOSGeometry GEOS_DLL *GEOSMakeValid(
|
|
|
3452
3762
|
/**
|
|
3453
3763
|
* Repair an invalid geometry, returning a valid output, using the
|
|
3454
3764
|
* indicated GEOSMakeValidMethods algorithm and options.
|
|
3765
|
+
*
|
|
3766
|
+
* This function does not support curved types directly. If curve-to-line
|
|
3767
|
+
* conversion parameters are registered with the context, curved
|
|
3768
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
3769
|
+
* operation will fail.
|
|
3770
|
+
* This function outputs linear geometry types only. If line-to-curve
|
|
3771
|
+
* conversion parameters are registered with the context, and a
|
|
3772
|
+
* curved input was provided, outputs will be automatically
|
|
3773
|
+
* converted to curved types.
|
|
3774
|
+
*
|
|
3455
3775
|
* \param g is the geometry to test.
|
|
3456
3776
|
* \param makeValidParams is a GEOSMakeValidParams with the desired parameters set on it.
|
|
3457
3777
|
* \return A repaired geometry. Caller must free with GEOSGeom_destroy().
|
|
@@ -3522,6 +3842,11 @@ extern int GEOS_DLL GEOSMakeValidParams_setKeepCollapsed(
|
|
|
3522
3842
|
* If the minimum clearance cannot be defined for a geometry (such as with a single point, or a multipoint
|
|
3523
3843
|
* whose points are identical, a value of Infinity will be calculated.
|
|
3524
3844
|
*
|
|
3845
|
+
* This function does not support curved types directly. If curve-to-line
|
|
3846
|
+
* conversion parameters are registered with the context, curved
|
|
3847
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
3848
|
+
* operation will fail.
|
|
3849
|
+
*
|
|
3525
3850
|
* \param g the input geometry
|
|
3526
3851
|
* \param d a double to which the result can be stored
|
|
3527
3852
|
* \return 0 if no exception occurred.
|
|
@@ -3533,9 +3858,14 @@ extern int GEOS_DLL GEOSMakeValidParams_setKeepCollapsed(
|
|
|
3533
3858
|
extern int GEOS_DLL GEOSMinimumClearance(const GEOSGeometry* g, double* d);
|
|
3534
3859
|
|
|
3535
3860
|
/**
|
|
3536
|
-
* Returns a LineString whose endpoints define the minimum clearance of a geometry.
|
|
3861
|
+
* Returns a 2D LineString whose endpoints define the minimum clearance of a geometry.
|
|
3537
3862
|
* If the geometry has no minimum clearance, an empty LineString will be returned.
|
|
3538
3863
|
*
|
|
3864
|
+
* This function does not support curved types directly. If curve-to-line
|
|
3865
|
+
* conversion parameters are registered with the context, curved
|
|
3866
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
3867
|
+
* operation will fail.
|
|
3868
|
+
*
|
|
3539
3869
|
* \param g the input geometry
|
|
3540
3870
|
* \return a linestring geometry, or NULL if an exception occurred.
|
|
3541
3871
|
* Caller is responsible for freeing with GEOSGeom_destroy().
|
|
@@ -3554,6 +3884,9 @@ extern GEOSGeometry GEOS_DLL *GEOSMinimumClearanceLine(const GEOSGeometry* g);
|
|
|
3554
3884
|
* result in an invalid geometry being returned. Be sure
|
|
3555
3885
|
* to check and repair validity.
|
|
3556
3886
|
*
|
|
3887
|
+
* Z and M coordinate values are preserved but are not considered when
|
|
3888
|
+
* determining if a point is repeated.
|
|
3889
|
+
*
|
|
3557
3890
|
* \return A geometry with all points within the tolerance of each other removed.
|
|
3558
3891
|
* \param g The geometry to filter
|
|
3559
3892
|
* \param tolerance Remove all points within this distance of each other. Use 0.0 to remove only exactly repeated points.
|
|
@@ -3576,6 +3909,11 @@ extern GEOSGeometry GEOS_DLL *GEOSRemoveRepeatedPoints(
|
|
|
3576
3909
|
|
|
3577
3910
|
/**
|
|
3578
3911
|
* Calculate the area of a geometry.
|
|
3912
|
+
*
|
|
3913
|
+
* Curved geometry types are supported since GEOS 3.13.
|
|
3914
|
+
*
|
|
3915
|
+
* Area is calculated in the XY plane; Z and M values are ignored.
|
|
3916
|
+
*
|
|
3579
3917
|
* \param[in] g Input geometry
|
|
3580
3918
|
* \param[out] area Pointer to be filled in with area result
|
|
3581
3919
|
* \return 1 on success, 0 on exception.
|
|
@@ -3587,6 +3925,10 @@ extern int GEOS_DLL GEOSArea(
|
|
|
3587
3925
|
|
|
3588
3926
|
/**
|
|
3589
3927
|
* Calculate the length of a geometry.
|
|
3928
|
+
*
|
|
3929
|
+
* Curved geometry types are supported since GEOS 3.13.
|
|
3930
|
+
*
|
|
3931
|
+
* Length is calculated in the XY plane; Z and M values are ignored.
|
|
3590
3932
|
* \param[in] g Input geometry
|
|
3591
3933
|
* \param[out] length Pointer to be filled in with length result
|
|
3592
3934
|
* \return 1 on success, 0 on exception.
|
|
@@ -3597,8 +3939,13 @@ extern int GEOS_DLL GEOSLength(
|
|
|
3597
3939
|
double *length);
|
|
3598
3940
|
|
|
3599
3941
|
/**
|
|
3600
|
-
* Calculate the length of a LineString.
|
|
3601
|
-
*
|
|
3942
|
+
* Calculate the length of a LineString, CircularString, or CompoundCurve.
|
|
3943
|
+
*
|
|
3944
|
+
* Returns an exception if a different geometry type is provided.
|
|
3945
|
+
* Length is calculated in the XY plane; Z and M values are ignored.
|
|
3946
|
+
*
|
|
3947
|
+
* CircularString and CompoundCurve arguments are supported since
|
|
3948
|
+
* GEOS 3.15.
|
|
3602
3949
|
*
|
|
3603
3950
|
* \param[in] g Input geometry
|
|
3604
3951
|
* \param[out] length Pointer to be filled in with length result
|
|
@@ -3620,9 +3967,17 @@ extern int GEOS_DLL GEOSGeomGetLength(
|
|
|
3620
3967
|
|
|
3621
3968
|
/**
|
|
3622
3969
|
* Calculate the distance between two geometries.
|
|
3970
|
+
* Distance is calculated in the XY plane; Z and M values are ignored.
|
|
3971
|
+
*
|
|
3972
|
+
* This function does not support curved types directly. If curve-to-line
|
|
3973
|
+
* conversion parameters are registered with the context, curved
|
|
3974
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
3975
|
+
* operation will fail.
|
|
3976
|
+
*
|
|
3623
3977
|
* \param[in] g1 Input geometry
|
|
3624
3978
|
* \param[in] g2 Input geometry
|
|
3625
|
-
* \param[out] dist Pointer to be filled in with distance result
|
|
3979
|
+
* \param[out] dist Pointer to be filled in with distance result. Positive
|
|
3980
|
+
* infinity is returned if one of the geometry is empty.
|
|
3626
3981
|
* \return 1 on success, 0 on exception.
|
|
3627
3982
|
* \since 2.2
|
|
3628
3983
|
*/
|
|
@@ -3634,6 +3989,13 @@ extern int GEOS_DLL GEOSDistance(
|
|
|
3634
3989
|
/**
|
|
3635
3990
|
* Test whether the distance between two geometries is
|
|
3636
3991
|
* within the given dist.
|
|
3992
|
+
* Distance is calculated in the XY plane; Z and M values are ignored.
|
|
3993
|
+
*
|
|
3994
|
+
* This function does not support curved types directly. If curve-to-line
|
|
3995
|
+
* conversion parameters are registered with the context, curved
|
|
3996
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
3997
|
+
* operation will fail.
|
|
3998
|
+
*
|
|
3637
3999
|
* \param g1 Input geometry
|
|
3638
4000
|
* \param g2 Input geometry
|
|
3639
4001
|
* \param dist The max distance
|
|
@@ -3651,6 +4013,12 @@ extern char GEOS_DLL GEOSDistanceWithin(
|
|
|
3651
4013
|
* indexed facet distance, which first indexes the geometries
|
|
3652
4014
|
* internally, then calculates the distance. Useful when one
|
|
3653
4015
|
* or both geometries is very large.
|
|
4016
|
+
*
|
|
4017
|
+
* This function does not support curved types directly. If curve-to-line
|
|
4018
|
+
* conversion parameters are registered with the context, curved
|
|
4019
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
4020
|
+
* operation will fail.
|
|
4021
|
+
*
|
|
3654
4022
|
* \param[in] g1 Input geometry
|
|
3655
4023
|
* \param[in] g2 Input geometry
|
|
3656
4024
|
* \param[out] dist Pointer to be filled in with distance result
|
|
@@ -3667,6 +4035,12 @@ extern int GEOS_DLL GEOSDistanceIndexed(
|
|
|
3667
4035
|
/**
|
|
3668
4036
|
* The closest points of the two geometries.
|
|
3669
4037
|
* The first point comes from g1 geometry and the second point comes from g2.
|
|
4038
|
+
* Returned points will not have Z or M values.
|
|
4039
|
+
*
|
|
4040
|
+
* This function does not support curved types directly. If curve-to-line
|
|
4041
|
+
* conversion parameters are registered with the context, curved
|
|
4042
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
4043
|
+
* operation will fail.
|
|
3670
4044
|
*
|
|
3671
4045
|
* \param[in] g1 Input geometry
|
|
3672
4046
|
* \param[in] g2 Input geometry
|
|
@@ -3683,6 +4057,12 @@ extern GEOSCoordSequence GEOS_DLL *GEOSNearestPoints(
|
|
|
3683
4057
|
* Calculate the Hausdorff distance between two geometries.
|
|
3684
4058
|
* [Hausdorff distance](https://en.wikipedia.org/wiki/Hausdorff_distance)
|
|
3685
4059
|
* is the largest distance between two geometries.
|
|
4060
|
+
*
|
|
4061
|
+
* This function does not support curved types directly. If curve-to-line
|
|
4062
|
+
* conversion parameters are registered with the context, curved
|
|
4063
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
4064
|
+
* operation will fail.
|
|
4065
|
+
*
|
|
3686
4066
|
* \param[in] g1 Input geometry
|
|
3687
4067
|
* \param[in] g2 Input geometry
|
|
3688
4068
|
* \param[out] dist Pointer to be filled in with distance result
|
|
@@ -3695,11 +4075,47 @@ extern int GEOS_DLL GEOSHausdorffDistance(
|
|
|
3695
4075
|
const GEOSGeometry *g2,
|
|
3696
4076
|
double *dist);
|
|
3697
4077
|
|
|
4078
|
+
|
|
4079
|
+
/**
|
|
4080
|
+
* Calculate the Hausdorff distance between two geometries and return
|
|
4081
|
+
* the coordinates of the points that determine the distance.
|
|
4082
|
+
*
|
|
4083
|
+
* This function does not support curved types directly. If curve-to-line
|
|
4084
|
+
* conversion parameters are registered with the context, curved
|
|
4085
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
4086
|
+
* operation will fail.
|
|
4087
|
+
*
|
|
4088
|
+
* \param[in] g1 Input geometry
|
|
4089
|
+
* \param[in] g2 Input geometry
|
|
4090
|
+
* \param[out] dist Pointer to be filled in with distance result
|
|
4091
|
+
* \param[out] p1x X coordinate of point on g1
|
|
4092
|
+
* \param[out] p1y Y coordinate of point on g1
|
|
4093
|
+
* \param[out] p2x X coordinate of point on g2
|
|
4094
|
+
* \param[out] p2y Y coordinate of point on g2
|
|
4095
|
+
* \return 1 on success, 0 on exception.
|
|
4096
|
+
* \see geos::algorithm::distance::DiscreteHausdorffDistance
|
|
4097
|
+
* \since 3.15
|
|
4098
|
+
*/
|
|
4099
|
+
extern int GEOS_DLL GEOSHausdorffDistanceWithPoints(
|
|
4100
|
+
const GEOSGeometry *g1,
|
|
4101
|
+
const GEOSGeometry *g2,
|
|
4102
|
+
double *dist,
|
|
4103
|
+
double *p1x, double *p1y,
|
|
4104
|
+
double *p2x, double *p2y);
|
|
4105
|
+
|
|
4106
|
+
|
|
4107
|
+
|
|
3698
4108
|
/**
|
|
3699
4109
|
* Calculate a more precise Hausdorff distance between two geometries,
|
|
3700
4110
|
* by densifying the inputs before computation.
|
|
3701
4111
|
* [Hausdorff distance](https://en.wikipedia.org/wiki/Hausdorff_distance)
|
|
3702
4112
|
* is the largest distance between two geometries.
|
|
4113
|
+
*
|
|
4114
|
+
* This function does not support curved types directly. If curve-to-line
|
|
4115
|
+
* conversion parameters are registered with the context, curved
|
|
4116
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
4117
|
+
* operation will fail.
|
|
4118
|
+
*
|
|
3703
4119
|
* \param[in] g1 Input geometry
|
|
3704
4120
|
* \param[in] g2 Input geometry
|
|
3705
4121
|
* \param[in] densifyFrac The largest % of the overall line length that
|
|
@@ -3715,11 +4131,50 @@ extern int GEOS_DLL GEOSHausdorffDistanceDensify(
|
|
|
3715
4131
|
double densifyFrac,
|
|
3716
4132
|
double *dist);
|
|
3717
4133
|
|
|
4134
|
+
/**
|
|
4135
|
+
* Calculate a more precise Hausdorff distance between two geometries,
|
|
4136
|
+
* by densifying the inputs before computation and return the points
|
|
4137
|
+
* that determine the distance.
|
|
4138
|
+
* [Hausdorff distance](https://en.wikipedia.org/wiki/Hausdorff_distance)
|
|
4139
|
+
* is the largest distance between two geometries.
|
|
4140
|
+
*
|
|
4141
|
+
* This function does not support curved types directly. If curve-to-line
|
|
4142
|
+
* conversion parameters are registered with the context, curved
|
|
4143
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
4144
|
+
* operation will fail.
|
|
4145
|
+
*
|
|
4146
|
+
* \param[in] g1 Input geometry
|
|
4147
|
+
* \param[in] g2 Input geometry
|
|
4148
|
+
* \param[in] densifyFrac The largest % of the overall line length that
|
|
4149
|
+
* any given two point segment should be.
|
|
4150
|
+
* \param[out] dist Pointer to be filled in with distance result
|
|
4151
|
+
* \param[out] p1x X coordinate of point on g1
|
|
4152
|
+
* \param[out] p1y Y coordinate of point on g1
|
|
4153
|
+
* \param[out] p2x X coordinate of point on g2
|
|
4154
|
+
* \param[out] p2y Y coordinate of point on g2
|
|
4155
|
+
* \return 1 on success, 0 on exception.
|
|
4156
|
+
* \see goes::algorithm::distance::DiscreteHausdorffDistance
|
|
4157
|
+
* \since 3.15
|
|
4158
|
+
*/
|
|
4159
|
+
extern int GEOS_DLL GEOSHausdorffDistanceDensifyWithPoints(
|
|
4160
|
+
const GEOSGeometry *g1,
|
|
4161
|
+
const GEOSGeometry *g2,
|
|
4162
|
+
double densifyFrac,
|
|
4163
|
+
double *dist,
|
|
4164
|
+
double* p1x, double* p1y,
|
|
4165
|
+
double* p2x, double* p2y);
|
|
4166
|
+
|
|
3718
4167
|
/**
|
|
3719
4168
|
* Calculate the
|
|
3720
4169
|
* [Frechet distance](https://en.wikipedia.org/wiki/Fr%C3%A9chet_distance)
|
|
3721
4170
|
* between two geometries,
|
|
3722
4171
|
* a similarity measure for linear features.
|
|
4172
|
+
*
|
|
4173
|
+
* This function does not support curved types directly. If curve-to-line
|
|
4174
|
+
* conversion parameters are registered with the context, curved
|
|
4175
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
4176
|
+
* operation will fail.
|
|
4177
|
+
*
|
|
3723
4178
|
* \param[in] g1 Input geometry
|
|
3724
4179
|
* \param[in] g2 Input geometry
|
|
3725
4180
|
* \param[out] dist Pointer to be filled in with distance result
|
|
@@ -3739,6 +4194,12 @@ extern int GEOS_DLL GEOSFrechetDistance(
|
|
|
3739
4194
|
* between two geometries,
|
|
3740
4195
|
* a similarity measure for linear features.
|
|
3741
4196
|
* The inputs can be densified to provide a more accurate result.
|
|
4197
|
+
*
|
|
4198
|
+
* This function does not support curved types directly. If curve-to-line
|
|
4199
|
+
* conversion parameters are registered with the context, curved
|
|
4200
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
4201
|
+
* operation will fail.
|
|
4202
|
+
*
|
|
3742
4203
|
* \param[in] g1 Input geometry
|
|
3743
4204
|
* \param[in] g2 Input geometry
|
|
3744
4205
|
* \param[in] densifyFrac The largest % of the overall line length that
|
|
@@ -3766,6 +4227,12 @@ extern int GEOS_DLL GEOSFrechetDistanceDensify(
|
|
|
3766
4227
|
|
|
3767
4228
|
/**
|
|
3768
4229
|
* Distance of point projected onto line from the start of the line.
|
|
4230
|
+
*
|
|
4231
|
+
* This function does not support curved types directly. If curve-to-line
|
|
4232
|
+
* conversion parameters are registered with the context, curved
|
|
4233
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
4234
|
+
* operation will fail.
|
|
4235
|
+
*
|
|
3769
4236
|
* \param line linear target of projection
|
|
3770
4237
|
* \param point point to be projected onto 'g'
|
|
3771
4238
|
* \return distance along line that point projects to, -1 on exception
|
|
@@ -3777,10 +4244,18 @@ extern double GEOS_DLL GEOSProject(const GEOSGeometry* line,
|
|
|
3777
4244
|
const GEOSGeometry* point);
|
|
3778
4245
|
|
|
3779
4246
|
/**
|
|
3780
|
-
*
|
|
3781
|
-
*
|
|
3782
|
-
*
|
|
3783
|
-
*
|
|
4247
|
+
* Return the point that is the specified 2D distance along a LineString from the start.
|
|
4248
|
+
*
|
|
4249
|
+
* If applicable, the Z value of the returned point will be interpolated from the input line.
|
|
4250
|
+
* Since GEOS 3.15, the M value will also be interpolated.
|
|
4251
|
+
*
|
|
4252
|
+
* This function does not support curved types directly. If curve-to-line
|
|
4253
|
+
* conversion parameters are registered with the context, curved
|
|
4254
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
4255
|
+
* operation will fail.
|
|
4256
|
+
*
|
|
4257
|
+
* If the (converted) input is not a LineString, NULL will be returned.
|
|
4258
|
+
*
|
|
3784
4259
|
* \param line linear target of projection
|
|
3785
4260
|
* \param d distance from start of line to created point
|
|
3786
4261
|
* \return The point \ref GEOSGeometry that is distance from the start of line.
|
|
@@ -3794,6 +4269,12 @@ extern GEOSGeometry GEOS_DLL *GEOSInterpolate(const GEOSGeometry* line,
|
|
|
3794
4269
|
* Project point to line and calculate the **proportion** of
|
|
3795
4270
|
* the line the point is from the start. For example, a point that
|
|
3796
4271
|
* projects to the middle of a line would be return 0.5.
|
|
4272
|
+
*
|
|
4273
|
+
* This function does not support curved types directly. If curve-to-line
|
|
4274
|
+
* conversion parameters are registered with the context, curved
|
|
4275
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
4276
|
+
* operation will fail.
|
|
4277
|
+
*
|
|
3797
4278
|
* \param line linear target of projection
|
|
3798
4279
|
* \param point the point to project
|
|
3799
4280
|
* \return The proportion of the overall line length that the projected
|
|
@@ -3804,8 +4285,19 @@ extern double GEOS_DLL GEOSProjectNormalized(const GEOSGeometry* line,
|
|
|
3804
4285
|
const GEOSGeometry* point);
|
|
3805
4286
|
|
|
3806
4287
|
/**
|
|
3807
|
-
* Measuring from start of
|
|
3808
|
-
*
|
|
4288
|
+
* Measuring from start of a LineString, return the point at the specified
|
|
4289
|
+
* fraction of the total length.
|
|
4290
|
+
*
|
|
4291
|
+
* If applicable, the Z value of the returned point will be interpolated from the input line.
|
|
4292
|
+
* Since GEOS 3.15, the M value will also be interpolated.
|
|
4293
|
+
*
|
|
4294
|
+
* This function does not support curved types directly. If curve-to-line
|
|
4295
|
+
* conversion parameters are registered with the context, curved
|
|
4296
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
4297
|
+
* operation will fail.
|
|
4298
|
+
*
|
|
4299
|
+
* If the (converted) input is not a LineString, NULL will be returned.
|
|
4300
|
+
*
|
|
3809
4301
|
* \param line linear target of projection
|
|
3810
4302
|
* \param proportion The proportion from the start of line to created point
|
|
3811
4303
|
* \return The point \ref GEOSGeometry that is distance from the start of line.
|
|
@@ -3828,6 +4320,16 @@ extern GEOSGeometry GEOS_DLL *GEOSInterpolateNormalized(
|
|
|
3828
4320
|
/**
|
|
3829
4321
|
* Returns the intersection of two geometries: the set of points
|
|
3830
4322
|
* that fall within **both** geometries.
|
|
4323
|
+
*
|
|
4324
|
+
* This function does not support curved types directly. If curve-to-line
|
|
4325
|
+
* conversion parameters are registered with the context, curved
|
|
4326
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
4327
|
+
* operation will fail.
|
|
4328
|
+
* This function outputs linear geometry types only. If line-to-curve
|
|
4329
|
+
* conversion parameters are registered with the context, and a
|
|
4330
|
+
* curved input was provided, outputs will be automatically
|
|
4331
|
+
* converted to curved types.
|
|
4332
|
+
*
|
|
3831
4333
|
* \param g1 one of the geometries
|
|
3832
4334
|
* \param g2 the other geometry
|
|
3833
4335
|
* \return A newly allocated geometry of the intersection. NULL on exception.
|
|
@@ -3856,6 +4358,16 @@ extern GEOSGeometry GEOS_DLL *GEOSIntersectionPrec(const GEOSGeometry* g1, const
|
|
|
3856
4358
|
/**
|
|
3857
4359
|
* Returns the difference of two geometries A and B: the set of points
|
|
3858
4360
|
* that fall within A but **not** within B.
|
|
4361
|
+
*
|
|
4362
|
+
* This function does not support curved types directly. If curve-to-line
|
|
4363
|
+
* conversion parameters are registered with the context, curved
|
|
4364
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
4365
|
+
* operation will fail.
|
|
4366
|
+
* This function outputs linear geometry types only. If line-to-curve
|
|
4367
|
+
* conversion parameters are registered with the context, and a
|
|
4368
|
+
* curved input was provided, outputs will be automatically
|
|
4369
|
+
* converted to curved types.
|
|
4370
|
+
*
|
|
3859
4371
|
* \param ga the base geometry
|
|
3860
4372
|
* \param gb the geometry to subtract from it
|
|
3861
4373
|
* \return A newly allocated geometry of the difference. NULL on exception.
|
|
@@ -3891,6 +4403,16 @@ extern GEOSGeometry GEOS_DLL *GEOSDifferencePrec(
|
|
|
3891
4403
|
* Returns the symmetric difference of two geometries A and B: the set of points
|
|
3892
4404
|
* that fall in A but **not** within B and the set of points that fall in B but
|
|
3893
4405
|
* **not** in A.
|
|
4406
|
+
*
|
|
4407
|
+
* This function does not support curved types directly. If curve-to-line
|
|
4408
|
+
* conversion parameters are registered with the context, curved
|
|
4409
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
4410
|
+
* operation will fail.
|
|
4411
|
+
* This function outputs linear geometry types only. If line-to-curve
|
|
4412
|
+
* conversion parameters are registered with the context, and a
|
|
4413
|
+
* curved input was provided, outputs will be automatically
|
|
4414
|
+
* converted to curved types.
|
|
4415
|
+
*
|
|
3894
4416
|
* \param ga geometry A
|
|
3895
4417
|
* \param gb geometry B
|
|
3896
4418
|
* \return A newly allocated geometry of the symmetric difference. NULL on exception.
|
|
@@ -3926,6 +4448,16 @@ extern GEOSGeometry GEOS_DLL *GEOSSymDifferencePrec(
|
|
|
3926
4448
|
/**
|
|
3927
4449
|
* Returns the union of two geometries A and B: the set of points
|
|
3928
4450
|
* that fall in A **or** within B.
|
|
4451
|
+
*
|
|
4452
|
+
* This function does not support curved types directly. If curve-to-line
|
|
4453
|
+
* conversion parameters are registered with the context, curved
|
|
4454
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
4455
|
+
* operation will fail.
|
|
4456
|
+
* This function outputs linear geometry types only. If line-to-curve
|
|
4457
|
+
* conversion parameters are registered with the context, and a
|
|
4458
|
+
* curved input was provided, outputs will be automatically
|
|
4459
|
+
* converted to curved types.
|
|
4460
|
+
*
|
|
3929
4461
|
* \param ga geometry A
|
|
3930
4462
|
* \param gb geometry B
|
|
3931
4463
|
* \return A newly allocated geometry of the union. NULL on exception.
|
|
@@ -3961,6 +4493,16 @@ extern GEOSGeometry GEOS_DLL *GEOSUnionPrec(
|
|
|
3961
4493
|
* Returns the union of all components of a single geometry. Usually
|
|
3962
4494
|
* used to convert a collection into the smallest set of polygons
|
|
3963
4495
|
* that cover the same area.
|
|
4496
|
+
*
|
|
4497
|
+
* This function does not support curved types directly. If curve-to-line
|
|
4498
|
+
* conversion parameters are registered with the context, curved
|
|
4499
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
4500
|
+
* operation will fail.
|
|
4501
|
+
* This function outputs linear geometry types only. If line-to-curve
|
|
4502
|
+
* conversion parameters are registered with the context, and a
|
|
4503
|
+
* curved input was provided, outputs will be automatically
|
|
4504
|
+
* converted to curved types.
|
|
4505
|
+
*
|
|
3964
4506
|
* \param g The input geometry
|
|
3965
4507
|
* \return A newly allocated geometry of the union. NULL on exception.
|
|
3966
4508
|
* Caller is responsible for freeing with GEOSGeom_destroy().
|
|
@@ -3993,6 +4535,16 @@ extern GEOSGeometry GEOS_DLL *GEOSUnaryUnionPrec(
|
|
|
3993
4535
|
* Optimized union algorithm for inputs that can be divided into subsets
|
|
3994
4536
|
* that do not intersect. If there is only one such subset, performance
|
|
3995
4537
|
* can be expected to be worse than GEOSUnionaryUnion.
|
|
4538
|
+
*
|
|
4539
|
+
* This function does not support curved types directly. If curve-to-line
|
|
4540
|
+
* conversion parameters are registered with the context, curved
|
|
4541
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
4542
|
+
* operation will fail.
|
|
4543
|
+
* This function outputs linear geometry types only. If line-to-curve
|
|
4544
|
+
* conversion parameters are registered with the context, and a
|
|
4545
|
+
* curved input was provided, outputs will be automatically
|
|
4546
|
+
* converted to curved types.
|
|
4547
|
+
*
|
|
3996
4548
|
* \param g The input geometry
|
|
3997
4549
|
* \return A newly allocated geometry of the union, or NULL on exception.
|
|
3998
4550
|
* Caller is responsible for freeing with GEOSGeom_destroy().
|
|
@@ -4005,6 +4557,16 @@ extern GEOSGeometry GEOS_DLL *GEOSDisjointSubsetUnion(const GEOSGeometry *g);
|
|
|
4005
4557
|
* Intersection optimized for a rectangular clipping polygon.
|
|
4006
4558
|
* Supposed to be faster than using GEOSIntersection(). Not
|
|
4007
4559
|
* guaranteed to return valid results.
|
|
4560
|
+
*
|
|
4561
|
+
* This function does not support curved types directly. If curve-to-line
|
|
4562
|
+
* conversion parameters are registered with the context, curved
|
|
4563
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
4564
|
+
* operation will fail.
|
|
4565
|
+
* This function outputs linear geometry types only. If line-to-curve
|
|
4566
|
+
* conversion parameters are registered with the context, and a
|
|
4567
|
+
* curved input was provided, outputs will be automatically
|
|
4568
|
+
* converted to curved types.
|
|
4569
|
+
*
|
|
4008
4570
|
* \param g The input geometry to be clipped
|
|
4009
4571
|
* \param xmin Left bound of clipping rectangle
|
|
4010
4572
|
* \param ymin Lower bound of clipping rectangle
|
|
@@ -4021,9 +4583,55 @@ extern GEOSGeometry GEOS_DLL *GEOSClipByRect(
|
|
|
4021
4583
|
double xmin, double ymin,
|
|
4022
4584
|
double xmax, double ymax);
|
|
4023
4585
|
|
|
4586
|
+
/**
|
|
4587
|
+
* Compute the intersection of a geometry with each polygon in
|
|
4588
|
+
* a rectangular grid.
|
|
4589
|
+
*
|
|
4590
|
+
* This function does not support curved types directly. If curve-to-line
|
|
4591
|
+
* conversion parameters are registered with the context, curved
|
|
4592
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
4593
|
+
* operation will fail.
|
|
4594
|
+
* This function outputs linear geometry types only. If line-to-curve
|
|
4595
|
+
* conversion parameters are registered with the context, and a
|
|
4596
|
+
* curved input was provided, outputs will be automatically
|
|
4597
|
+
* converted to curved types.
|
|
4598
|
+
*
|
|
4599
|
+
* \param g The input geometry to be clipped
|
|
4600
|
+
* \param xmin Left bound of grd
|
|
4601
|
+
* \param ymin Lower bound of grid
|
|
4602
|
+
* \param xmax Right bound of grid
|
|
4603
|
+
* \param ymax Upper bound of grid
|
|
4604
|
+
* \param nx number of columns in grid
|
|
4605
|
+
* \param ny number of rows in grid
|
|
4606
|
+
* \param includeExterior whether to include portions of the
|
|
4607
|
+
input geometry that do not intersect the grid in
|
|
4608
|
+
the returned result.
|
|
4609
|
+
* \return A geometry collection whose components represent the
|
|
4610
|
+
* intersection with each cell in the grid.
|
|
4611
|
+
* Caller is responsible for freeing with GEOSGeom_destroy().
|
|
4612
|
+
*
|
|
4613
|
+
* This algorithm operates in 2D only; Z and M values in the input will be dropped.
|
|
4614
|
+
|
|
4615
|
+
* \see GEOSGetGridIntersectionFractions
|
|
4616
|
+
*
|
|
4617
|
+
* \since 3.15.0
|
|
4618
|
+
*/
|
|
4619
|
+
extern GEOSGeometry GEOS_DLL *GEOSSubdivideByGrid(
|
|
4620
|
+
const GEOSGeometry* g,
|
|
4621
|
+
double xmin, double ymin,
|
|
4622
|
+
double xmax, double ymax,
|
|
4623
|
+
unsigned nx, unsigned ny,
|
|
4624
|
+
int includeExterior);
|
|
4625
|
+
|
|
4024
4626
|
/**
|
|
4025
4627
|
* Determine the fraction of each cell in a rectangular grid
|
|
4026
4628
|
* that is covered by a polygon.
|
|
4629
|
+
*
|
|
4630
|
+
* This function does not support curved types directly. If curve-to-line
|
|
4631
|
+
* conversion parameters are registered with the context, curved
|
|
4632
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
4633
|
+
* operation will fail.
|
|
4634
|
+
*
|
|
4027
4635
|
* \param g The input geometry
|
|
4028
4636
|
* \param xmin Left bound of grd
|
|
4029
4637
|
* \param ymin Lower bound of grid
|
|
@@ -4054,6 +4662,11 @@ extern int GEOS_DLL GEOSGridIntersectionFractions(
|
|
|
4054
4662
|
* - second element is a MultiLineString containing shared paths
|
|
4055
4663
|
* having the _opposite_ direction on the two inputs
|
|
4056
4664
|
*
|
|
4665
|
+
* This function does not support curved types directly. If curve-to-line
|
|
4666
|
+
* conversion parameters are registered with the context, curved
|
|
4667
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
4668
|
+
* operation will fail.
|
|
4669
|
+
*
|
|
4057
4670
|
* \param g1 An input geometry
|
|
4058
4671
|
* \param g2 An input geometry
|
|
4059
4672
|
* \return The shared paths
|
|
@@ -4069,7 +4682,6 @@ extern GEOSGeometry GEOS_DLL *GEOSSharedPaths(
|
|
|
4069
4682
|
|
|
4070
4683
|
/* ========== Clustering functions ========== */
|
|
4071
4684
|
/** @name Clustering
|
|
4072
|
-
* Functions for clustering geometries
|
|
4073
4685
|
*/
|
|
4074
4686
|
|
|
4075
4687
|
|
|
@@ -4079,36 +4691,51 @@ static const size_t GEOS_CLUSTER_NONE = (size_t) -1;
|
|
|
4079
4691
|
|
|
4080
4692
|
///@{
|
|
4081
4693
|
/**
|
|
4082
|
-
|
|
4083
|
-
|
|
4084
|
-
|
|
4085
|
-
|
|
4086
|
-
|
|
4087
|
-
|
|
4088
|
-
|
|
4089
|
-
|
|
4090
|
-
|
|
4694
|
+
* @brief GEOSClusterDBSCAN
|
|
4695
|
+
*
|
|
4696
|
+
* Cluster geometries using the DBSCAN algorithm
|
|
4697
|
+
*
|
|
4698
|
+
* This function does not support curved types directly. If curve-to-line
|
|
4699
|
+
* conversion parameters are registered with the context, curved
|
|
4700
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
4701
|
+
* operation will fail.
|
|
4702
|
+
*
|
|
4703
|
+
* @param g a collection of geometries to be clustered
|
|
4704
|
+
* @param eps distance parameter for clustering
|
|
4705
|
+
* @param minPoints density parameter for clustering
|
|
4706
|
+
* @return cluster information object
|
|
4707
|
+
*/
|
|
4091
4708
|
extern GEOSClusterInfo GEOS_DLL* GEOSClusterDBSCAN(const GEOSGeometry* g, double eps, unsigned minPoints);
|
|
4092
4709
|
|
|
4093
4710
|
/**
|
|
4094
|
-
|
|
4095
|
-
|
|
4096
|
-
|
|
4097
|
-
|
|
4098
|
-
|
|
4099
|
-
|
|
4100
|
-
|
|
4101
|
-
|
|
4711
|
+
* @brief GEOSClusterGeometryDistance
|
|
4712
|
+
*
|
|
4713
|
+
* Cluster geometries according to a distance threshold
|
|
4714
|
+
*
|
|
4715
|
+
* This function does not support curved types directly. If curve-to-line
|
|
4716
|
+
* conversion parameters are registered with the context, curved
|
|
4717
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
4718
|
+
* operation will fail.
|
|
4719
|
+
*
|
|
4720
|
+
* @param g a collection of geometries to be clustered
|
|
4721
|
+
* @param d minimum distance between geometries in the same cluster
|
|
4722
|
+
* @return cluster information object
|
|
4723
|
+
*/
|
|
4102
4724
|
extern GEOSClusterInfo GEOS_DLL* GEOSClusterGeometryDistance(const GEOSGeometry* g, double d);
|
|
4103
4725
|
|
|
4104
4726
|
/**
|
|
4105
|
-
|
|
4106
|
-
|
|
4107
|
-
|
|
4108
|
-
|
|
4109
|
-
|
|
4110
|
-
|
|
4111
|
-
|
|
4727
|
+
* @brief GEOSClusterGeometryIntersects
|
|
4728
|
+
*
|
|
4729
|
+
* Cluster geometries that intersect
|
|
4730
|
+
*
|
|
4731
|
+
* This function does not support curved types directly. If curve-to-line
|
|
4732
|
+
* conversion parameters are registered with the context, curved
|
|
4733
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
4734
|
+
* operation will fail.
|
|
4735
|
+
*
|
|
4736
|
+
* @param g a collection of geometries to be clustered
|
|
4737
|
+
* @return cluster information object
|
|
4738
|
+
*/
|
|
4112
4739
|
extern GEOSClusterInfo GEOS_DLL* GEOSClusterGeometryIntersects(const GEOSGeometry* g);
|
|
4113
4740
|
|
|
4114
4741
|
/**
|
|
@@ -4116,6 +4743,8 @@ extern GEOSClusterInfo GEOS_DLL* GEOSClusterGeometryIntersects(const GEOSGeometr
|
|
|
4116
4743
|
*
|
|
4117
4744
|
* Cluster geometries according to an envelope distance threshold
|
|
4118
4745
|
*
|
|
4746
|
+
* This function supports curved geometry types.
|
|
4747
|
+
*
|
|
4119
4748
|
* @param g a collection of geometries to be clustered
|
|
4120
4749
|
* @param d minimum envelope distance between geometries in the same cluster
|
|
4121
4750
|
* @return cluster information object
|
|
@@ -4127,6 +4756,8 @@ extern GEOSClusterInfo GEOS_DLL* GEOSClusterEnvelopeDistance(const GEOSGeometry*
|
|
|
4127
4756
|
*
|
|
4128
4757
|
* Cluster geometries whose envelopes intersect
|
|
4129
4758
|
*
|
|
4759
|
+
* This function supports curved geometry types.
|
|
4760
|
+
*
|
|
4130
4761
|
* @param g
|
|
4131
4762
|
* @return cluster information object
|
|
4132
4763
|
*/
|
|
@@ -4193,6 +4824,13 @@ extern void GEOS_DLL GEOSClusterInfo_destroy(GEOSClusterInfo* clusters);
|
|
|
4193
4824
|
|
|
4194
4825
|
/**
|
|
4195
4826
|
* Buffer a geometry.
|
|
4827
|
+
* The coordinates of the constructed geometry will not have Z or M values.
|
|
4828
|
+
*
|
|
4829
|
+
* This function does not support curved types directly. If curve-to-line
|
|
4830
|
+
* conversion parameters are registered with the context, curved
|
|
4831
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
4832
|
+
* operation will fail.
|
|
4833
|
+
*
|
|
4196
4834
|
* \param g The input geometry to be buffered.
|
|
4197
4835
|
* \param width The distance by which to expand the geometry (or contract)
|
|
4198
4836
|
* if the value is negative.
|
|
@@ -4290,6 +4928,12 @@ extern int GEOS_DLL GEOSBufferParams_setSingleSided(
|
|
|
4290
4928
|
|
|
4291
4929
|
/**
|
|
4292
4930
|
* Generates a buffer using the special parameters in the GEOSBufferParams
|
|
4931
|
+
*
|
|
4932
|
+
* This function does not support curved types directly. If curve-to-line
|
|
4933
|
+
* conversion parameters are registered with the context, curved
|
|
4934
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
4935
|
+
* operation will fail.
|
|
4936
|
+
*
|
|
4293
4937
|
* \param g The geometry to buffer
|
|
4294
4938
|
* \param p The parameters to apply to the buffer process
|
|
4295
4939
|
* \param width The buffer distance
|
|
@@ -4305,6 +4949,13 @@ extern GEOSGeometry GEOS_DLL *GEOSBufferWithParams(
|
|
|
4305
4949
|
|
|
4306
4950
|
/**
|
|
4307
4951
|
* Generate a buffer using the provided style parameters.
|
|
4952
|
+
* The coordinates of the constructed geometry will not have Z or M values.
|
|
4953
|
+
*
|
|
4954
|
+
* This function does not support curved types directly. If curve-to-line
|
|
4955
|
+
* conversion parameters are registered with the context, curved
|
|
4956
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
4957
|
+
* operation will fail.
|
|
4958
|
+
*
|
|
4308
4959
|
* \param g The geometry to buffer
|
|
4309
4960
|
* \param width Width of the buffer
|
|
4310
4961
|
* \param quadsegs Number of segments per quadrant
|
|
@@ -4326,7 +4977,13 @@ extern GEOSGeometry GEOS_DLL *GEOSBufferWithStyle(
|
|
|
4326
4977
|
|
|
4327
4978
|
/**
|
|
4328
4979
|
* Generates offset curve line(s) for a geometry.
|
|
4329
|
-
* Handles all geometry types as input.
|
|
4980
|
+
* Handles all non-curved geometry types as input.
|
|
4981
|
+
* The coordinates of the constructed geometry will not have Z or M values.
|
|
4982
|
+
*
|
|
4983
|
+
* This function does not support curved types directly. If curve-to-line
|
|
4984
|
+
* conversion parameters are registered with the context, curved
|
|
4985
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
4986
|
+
* operation will fail.
|
|
4330
4987
|
*
|
|
4331
4988
|
* - For a LineString the result is a LineString.
|
|
4332
4989
|
* - For a Point the result is an empty LineString.
|
|
@@ -4364,6 +5021,16 @@ extern GEOSGeometry GEOS_DLL *GEOSOffsetCurve(const GEOSGeometry* g,
|
|
|
4364
5021
|
* noded and do not overlap. It may generate an error (return NULL)
|
|
4365
5022
|
* for inputs that do not satisfy this constraint, however this is not
|
|
4366
5023
|
* guaranteed.
|
|
5024
|
+
*
|
|
5025
|
+
* This function does not support curved types directly. If curve-to-line
|
|
5026
|
+
* conversion parameters are registered with the context, curved
|
|
5027
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
5028
|
+
* operation will fail.
|
|
5029
|
+
* This function outputs linear geometry types only. If line-to-curve
|
|
5030
|
+
* conversion parameters are registered with the context, and a
|
|
5031
|
+
* curved input was provided, outputs will be automatically
|
|
5032
|
+
* converted to curved types.
|
|
5033
|
+
*
|
|
4367
5034
|
* \param g The input geometry
|
|
4368
5035
|
* \return A geometry that covers all the points of the input geometry.
|
|
4369
5036
|
* Caller is responsible for freeing with GEOSGeom_destroy().
|
|
@@ -4378,6 +5045,11 @@ extern GEOSGeometry GEOS_DLL *GEOSCoverageUnion(const GEOSGeometry *g);
|
|
|
4378
5045
|
* with exactly matching edge geometry) to find places where the
|
|
4379
5046
|
* assumption of exactly matching edges is not met.
|
|
4380
5047
|
*
|
|
5048
|
+
* This function does not support curved types directly. If curve-to-line
|
|
5049
|
+
* conversion parameters are registered with the context, curved
|
|
5050
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
5051
|
+
* operation will fail.
|
|
5052
|
+
*
|
|
4381
5053
|
* \param input The polygonal coverage to access,
|
|
4382
5054
|
* stored in a geometry collection. All members must be POLYGON
|
|
4383
5055
|
* or MULTIPOLYGON.
|
|
@@ -4414,6 +5086,15 @@ extern int GEOS_DLL GEOSCoverageIsValid(
|
|
|
4414
5086
|
* it will still be simplified, but invalid topology such as crossing
|
|
4415
5087
|
* edges will still be invalid.
|
|
4416
5088
|
*
|
|
5089
|
+
* This function does not support curved types directly. If curve-to-line
|
|
5090
|
+
* conversion parameters are registered with the context, curved
|
|
5091
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
5092
|
+
* operation will fail.
|
|
5093
|
+
* This function outputs linear geometry types only. If line-to-curve
|
|
5094
|
+
* conversion parameters are registered with the context, and a
|
|
5095
|
+
* curved input was provided, outputs will be automatically
|
|
5096
|
+
* converted to curved types.
|
|
5097
|
+
*
|
|
4417
5098
|
* \param input The polygonal coverage to access,
|
|
4418
5099
|
* stored in a geometry collection. All members must be POLYGON
|
|
4419
5100
|
* or MULTIPOLYGON.
|
|
@@ -4432,15 +5113,25 @@ extern GEOSGeometry GEOS_DLL * GEOSCoverageSimplifyVW(
|
|
|
4432
5113
|
int preserveBoundary);
|
|
4433
5114
|
|
|
4434
5115
|
/**
|
|
4435
|
-
*
|
|
4436
|
-
*
|
|
5116
|
+
* Returns a MultiLineString representing the unique edges of a polygonal coverage.
|
|
5117
|
+
*
|
|
5118
|
+
* \param input a GeometryCollection or MultiPolygon representing the coverage.
|
|
5119
|
+
* \param edgetype selection type: 0 = ALL, 1 = EXTERIOR (non-shared), 2 = INTERIOR (shared).
|
|
5120
|
+
* \return a MultiLineString of unique edges, or NULL on error.
|
|
5121
|
+
*
|
|
5122
|
+
* \since 3.15
|
|
5123
|
+
*/
|
|
5124
|
+
extern GEOSGeometry GEOS_DLL *GEOSCoverageEdges(const GEOSGeometry *input, int edgetype);
|
|
5125
|
+
|
|
5126
|
+
/**
|
|
5127
|
+
* Create a default GEOSCoverageCleanParams object for controlling* the way invalid polygon interactions are repaired by \ref GEOSCoverageCleanWithParams.
|
|
4437
5128
|
* \return A newly allocated GEOSCoverageCleanParams. NULL on exception.
|
|
4438
5129
|
* Caller is responsible for freeing with GEOSCoverageCleanParams_destroy().
|
|
4439
5130
|
*
|
|
4440
5131
|
* \since 3.14
|
|
4441
5132
|
*/
|
|
4442
5133
|
extern GEOSCoverageCleanParams GEOS_DLL *
|
|
4443
|
-
GEOSCoverageCleanParams_create();
|
|
5134
|
+
GEOSCoverageCleanParams_create(void);
|
|
4444
5135
|
|
|
4445
5136
|
/**
|
|
4446
5137
|
* Destroy a GEOSCoverageCleanParams and free all associated memory.
|
|
@@ -4453,18 +5144,22 @@ GEOSCoverageCleanParams_destroy(
|
|
|
4453
5144
|
GEOSCoverageCleanParams* params);
|
|
4454
5145
|
|
|
4455
5146
|
/**
|
|
5147
|
+
* Set the snapping distance to use when cleaning a coverage.
|
|
5148
|
+
*
|
|
4456
5149
|
* Snapping to nearby vertices and line segment snapping
|
|
4457
5150
|
* is used to improve noding robustness
|
|
4458
|
-
* and eliminate small errors in an efficient way
|
|
5151
|
+
* and eliminate small errors in an efficient way.
|
|
5152
|
+
*
|
|
4459
5153
|
* By default this uses a very small snapping distance
|
|
4460
5154
|
* based on the extent of the input data.
|
|
4461
|
-
*
|
|
4462
|
-
*
|
|
4463
|
-
* and reduce the risk of spikes formed by merging
|
|
4464
|
-
* However, a large snapping distance
|
|
5155
|
+
*
|
|
5156
|
+
* Specifying a larger snapping distance can reduce the number of overlaps and
|
|
5157
|
+
* gaps that need to be merged, and reduce the risk of spikes formed by merging
|
|
5158
|
+
* gaps. However, a large snapping distance can also introduce undesirable
|
|
4465
5159
|
* data alteration.
|
|
4466
5160
|
*
|
|
4467
5161
|
* A distance of zero prevents snapping from being used.
|
|
5162
|
+
*
|
|
4468
5163
|
* \see geos::coverage::CoverageCleaner::setSnappingDistance
|
|
4469
5164
|
* \param params The GEOSCoverageCleanParams to operate on
|
|
4470
5165
|
* \param snappingDistance Set to 0.0 for no snapping.
|
|
@@ -4478,19 +5173,22 @@ GEOSCoverageCleanParams_setSnappingDistance(
|
|
|
4478
5173
|
double snappingDistance);
|
|
4479
5174
|
|
|
4480
5175
|
/**
|
|
4481
|
-
*
|
|
4482
|
-
*
|
|
4483
|
-
*
|
|
4484
|
-
*
|
|
5176
|
+
* Set the maximum width of gaps to merge when cleaning a coverage.
|
|
5177
|
+
*
|
|
5178
|
+
* Gaps wider than the given distance are merged with the adjacent polygon
|
|
5179
|
+
* having the longest shared border with the gap. (The overlap merge strategy
|
|
5180
|
+
* is not used.)
|
|
5181
|
+
*
|
|
5182
|
+
* Gaps are defined as enclosed empty areas with width less than a distance tolerance.
|
|
4485
5183
|
* Empty holes in input polygons are treated as gaps, and may be filled in.
|
|
4486
5184
|
* Gaps which are not fully enclosed ("inlets") are not removed.
|
|
4487
5185
|
*
|
|
4488
|
-
*
|
|
5186
|
+
* Width is computed as the diameter of the Maximum Inscribed Circle of the gap polygon.
|
|
4489
5187
|
* A width of zero prevents gaps from being merged.
|
|
4490
5188
|
*
|
|
4491
5189
|
* \see geos::coverage::CoverageCleaner::setGapMaximumWidth
|
|
4492
5190
|
* \param params The GEOSCoverageCleanParams to operate on
|
|
4493
|
-
* \param gapMaximumWidth Set to 0.0 for no
|
|
5191
|
+
* \param gapMaximumWidth Set to 0.0 for no gap merging.
|
|
4494
5192
|
* \return 0 on exception, 1 on success.
|
|
4495
5193
|
*
|
|
4496
5194
|
* \since 3.14
|
|
@@ -4500,21 +5198,23 @@ GEOSCoverageCleanParams_setGapMaximumWidth(
|
|
|
4500
5198
|
GEOSCoverageCleanParams* params,
|
|
4501
5199
|
double gapMaximumWidth);
|
|
4502
5200
|
|
|
4503
|
-
|
|
5201
|
+
/**
|
|
4504
5202
|
* Sets the overlap merge strategy to use, using one from \ref GEOSOverlapMerge.
|
|
4505
|
-
* Overlaps are merged with an adjacent polygon chosen according to a specified merge strategy.
|
|
4506
|
-
* The supported strategies are:
|
|
4507
5203
|
*
|
|
4508
|
-
*
|
|
4509
|
-
*
|
|
4510
|
-
* * **Minimum Index**: merge with the polygon with the lowest index in the input array (GEOS_MERGE_MIN_INDEX.)
|
|
5204
|
+
* Overlaps are merged with an adjacent polygon chosen according to a specified
|
|
5205
|
+
* merge strategy. The supported strategies are:
|
|
4511
5206
|
*
|
|
4512
|
-
*
|
|
4513
|
-
*
|
|
5207
|
+
* - **Longest Border**: (default) merge with the polygon with longest shared
|
|
5208
|
+
* border (GEOS_MERGE_LONGEST_BORDER.)
|
|
5209
|
+
* - **Maximum/Minimum Area**: merge with the polygon with largest or smallest
|
|
5210
|
+
* area (GEOS_MERGE_MAX_AREA, GEOS_MERGE_MIN_AREA.)
|
|
5211
|
+
* - **Minimum Index**: merge with the polygon with the lowest index in the
|
|
5212
|
+
* input array (GEOS_MERGE_MIN_INDEX.). This allows sorting the input
|
|
5213
|
+
* according to some criteria to provide a priority for merging gaps.
|
|
4514
5214
|
*
|
|
4515
5215
|
* The default is GEOS_MERGE_LONGEST_BORDER.
|
|
4516
5216
|
*
|
|
4517
|
-
* \see geos::coverage::CoverageCleaner::
|
|
5217
|
+
* \see geos::coverage::CoverageCleaner::setOverlapMergeStrategy
|
|
4518
5218
|
* \param params The GEOSCoverageCleanParams to operate on
|
|
4519
5219
|
* \param overlapMergeStrategy One of \ref GEOSOverlapMerge strategies
|
|
4520
5220
|
* \return 0 on exception, 1 on success.
|
|
@@ -4527,15 +5227,26 @@ GEOSCoverageCleanParams_setOverlapMergeStrategy(
|
|
|
4527
5227
|
int overlapMergeStrategy);
|
|
4528
5228
|
|
|
4529
5229
|
/**
|
|
5230
|
+
* Clean a coverage.
|
|
5231
|
+
*
|
|
4530
5232
|
* Operates on a list of polygonal geometry with "exactly matching"
|
|
4531
|
-
* edge geometry
|
|
4532
|
-
* exactly match.
|
|
5233
|
+
* edge geometry. Removes any overlaps and fixes cases where the geometry
|
|
5234
|
+
* does not in fact exactly match.
|
|
4533
5235
|
*
|
|
4534
5236
|
* The input is a collection of polygons, and the output is a collection
|
|
4535
5237
|
* with the same number of cleaned polygons, in the same order as
|
|
4536
5238
|
* the input. Polygons that have collapsed during cleaning will be returned
|
|
4537
5239
|
* as empties.
|
|
4538
5240
|
*
|
|
5241
|
+
* This function does not support curved types directly. If curve-to-line
|
|
5242
|
+
* conversion parameters are registered with the context, curved
|
|
5243
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
5244
|
+
* operation will fail.
|
|
5245
|
+
* This function outputs linear geometry types only. If line-to-curve
|
|
5246
|
+
* conversion parameters are registered with the context, and a
|
|
5247
|
+
* curved input was provided, outputs will be automatically
|
|
5248
|
+
* converted to curved types.
|
|
5249
|
+
*
|
|
4539
5250
|
* \param input The dirty polygonal coverage,
|
|
4540
5251
|
* stored in a geometry collection. All members must be POLYGON
|
|
4541
5252
|
* or MULTIPOLYGON.
|
|
@@ -4571,8 +5282,13 @@ GEOSCoverageClean(
|
|
|
4571
5282
|
///@{
|
|
4572
5283
|
|
|
4573
5284
|
/**
|
|
4574
|
-
* Returns minimum rectangular polygon or point that contains the geometry,
|
|
5285
|
+
* Returns minimum 2D rectangular polygon or point that contains the geometry,
|
|
4575
5286
|
* or an empty point for empty inputs.
|
|
5287
|
+
*
|
|
5288
|
+
* Z and M values in the input coordinates are ignored.
|
|
5289
|
+
*
|
|
5290
|
+
* Cuved geometry types are supported as of GEOS 3.13.
|
|
5291
|
+
*
|
|
4576
5292
|
* \param g The geometry to calculate an envelope for
|
|
4577
5293
|
* \return A newly allocated polygonal envelope or point. NULL on exception.
|
|
4578
5294
|
* Caller is responsible for freeing with GEOSGeom_destroy().
|
|
@@ -4588,6 +5304,10 @@ extern GEOSGeometry GEOS_DLL *GEOSEnvelope(const GEOSGeometry* g);
|
|
|
4588
5304
|
* - the boundary of a linestring is the end points
|
|
4589
5305
|
* - the boundary of a point is the point
|
|
4590
5306
|
*
|
|
5307
|
+
* Z and M values in the input coordinates are preserved.
|
|
5308
|
+
*
|
|
5309
|
+
* Curved geometry types are supported as of GEOS 3.15.
|
|
5310
|
+
*
|
|
4591
5311
|
* \param g The input geometry
|
|
4592
5312
|
* \return A newly allocated geometry of the boundary. NULL on exception.
|
|
4593
5313
|
* Caller is responsible for freeing with GEOSGeom_destroy().
|
|
@@ -4596,8 +5316,17 @@ extern GEOSGeometry GEOS_DLL *GEOSEnvelope(const GEOSGeometry* g);
|
|
|
4596
5316
|
extern GEOSGeometry GEOS_DLL *GEOSBoundary(const GEOSGeometry* g);
|
|
4597
5317
|
|
|
4598
5318
|
/**
|
|
4599
|
-
* Returns convex hull of a geometry. The smallest convex Geometry
|
|
5319
|
+
* Returns the convex hull of a geometry. The smallest convex Geometry
|
|
4600
5320
|
* that contains all the points in the input Geometry
|
|
5321
|
+
*
|
|
5322
|
+
* Z values in the input coordinates will be preserved.
|
|
5323
|
+
* M values in the input coordinates will not be preserved.
|
|
5324
|
+
*
|
|
5325
|
+
* This function does not support curved types directly. If curve-to-line
|
|
5326
|
+
* conversion parameters are registered with the context, curved
|
|
5327
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
5328
|
+
* operation will fail.
|
|
5329
|
+
*
|
|
4601
5330
|
* \param g The input geometry
|
|
4602
5331
|
* \return A newly allocated geometry of the convex hull. NULL on exception.
|
|
4603
5332
|
* Caller is responsible for freeing with GEOSGeom_destroy().
|
|
@@ -4614,6 +5343,9 @@ extern GEOSGeometry GEOS_DLL *GEOSConvexHull(const GEOSGeometry* g);
|
|
|
4614
5343
|
* Frequently used to convert a multi-point into a polygonal area.
|
|
4615
5344
|
* that contains all the points in the input Geometry.
|
|
4616
5345
|
*
|
|
5346
|
+
* Z values in the input coordinates will be preserved.
|
|
5347
|
+
* M values in the input coordinates will not be preserved.
|
|
5348
|
+
*
|
|
4617
5349
|
* A set of points has a sequence of hulls of increasing concaveness,
|
|
4618
5350
|
* determined by a numeric target parameter.
|
|
4619
5351
|
* The concave hull is constructed by removing the longest outer edges
|
|
@@ -4622,6 +5354,11 @@ extern GEOSGeometry GEOS_DLL *GEOSConvexHull(const GEOSGeometry* g);
|
|
|
4622
5354
|
* This can be expressed as a ratio between the lengths of the longest and shortest edges.
|
|
4623
5355
|
* 1 produces the convex hull; 0 produces a hull with maximum concaveness
|
|
4624
5356
|
*
|
|
5357
|
+
* This function does not support curved types directly. If curve-to-line
|
|
5358
|
+
* conversion parameters are registered with the context, curved
|
|
5359
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
5360
|
+
* operation will fail.
|
|
5361
|
+
*
|
|
4625
5362
|
* \param g The input geometry
|
|
4626
5363
|
* \param ratio The edge length ratio value, between 0 and 1.
|
|
4627
5364
|
* \param allowHoles When non-zero, the polygonal output may contain holes.
|
|
@@ -4649,13 +5386,21 @@ extern GEOSGeometry GEOS_DLL *GEOSConcaveHull(
|
|
|
4649
5386
|
* Frequently used to convert a multi-point into a polygonal area.
|
|
4650
5387
|
* that contains all the points in the input Geometry.
|
|
4651
5388
|
*
|
|
5389
|
+
* Z values in the input coordinates will be preserved.
|
|
5390
|
+
* M values in the input coordinates will not be preserved.
|
|
5391
|
+
*
|
|
4652
5392
|
* A set of points has a sequence of hulls of increasing concaveness,
|
|
4653
5393
|
* determined by a numeric target parameter.
|
|
4654
5394
|
* The concave hull is constructed by removing the longest outer edges
|
|
4655
5395
|
* of the Delaunay Triangulation of the space between the polygons,
|
|
4656
|
-
* until the specified
|
|
5396
|
+
* until the specified maximum edge length is reached.
|
|
4657
5397
|
* A large value produces the convex hull, 0 produces the hull of maximum concaveness.
|
|
4658
5398
|
*
|
|
5399
|
+
* This function does not support curved types directly. If curve-to-line
|
|
5400
|
+
* conversion parameters are registered with the context, curved
|
|
5401
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
5402
|
+
* operation will fail.
|
|
5403
|
+
*
|
|
4659
5404
|
* \param g The input geometry
|
|
4660
5405
|
* \param length The maximum edge length (0 or greater)
|
|
4661
5406
|
* \param allowHoles When non-zero, the polygonal output may contain holes.
|
|
@@ -4694,6 +5439,11 @@ extern GEOSGeometry GEOS_DLL *GEOSConcaveHullByLength(
|
|
|
4694
5439
|
* The input polygons *must* be a *valid* MultiPolygon
|
|
4695
5440
|
* (i.e. they must be non-overlapping).
|
|
4696
5441
|
*
|
|
5442
|
+
* This function does not support curved types directly. If curve-to-line
|
|
5443
|
+
* conversion parameters are registered with the context, curved
|
|
5444
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
5445
|
+
* operation will fail.
|
|
5446
|
+
*
|
|
4697
5447
|
* \param g the valid MultiPolygon geometry to process
|
|
4698
5448
|
* \param lengthRatio specifies the Maximum Edge Length as a
|
|
4699
5449
|
* fraction of the difference between the longest and
|
|
@@ -4701,8 +5451,8 @@ extern GEOSGeometry GEOS_DLL *GEOSConcaveHullByLength(
|
|
|
4701
5451
|
* This normalizes the Maximum Edge Length to be scale-free.
|
|
4702
5452
|
* A value of 1 produces the convex hull; a value of 0 produces
|
|
4703
5453
|
* the original polygons.
|
|
5454
|
+
* \param isTight does the hull follow the outer boundaries of the input polygons?
|
|
4704
5455
|
* \param isHolesAllowed is the concave hull allowed to contain holes?
|
|
4705
|
-
* \param isTight does the hull follow the outer boundaries of the input polygons.
|
|
4706
5456
|
* \return A newly allocated geometry of the concave hull. NULL on exception.
|
|
4707
5457
|
*
|
|
4708
5458
|
* Caller is responsible for freeing with GEOSGeom_destroy().
|
|
@@ -4728,6 +5478,15 @@ extern GEOSGeometry GEOS_DLL *GEOSConcaveHullOfPolygons(
|
|
|
4728
5478
|
* An outer hull is computed if the parameter is positive,
|
|
4729
5479
|
* an inner hull is computed if it is negative.
|
|
4730
5480
|
*
|
|
5481
|
+
* This function does not support curved types directly. If curve-to-line
|
|
5482
|
+
* conversion parameters are registered with the context, curved
|
|
5483
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
5484
|
+
* operation will fail.
|
|
5485
|
+
* This function outputs linear geometry types only. If line-to-curve
|
|
5486
|
+
* conversion parameters are registered with the context, and a
|
|
5487
|
+
* curved input was provided, outputs will be automatically
|
|
5488
|
+
* converted to curved types.
|
|
5489
|
+
*
|
|
4731
5490
|
* \param g the polygonal geometry to process
|
|
4732
5491
|
* \param isOuter indicates whether to compute an outer or inner hull (1 for outer hull, 0 for inner)
|
|
4733
5492
|
* \param vertexNumFraction the target fraction of the count of input vertices to retain in result
|
|
@@ -4744,16 +5503,6 @@ extern GEOSGeometry GEOS_DLL *GEOSPolygonHullSimplify(
|
|
|
4744
5503
|
double vertexNumFraction);
|
|
4745
5504
|
|
|
4746
5505
|
|
|
4747
|
-
/**
|
|
4748
|
-
* Controls the behavior of the GEOSPolygonHullSimplify parameter.
|
|
4749
|
-
*/
|
|
4750
|
-
enum GEOSPolygonHullParameterModes {
|
|
4751
|
-
/** Fraction of input vertices retained */
|
|
4752
|
-
GEOSHULL_PARAM_VERTEX_RATIO = 1,
|
|
4753
|
-
/** Ratio of simplified hull area to input area */
|
|
4754
|
-
GEOSHULL_PARAM_AREA_RATIO = 2
|
|
4755
|
-
};
|
|
4756
|
-
|
|
4757
5506
|
/**
|
|
4758
5507
|
* Computes a topology-preserving simplified hull of a polygonal geometry,
|
|
4759
5508
|
* with hull shape determined by the parameter, controlled by a parameter
|
|
@@ -4762,6 +5511,15 @@ enum GEOSPolygonHullParameterModes {
|
|
|
4762
5511
|
* produces the original geometry.
|
|
4763
5512
|
* Either outer or inner hulls can be computed.
|
|
4764
5513
|
*
|
|
5514
|
+
* This function does not support curved types directly. If curve-to-line
|
|
5515
|
+
* conversion parameters are registered with the context, curved
|
|
5516
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
5517
|
+
* operation will fail.
|
|
5518
|
+
* This function outputs linear geometry types only. If line-to-curve
|
|
5519
|
+
* conversion parameters are registered with the context, and a
|
|
5520
|
+
* curved input was provided, outputs will be automatically
|
|
5521
|
+
* converted to curved types.
|
|
5522
|
+
*
|
|
4765
5523
|
* \param g the polygonal geometry to process
|
|
4766
5524
|
* \param isOuter indicates whether to compute an outer or inner hull (1 for outer hull, 0 for inner)
|
|
4767
5525
|
* \param parameterMode the interpretation to apply to the parameter argument; see \ref GEOSPolygonHullParameterModes
|
|
@@ -4788,6 +5546,12 @@ extern GEOSGeometry GEOS_DLL *GEOSPolygonHullSimplifyMode(
|
|
|
4788
5546
|
* the input is degenerate (a line or point) a linestring or point
|
|
4789
5547
|
* is returned. The minimum rotated rectangle can be used as an
|
|
4790
5548
|
* extremely generalized representation for the given geometry.
|
|
5549
|
+
*
|
|
5550
|
+
* This function does not support curved types directly. If curve-to-line
|
|
5551
|
+
* conversion parameters are registered with the context, curved
|
|
5552
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
5553
|
+
* operation will fail.
|
|
5554
|
+
*
|
|
4791
5555
|
* \param g The input geometry
|
|
4792
5556
|
* \return A newly allocated geometry of the rotated envelope. NULL on exception.
|
|
4793
5557
|
* Caller is responsible for freeing with GEOSGeom_destroy().
|
|
@@ -4812,6 +5576,12 @@ extern GEOSGeometry GEOS_DLL *GEOSMinimumRotatedRectangle(const GEOSGeometry* g)
|
|
|
4812
5576
|
* way by using spatial indexes.
|
|
4813
5577
|
* Returns a two-point linestring, with one point at the center of the inscribed circle and the other
|
|
4814
5578
|
* on the boundary of the inscribed circle.
|
|
5579
|
+
*
|
|
5580
|
+
* This function does not support curved types directly. If curve-to-line
|
|
5581
|
+
* conversion parameters are registered with the context, curved
|
|
5582
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
5583
|
+
* operation will fail.
|
|
5584
|
+
*
|
|
4815
5585
|
* \param g Input geometry
|
|
4816
5586
|
* \param tolerance Stop the algorithm when the search area is smaller than this tolerance
|
|
4817
5587
|
* \return A newly allocated geometry of the MIC. NULL on exception.
|
|
@@ -4837,17 +5607,22 @@ extern GEOSGeometry GEOS_DLL *GEOSMaximumInscribedCircle(
|
|
|
4837
5607
|
* the obstacles (up to the given distance tolerance).
|
|
4838
5608
|
* The LEC is determined by the center point and a point indicating the circle radius
|
|
4839
5609
|
* (which will lie on an obstacle).
|
|
4840
|
-
*
|
|
5610
|
+
*
|
|
4841
5611
|
* To compute an LEC which lies **wholly** within a polygonal boundary,
|
|
4842
5612
|
* include the boundary of the polygon(s) as a linear obstacle.
|
|
4843
|
-
*
|
|
5613
|
+
*
|
|
4844
5614
|
* The implementation uses a successive-approximation technique over a grid of square cells covering the obstacles and boundary.
|
|
4845
5615
|
* The grid is refined using a branch-and-bound algorithm. Point containment and distance are computed in a performant
|
|
4846
5616
|
* way by using spatial indexes.
|
|
4847
|
-
*
|
|
5617
|
+
*
|
|
4848
5618
|
* Returns the LEC radius as a two-point linestring, with the start point at the center of the inscribed circle and the end
|
|
4849
5619
|
* on the boundary of the circle.
|
|
4850
5620
|
*
|
|
5621
|
+
* This function does not support curved types directly. If curve-to-line
|
|
5622
|
+
* conversion parameters are registered with the context, curved
|
|
5623
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
5624
|
+
* operation will fail.
|
|
5625
|
+
*
|
|
4851
5626
|
* \param obstacles The geometries that the LEC must not cross
|
|
4852
5627
|
* \param boundary The area to contain the LEC center (may be null or empty)
|
|
4853
5628
|
* \param tolerance Stop the algorithm when the search area is smaller than this tolerance
|
|
@@ -4868,6 +5643,12 @@ extern GEOSGeometry GEOS_DLL *GEOSLargestEmptyCircle(
|
|
|
4868
5643
|
* contains the geometry, where a band is a strip of the plane defined
|
|
4869
5644
|
* by two parallel lines. This can be thought of as the smallest hole that the geometry
|
|
4870
5645
|
* can be moved through, with a single rotation.
|
|
5646
|
+
*
|
|
5647
|
+
* This function does not support curved types directly. If curve-to-line
|
|
5648
|
+
* conversion parameters are registered with the context, curved
|
|
5649
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
5650
|
+
* operation will fail.
|
|
5651
|
+
*
|
|
4871
5652
|
* \param g The input geometry
|
|
4872
5653
|
* \return A newly allocated geometry of the LEC. NULL on exception.
|
|
4873
5654
|
* Caller is responsible for freeing with GEOSGeom_destroy().
|
|
@@ -4879,7 +5660,13 @@ extern GEOSGeometry GEOS_DLL *GEOSMinimumWidth(const GEOSGeometry* g);
|
|
|
4879
5660
|
|
|
4880
5661
|
|
|
4881
5662
|
/**
|
|
4882
|
-
* Returns a point that is inside the boundary of a polygonal geometry.
|
|
5663
|
+
* Returns a 2D point that is inside the boundary of a polygonal geometry.
|
|
5664
|
+
*
|
|
5665
|
+
* This function does not support curved types directly. If curve-to-line
|
|
5666
|
+
* conversion parameters are registered with the context, curved
|
|
5667
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
5668
|
+
* operation will fail.
|
|
5669
|
+
*
|
|
4883
5670
|
* \param g The input geometry
|
|
4884
5671
|
* \return A point that is inside the input
|
|
4885
5672
|
* Caller is responsible for freeing with GEOSGeom_destroy().
|
|
@@ -4890,7 +5677,13 @@ extern GEOSGeometry GEOS_DLL *GEOSMinimumWidth(const GEOSGeometry* g);
|
|
|
4890
5677
|
extern GEOSGeometry GEOS_DLL *GEOSPointOnSurface(const GEOSGeometry* g);
|
|
4891
5678
|
|
|
4892
5679
|
/**
|
|
4893
|
-
* Returns a point at the center of mass of the input.
|
|
5680
|
+
* Returns a 2D point at the center of mass of the input.
|
|
5681
|
+
*
|
|
5682
|
+
* This function does not support curved types directly. If curve-to-line
|
|
5683
|
+
* conversion parameters are registered with the context, curved
|
|
5684
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
5685
|
+
* operation will fail.
|
|
5686
|
+
*
|
|
4894
5687
|
* \param g The input geometry
|
|
4895
5688
|
* \return A point at the center of mass of the input
|
|
4896
5689
|
* Caller is responsible for freeing with GEOSGeom_destroy().
|
|
@@ -4901,8 +5694,14 @@ extern GEOSGeometry GEOS_DLL *GEOSPointOnSurface(const GEOSGeometry* g);
|
|
|
4901
5694
|
extern GEOSGeometry GEOS_DLL *GEOSGetCentroid(const GEOSGeometry* g);
|
|
4902
5695
|
|
|
4903
5696
|
/**
|
|
4904
|
-
* Returns a geometry which represents the "minimum bounding circle",
|
|
5697
|
+
* Returns a 2D geometry which represents the "minimum bounding circle",
|
|
4905
5698
|
* the smallest circle that contains the input.
|
|
5699
|
+
*
|
|
5700
|
+
* This function does not support curved types directly. If curve-to-line
|
|
5701
|
+
* conversion parameters are registered with the context, curved
|
|
5702
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
5703
|
+
* operation will fail.
|
|
5704
|
+
*
|
|
4906
5705
|
* \param[in] g The input geometry
|
|
4907
5706
|
* \param[out] radius Pointer will be filled with output radius.
|
|
4908
5707
|
* \param[out] center Pointer will be filled with output circle center. Caller must free.
|
|
@@ -4920,6 +5719,12 @@ extern GEOSGeometry GEOS_DLL *GEOSMinimumBoundingCircle(
|
|
|
4920
5719
|
/**
|
|
4921
5720
|
* Return a Delaunay triangulation of the vertices of the given geometry.
|
|
4922
5721
|
*
|
|
5722
|
+
* Z values from the input points will be propagated to the generated polygons.
|
|
5723
|
+
* M values from the input points will be ignored.
|
|
5724
|
+
*
|
|
5725
|
+
* Curved geometries are supported since GEOS 3.15. For curved geometries,
|
|
5726
|
+
* the control point and endpoints of each arc will be used as input vertices.
|
|
5727
|
+
*
|
|
4923
5728
|
* \param g the input geometry whose vertices will be used as "sites"
|
|
4924
5729
|
* \param tolerance optional snapping tolerance to use for improved robustness
|
|
4925
5730
|
* \param onlyEdges if non-zero will return a MultiLineString, otherwise it will
|
|
@@ -4940,6 +5745,14 @@ extern GEOSGeometry GEOS_DLL * GEOSDelaunayTriangulation(
|
|
|
4940
5745
|
* given polygon(s).
|
|
4941
5746
|
* For non-polygonal inputs, returns an empty geometry collection.
|
|
4942
5747
|
*
|
|
5748
|
+
* Z values from the input points will be propagated to the generated polygons.
|
|
5749
|
+
* M values from the input points will be ignored.
|
|
5750
|
+
*
|
|
5751
|
+
* This function does not support curved types directly. If curve-to-line
|
|
5752
|
+
* conversion parameters are registered with the context, curved
|
|
5753
|
+
* inputs will be automatically converted to lines. Otherwise, the
|
|
5754
|
+
* operation will fail.
|
|
5755
|
+
*
|
|
4943
5756
|
* \param g the input geometry whose rings will be used as input
|
|
4944
5757
|
* \return A newly allocated geometry. NULL on exception.
|
|
4945
5758
|
* Caller is responsible for freeing with GEOSGeom_destroy().
|
|
@@ -4949,19 +5762,12 @@ extern GEOSGeometry GEOS_DLL * GEOSDelaunayTriangulation(
|
|
|
4949
5762
|
extern GEOSGeometry GEOS_DLL * GEOSConstrainedDelaunayTriangulation(
|
|
4950
5763
|
const GEOSGeometry *g);
|
|
4951
5764
|
|
|
4952
|
-
/** Change behaviour of \ref GEOSVoronoiDiagram */
|
|
4953
|
-
enum GEOSVoronoiFlags
|
|
4954
|
-
{
|
|
4955
|
-
/** Return only edges of the Voronoi cells, as a MultiLineString **/
|
|
4956
|
-
GEOS_VORONOI_ONLY_EDGES = 1,
|
|
4957
|
-
/** Preserve order of inputs, such that the nth cell in the result corresponds
|
|
4958
|
-
* to the nth vertex in the input. If this cannot be done, such as for inputs
|
|
4959
|
-
* that contain repeated points, \ref GEOSVoronoiDiagram will return NULL. **/
|
|
4960
|
-
GEOS_VORONOI_PRESERVE_ORDER = 2
|
|
4961
|
-
};
|
|
4962
|
-
|
|
4963
5765
|
/**
|
|
4964
|
-
* Returns the Voronoi polygons or edges
|
|
5766
|
+
* Returns the 2D Voronoi polygons or edges computed from the vertices
|
|
5767
|
+
* of the given geometry.
|
|
5768
|
+
*
|
|
5769
|
+
* Curved geometries are supported since GEOS 3.15. For curved geometries,
|
|
5770
|
+
* the control point and endpoints of each arc will be used as input vertices.
|
|
4965
5771
|
*
|
|
4966
5772
|
* \param g the input geometry whose vertices will be used as sites.
|
|
4967
5773
|
* \param tolerance snapping tolerance to use for improved robustness. A
|
|
@@ -4997,6 +5803,12 @@ extern GEOSGeometry GEOS_DLL * GEOSVoronoiDiagram(
|
|
|
4997
5803
|
/**
|
|
4998
5804
|
* For linear inputs, returns a new geometry in which no lines cross
|
|
4999
5805
|
* each other, and all touching occurs at end points.
|
|
5806
|
+
*
|
|
5807
|
+
* Z and M values of input coordinates will be preserved.
|
|
5808
|
+
* Z and M values at constructed points will be interpolated.
|
|
5809
|
+
*
|
|
5810
|
+
* Curved geometry types are supported since GEOS 3.15.
|
|
5811
|
+
*
|
|
5000
5812
|
* \param g The input geometry
|
|
5001
5813
|
* \return The noded geometry or NULL on exception
|
|
5002
5814
|
* Caller is responsible for freeing with GEOSGeom_destroy().
|
|
@@ -5006,13 +5818,34 @@ extern GEOSGeometry GEOS_DLL * GEOSVoronoiDiagram(
|
|
|
5006
5818
|
*/
|
|
5007
5819
|
extern GEOSGeometry GEOS_DLL *GEOSNode(const GEOSGeometry* g);
|
|
5008
5820
|
|
|
5821
|
+
|
|
5822
|
+
/** Split a linear or polygonal input
|
|
5823
|
+
*
|
|
5824
|
+
* Linear inputs can be split with points, lines, and/or polygons.
|
|
5825
|
+
* Polygons can be split with lines and/or polygons.
|
|
5826
|
+
*
|
|
5827
|
+
* The returned geometry will be a GeometryCollection containing the
|
|
5828
|
+
* split elements.
|
|
5829
|
+
*
|
|
5830
|
+
* \param g The geometry to split
|
|
5831
|
+
* \param edge the geometry containing splitting edges/points
|
|
5832
|
+
* \return the split geometry or NULL on exception.
|
|
5833
|
+
* Caller is responsible for freeing with GEOSGeom_destroy().
|
|
5834
|
+
*
|
|
5835
|
+
* \since 3.15
|
|
5836
|
+
*/
|
|
5837
|
+
extern GEOSGeometry GEOS_DLL *GEOSSplit(const GEOSGeometry* g, const GEOSGeometry* edge);
|
|
5838
|
+
|
|
5009
5839
|
/**
|
|
5010
5840
|
* Polygonizes a set of Geometries which contain linework that
|
|
5011
5841
|
* represents the edges of a planar graph.
|
|
5012
5842
|
*
|
|
5013
|
-
* All types of Geometry are accepted as input; the constituent
|
|
5843
|
+
* All non-curved types of Geometry are accepted as input; the constituent
|
|
5014
5844
|
* linework is extracted as the edges to be polygonized.
|
|
5015
5845
|
*
|
|
5846
|
+
* Z and M values from the input linework will be preserved.
|
|
5847
|
+
* Curved geometries are supported since GEOS 3.15.
|
|
5848
|
+
*
|
|
5016
5849
|
* The edges must be correctly noded; that is, they must only meet
|
|
5017
5850
|
* at their endpoints and not overlap anywhere. If your edges are not
|
|
5018
5851
|
* already noded, run them through GEOSUnaryUnion() first.
|
|
@@ -5040,7 +5873,7 @@ extern GEOSGeometry GEOS_DLL *GEOSNode(const GEOSGeometry* g);
|
|
|
5040
5873
|
* that the input lines form a valid polygonal geometry (which may
|
|
5041
5874
|
* include holes or nested polygons).
|
|
5042
5875
|
*
|
|
5043
|
-
* \param geoms Array of linear geometries to
|
|
5876
|
+
* \param geoms Array of linear geometries to polygonize. Caller retains ownership of both array container and objects.
|
|
5044
5877
|
* \param ngeoms Size of the geoms array.
|
|
5045
5878
|
* \return The polygonal output geometry.
|
|
5046
5879
|
* Caller is responsible for freeing with GEOSGeom_destroy().
|
|
@@ -5057,7 +5890,10 @@ extern GEOSGeometry GEOS_DLL *GEOSPolygonize(
|
|
|
5057
5890
|
* but returns a result which is a valid polygonal geometry.
|
|
5058
5891
|
* The result will not contain any edge-adjacent elements.
|
|
5059
5892
|
*
|
|
5060
|
-
*
|
|
5893
|
+
* Z and M values from the input linework will be preserved.
|
|
5894
|
+
* Curved geometries are supported since GEOS 3.15.
|
|
5895
|
+
*
|
|
5896
|
+
* \param geoms Array of linear geometries to polygonize. Caller retains ownership of both array container and objects.
|
|
5061
5897
|
* \param ngeoms Size of the geoms array.
|
|
5062
5898
|
* \return The polygonal output geometry.
|
|
5063
5899
|
* Caller is responsible for freeing with GEOSGeom_destroy().
|
|
@@ -5075,7 +5911,10 @@ extern GEOSGeometry GEOS_DLL *GEOSPolygonize_valid(
|
|
|
5075
5911
|
* "cut edges", the linear features that are connected at both ends,
|
|
5076
5912
|
* do *not* participate in the final polygon.
|
|
5077
5913
|
*
|
|
5078
|
-
*
|
|
5914
|
+
* Z and M values from the input linework will be preserved.
|
|
5915
|
+
* Curved geometries are supported since GEOS 3.15.
|
|
5916
|
+
*
|
|
5917
|
+
* \param geoms Array of linear geometries to polygonize. Caller retains ownership of both array container and objects.
|
|
5079
5918
|
* \param ngeoms Size of the geoms array.
|
|
5080
5919
|
* \return The "cut edges"
|
|
5081
5920
|
* Caller is responsible for freeing with GEOSGeom_destroy().
|
|
@@ -5091,6 +5930,9 @@ extern GEOSGeometry GEOS_DLL *GEOSPolygonizer_getCutEdges(
|
|
|
5091
5930
|
* Perform the polygonization as GEOSPolygonize() and return the
|
|
5092
5931
|
* polygonal result as well as all extra outputs.
|
|
5093
5932
|
*
|
|
5933
|
+
* Z and M values from the input linework will be preserved.
|
|
5934
|
+
* Curved geometries are supported since GEOS 3.15.
|
|
5935
|
+
*
|
|
5094
5936
|
* \param[in] input A single geometry with all the input lines to polygonize.
|
|
5095
5937
|
* \param[out] cuts Pointer to hold "cut edges", connected on both ends but not part of output. Caller must free.
|
|
5096
5938
|
* \param[out] dangles Pointer to hold "dangles", connected one end but not part of output. Caller must free.
|
|
@@ -5132,8 +5974,14 @@ extern GEOSGeometry GEOS_DLL *GEOSBuildArea(const GEOSGeometry* g);
|
|
|
5132
5974
|
* Densifies a geometry using a given distance tolerance.
|
|
5133
5975
|
* Additional vertices will be added to every line segment
|
|
5134
5976
|
* that is greater this tolerance; these vertices will
|
|
5135
|
-
* evenly subdivide that segment.
|
|
5977
|
+
* evenly subdivide that segment. Z and M values of added
|
|
5978
|
+
* vertices will be interpolated.
|
|
5136
5979
|
* Only linear components of input geometry are densified.
|
|
5980
|
+
*
|
|
5981
|
+
* Curved geometries are not supported, unless curve-to-line parameters are
|
|
5982
|
+
* registered with the context handle. Output geometries will not contain
|
|
5983
|
+
* curves.
|
|
5984
|
+
*
|
|
5137
5985
|
* \param g The geometry to densify
|
|
5138
5986
|
* \param tolerance the distance tolerance to densify
|
|
5139
5987
|
* \return The densified geometry, or NULL on exception.
|
|
@@ -5149,7 +5997,13 @@ extern GEOSGeometry GEOS_DLL *GEOSDensify(
|
|
|
5149
5997
|
* Merges a set of LineStrings,
|
|
5150
5998
|
* joining them at nodes which have cardinality 2.
|
|
5151
5999
|
* Lines may have their direction reversed.
|
|
5152
|
-
|
|
6000
|
+
*
|
|
6001
|
+
* Z and M values from the input will be preserved. If the Z and M
|
|
6002
|
+
* values differ at the points where two lines are joined, the values
|
|
6003
|
+
* from one of the points will be selected.
|
|
6004
|
+
*
|
|
6005
|
+
* Curved geometry types are supported since GEOS 3.15.
|
|
6006
|
+
*
|
|
5153
6007
|
* \param g The input linework
|
|
5154
6008
|
* \return The merged linework.
|
|
5155
6009
|
* Caller is responsible for freeing with GEOSGeom_destroy().
|
|
@@ -5159,11 +6013,34 @@ extern GEOSGeometry GEOS_DLL *GEOSDensify(
|
|
|
5159
6013
|
extern GEOSGeometry GEOS_DLL *GEOSLineMerge(const GEOSGeometry* g);
|
|
5160
6014
|
|
|
5161
6015
|
/**
|
|
5162
|
-
*
|
|
5163
|
-
*
|
|
6016
|
+
* Computes the Minimum Spanning Tree of the given Curves.
|
|
6017
|
+
*
|
|
6018
|
+
* The input is an array of Curves (LineString, CircularString, CompoundCurve)
|
|
6019
|
+
* which form the edges of a graph.
|
|
6020
|
+
* The nodes of the graph are the endpoints of the Curves.
|
|
6021
|
+
* Coincident endpoints are treated as the same node.
|
|
6022
|
+
*
|
|
6023
|
+
* \param geoms Input array of Curves. Non-Curve geometries are ignored.
|
|
6024
|
+
* \param ngeoms Number of geometries in the input array.
|
|
6025
|
+
* \return An array of size_t of size ngeoms. 0 if the edge is not in the MST.
|
|
6026
|
+
* Values > 0 indicate the component ID of the subtree the edge belongs to.
|
|
6027
|
+
* The caller is responsible for freeing the returned array using GEOSFree().
|
|
6028
|
+
* Returns NULL if ngeoms is 0 or on error.
|
|
6029
|
+
* \since 3.15.0
|
|
6030
|
+
*/
|
|
6031
|
+
extern size_t GEOS_DLL *GEOSMinimumSpanningTree(const GEOSGeometry * const geoms[], unsigned int ngeoms);
|
|
6032
|
+
|
|
6033
|
+
/**
|
|
6034
|
+
* Merges a set of LineStrings,* joining them at nodes which have cardinality 2.
|
|
5164
6035
|
* and where the lines have the same direction.
|
|
5165
6036
|
* This means that lines do not have their direction reversed.
|
|
5166
|
-
|
|
6037
|
+
*
|
|
6038
|
+
* Z and M values from the input will be preserved. If the Z and M
|
|
6039
|
+
* values differ at the points where two lines are joined, the values
|
|
6040
|
+
* from one of the points will be selected.
|
|
6041
|
+
*
|
|
6042
|
+
* Curved geometry types are supported since GEOS 3.15.
|
|
6043
|
+
*
|
|
5167
6044
|
* \param g The input linework
|
|
5168
6045
|
* \return The merged linework.
|
|
5169
6046
|
* Caller is responsible for freeing with GEOSGeom_destroy().
|
|
@@ -5176,6 +6053,10 @@ extern GEOSGeometry GEOS_DLL *GEOSLineMergeDirected(const GEOSGeometry* g);
|
|
|
5176
6053
|
/**
|
|
5177
6054
|
* Computes the line which is the section of the input LineString starting and
|
|
5178
6055
|
* ending at the given length fractions.
|
|
6056
|
+
*
|
|
6057
|
+
* Z values will be interpolated from the input.
|
|
6058
|
+
* M values from the input will be ignored.
|
|
6059
|
+
*
|
|
5179
6060
|
* \param g The input LineString
|
|
5180
6061
|
* \param start_fraction start fraction (0-1) along the length of g
|
|
5181
6062
|
* \param end_fraction end fraction (0-1) along the length of g
|
|
@@ -5192,7 +6073,11 @@ extern GEOSGeometry GEOS_DLL *GEOSLineSubstring(
|
|
|
5192
6073
|
/**
|
|
5193
6074
|
* For geometries with coordinate sequences, reverses the order
|
|
5194
6075
|
* of the sequences. Converts CCW rings to CW. Reverses direction
|
|
5195
|
-
* of LineStrings.
|
|
6076
|
+
* of LineStrings. Z and M values of the input coordinates are
|
|
6077
|
+
* preserved.
|
|
6078
|
+
*
|
|
6079
|
+
* Curved geometry types are supported since GEOS 3.13.
|
|
6080
|
+
*
|
|
5196
6081
|
* \param g The input geometry
|
|
5197
6082
|
* \return The reversed geometry
|
|
5198
6083
|
* Caller is responsible for freeing with GEOSGeom_destroy().
|
|
@@ -5207,6 +6092,7 @@ extern GEOSGeometry GEOS_DLL *GEOSReverse(const GEOSGeometry* g);
|
|
|
5207
6092
|
* to the coordinate sequences of the input geometry.
|
|
5208
6093
|
* Removes "unnecessary" vertices, vertices
|
|
5209
6094
|
* that are co-linear within the tolerance distance.
|
|
6095
|
+
* Z and M values on the retained coordinates will be preserved.
|
|
5210
6096
|
* \param g The input geometry
|
|
5211
6097
|
* \param tolerance The tolerance to apply. Larger tolerance leads to simpler output.
|
|
5212
6098
|
* \return The simplified geometry
|
|
@@ -5227,6 +6113,8 @@ extern GEOSGeometry GEOS_DLL *GEOSSimplify(
|
|
|
5227
6113
|
* that are co-linear within the tolerance distance.
|
|
5228
6114
|
* Returns a valid output geometry, checking for collapses, ring-intersections, etc
|
|
5229
6115
|
* and attempting to avoid. More computationally expensive than GEOSSimplify()
|
|
6116
|
+
* Z values on the retained coordinates will be preserved.
|
|
6117
|
+
* M values will not be preserved.
|
|
5230
6118
|
* \param g The input geometry
|
|
5231
6119
|
* \param tolerance The tolerance to apply. Larger tolerance leads to simpler output.
|
|
5232
6120
|
* \return The simplified geometry
|
|
@@ -5243,6 +6131,12 @@ extern GEOSGeometry GEOS_DLL *GEOSTopologyPreserveSimplify(
|
|
|
5243
6131
|
* Return all distinct vertices of input geometry as a MultiPoint.
|
|
5244
6132
|
* Note that only 2 dimensions of the vertices are considered when
|
|
5245
6133
|
* testing for equality.
|
|
6134
|
+
*
|
|
6135
|
+
* Z values on the retained coordinates will be preserved.
|
|
6136
|
+
* M values will not be preserved.
|
|
6137
|
+
*
|
|
6138
|
+
* Curved geometry types are supported since GEOS 3.13.
|
|
6139
|
+
*
|
|
5246
6140
|
* \param g The input geometry
|
|
5247
6141
|
* \return The distinct points
|
|
5248
6142
|
* Caller is responsible for freeing with GEOSGeom_destroy().
|
|
@@ -5255,10 +6149,13 @@ extern GEOSGeometry GEOS_DLL *GEOSGeom_extractUniquePoints(
|
|
|
5255
6149
|
/**
|
|
5256
6150
|
* Calculate the
|
|
5257
6151
|
* [Hilbert code](https://en.wikipedia.org/wiki/Hilbert_curve)
|
|
5258
|
-
* of the
|
|
6152
|
+
* of the center of a geometry's bounding box relative to a larger extent.
|
|
5259
6153
|
* This allows sorting geometries in a deterministic way, such that similar Hilbert codes are
|
|
5260
6154
|
* likely to be near each other in two-dimensional space.
|
|
5261
6155
|
* The caller must ensure that the geometry is contained within the extent.
|
|
6156
|
+
*
|
|
6157
|
+
* Curved geometries are supported since GEOS 3.13.
|
|
6158
|
+
*
|
|
5262
6159
|
* \param[in] geom Input geometry, must be non-empty
|
|
5263
6160
|
* \param[in] extent Extent within which to calculate the Hilbert code for geom
|
|
5264
6161
|
* \param[in] level The level of precision of the Hilbert curve, up to 16
|
|
@@ -5278,6 +6175,9 @@ extern int GEOS_DLL GEOSHilbertCode(
|
|
|
5278
6175
|
* Apply XY coordinate transform callback to all coordinates in a copy of
|
|
5279
6176
|
* input geometry. If the callback returns an error, returned geometry will be
|
|
5280
6177
|
* NULL. Z and M values, if present, are not modified by this function.
|
|
6178
|
+
*
|
|
6179
|
+
* Curved geometry types are supported since GEOS 3.13.
|
|
6180
|
+
*
|
|
5281
6181
|
* \param[in] g Input geometry
|
|
5282
6182
|
* \param[in] callback a function to be executed for each coordinate in the
|
|
5283
6183
|
geometry. The callback takes 3 parameters: x and y coordinate
|
|
@@ -5297,6 +6197,9 @@ extern GEOSGeometry GEOS_DLL *GEOSGeom_transformXY(
|
|
|
5297
6197
|
* Apply XYZ coordinate transform callback to all coordinates in a copy of
|
|
5298
6198
|
* input geometry. If the callback returns an error, returned geometry will be
|
|
5299
6199
|
* NULL. M values, if present, are not modified by this function.
|
|
6200
|
+
*
|
|
6201
|
+
* Curved geometry types are supported since GEOS 3.13.
|
|
6202
|
+
*
|
|
5300
6203
|
* \param[in] g Input geometry
|
|
5301
6204
|
* \param[in] callback a function to be executed for each coordinate in the
|
|
5302
6205
|
geometry. The callback takes 4 parameters: x, y and z coordinate
|
|
@@ -5357,6 +6260,9 @@ extern GEOSGeometry GEOS_DLL *GEOSSnap(
|
|
|
5357
6260
|
* So the combination GEOS_PREC_NO_TOPO || GEOS_PREC_KEEP_COLLAPSED
|
|
5358
6261
|
* has the same semantics as GEOS_PREC_NO_TOPO
|
|
5359
6262
|
*
|
|
6263
|
+
* Z and M values in the input are preserved.
|
|
6264
|
+
* Curved geometries are supported since GEOS 3.15 if GEOS_PREC_NO_TOPO is used.
|
|
6265
|
+
*
|
|
5360
6266
|
* \param g Input geometry
|
|
5361
6267
|
* \param gridSize cell size of grid to round coordinates to,
|
|
5362
6268
|
* or 0 for FLOATING precision
|
|
@@ -5374,6 +6280,124 @@ extern GEOSGeometry GEOS_DLL *GEOSGeom_setPrecision(
|
|
|
5374
6280
|
|
|
5375
6281
|
///@}
|
|
5376
6282
|
|
|
6283
|
+
/* ============================================================== */
|
|
6284
|
+
|
|
6285
|
+
/** @name Line/Curve conversion
|
|
6286
|
+
* Functions for converting between curved and linear geometry types.
|
|
6287
|
+
*/
|
|
6288
|
+
///@{
|
|
6289
|
+
|
|
6290
|
+
/** Approximate all circular arcs in a geometry using line segments.
|
|
6291
|
+
* If the input has no circular arcs, a copy will be returned.
|
|
6292
|
+
* \param g the geometry to convert
|
|
6293
|
+
* \param params parameters to use in the linearization.
|
|
6294
|
+
* \return The linearized geometry.
|
|
6295
|
+
* Caller must free with GEOSGeom_destroy()
|
|
6296
|
+
* NULL on exception
|
|
6297
|
+
*
|
|
6298
|
+
* \since 3.15
|
|
6299
|
+
*/
|
|
6300
|
+
extern GEOSGeometry GEOS_DLL *GEOSCurveToLine(
|
|
6301
|
+
const GEOSGeometry* g,
|
|
6302
|
+
const GEOSCurveToLineParams* params);
|
|
6303
|
+
|
|
6304
|
+
extern GEOSCurveToLineParams GEOS_DLL *GEOSCurveToLineParams_create();
|
|
6305
|
+
|
|
6306
|
+
extern void GEOS_DLL GEOSCurveToLineParams_destroy(GEOSCurveToLineParams* params);
|
|
6307
|
+
|
|
6308
|
+
/** Set the maximum step (in degrees) between subsequent points.
|
|
6309
|
+
*
|
|
6310
|
+
* \param params parameters to use in the conversion.
|
|
6311
|
+
* \param tolerance the maximum step size
|
|
6312
|
+
* \return 1 if the operation succeeded, 0 otherwise
|
|
6313
|
+
*
|
|
6314
|
+
* \since 3.15
|
|
6315
|
+
*/
|
|
6316
|
+
extern int GEOS_DLL GEOSCurveToLineParams_setMaxStepDegrees(
|
|
6317
|
+
GEOSCurveToLineParams* params,
|
|
6318
|
+
double tolerance);
|
|
6319
|
+
|
|
6320
|
+
/** Set the maximum deviation between an arc and its linear approximate.
|
|
6321
|
+
*
|
|
6322
|
+
* \param params parameters to use in the conversion.
|
|
6323
|
+
* \param tolerance the maximum deviation
|
|
6324
|
+
* \return 1 if the operation succeeded, 0 otherwise
|
|
6325
|
+
*
|
|
6326
|
+
* \since 3.15
|
|
6327
|
+
*/
|
|
6328
|
+
extern int GEOS_DLL GEOSCurveToLineParams_setMaxDeviation(
|
|
6329
|
+
GEOSCurveToLineParams* params,
|
|
6330
|
+
double tolerance);
|
|
6331
|
+
|
|
6332
|
+
/** Replace line segments in the geometry with circular arcs, where possible.
|
|
6333
|
+
*
|
|
6334
|
+
* \param g the geometry to convert
|
|
6335
|
+
* \param params parameters to use in the conversion.
|
|
6336
|
+
* \return The converted geometry.
|
|
6337
|
+
* Caller must free with GEOSGeom_destroy()
|
|
6338
|
+
* NULL on exception
|
|
6339
|
+
*
|
|
6340
|
+
* \since 3.15
|
|
6341
|
+
*/
|
|
6342
|
+
extern GEOSGeometry GEOS_DLL *GEOSLineToCurve(
|
|
6343
|
+
const GEOSGeometry* g,
|
|
6344
|
+
const GEOSLineToCurveParams* params);
|
|
6345
|
+
|
|
6346
|
+
extern GEOSLineToCurveParams GEOS_DLL *GEOSLineToCurveParams_create();
|
|
6347
|
+
|
|
6348
|
+
extern void GEOS_DLL GEOSLineToCurveParams_destroy(GEOSLineToCurveParams* params);
|
|
6349
|
+
|
|
6350
|
+
/** Set the radius tolerance used in line-to-curve conversion.
|
|
6351
|
+
*
|
|
6352
|
+
* A vertex may be considered to continue a circular arc if its distance to the
|
|
6353
|
+
* previously-computed circle center is within the specified fraction of the
|
|
6354
|
+
* circle radius.
|
|
6355
|
+
*
|
|
6356
|
+
* \param params the parameters object
|
|
6357
|
+
* \param tolerance the tolerance value
|
|
6358
|
+
* \return 1 on success, 0 on failure
|
|
6359
|
+
* \since 3.15
|
|
6360
|
+
*/
|
|
6361
|
+
extern int GEOS_DLL GEOSLineToCurveParams_setRadiusTolerance(
|
|
6362
|
+
GEOSLineToCurveParams* params,
|
|
6363
|
+
double tolerance);
|
|
6364
|
+
|
|
6365
|
+
/** Set the maximum angle spacing used in line-to-curve conversion.
|
|
6366
|
+
*
|
|
6367
|
+
* A point may be considered to continue a circular arc if the angle between
|
|
6368
|
+
* the point and the final point in the arc is less than the specified
|
|
6369
|
+
* tolerance. Because of round-off errors, this value should be slightly
|
|
6370
|
+
* greater than the one used in \ref GEOSCurveToLineParams_setMaxStepDegrees.
|
|
6371
|
+
*
|
|
6372
|
+
* \param params the parameters object
|
|
6373
|
+
* \param tolerance the tolerance value
|
|
6374
|
+
* \return 1 on success, 0 on failure
|
|
6375
|
+
* \since 3.15
|
|
6376
|
+
*/
|
|
6377
|
+
extern int GEOS_DLL GEOSLineToCurveParams_setMaxStepDegrees(
|
|
6378
|
+
GEOSLineToCurveParams* params,
|
|
6379
|
+
double tolerance);
|
|
6380
|
+
|
|
6381
|
+
/** Set the maximum angle difference used in line-to-curve conversion
|
|
6382
|
+
*
|
|
6383
|
+
* A point may be considered to continue a circular arc if the angle between
|
|
6384
|
+
* the point and the final point in the arc is within the specified
|
|
6385
|
+
* tolerance of the angle calculated when the final point in the arc was
|
|
6386
|
+
* added. This tolerance can be used to ensure that the step spacing is
|
|
6387
|
+
* regular, which is an indication of a line that was generated by
|
|
6388
|
+
* linearizing a curve.
|
|
6389
|
+
*
|
|
6390
|
+
* \param params the parameters object
|
|
6391
|
+
* \param tolerance the tolerance value
|
|
6392
|
+
* \return 1 on success, 0 on failure
|
|
6393
|
+
* \since 3.15
|
|
6394
|
+
*/
|
|
6395
|
+
extern int GEOS_DLL GEOSLineToCurveParams_setMaxAngleDifferenceDegrees(
|
|
6396
|
+
GEOSLineToCurveParams* params,
|
|
6397
|
+
double tolerance);
|
|
6398
|
+
|
|
6399
|
+
///@}
|
|
6400
|
+
|
|
5377
6401
|
/* ============================================================== */
|
|
5378
6402
|
/** @name Spatial Predicates
|
|
5379
6403
|
* Functions computing binary spatial predicates using the DE-9IM topology model.
|
|
@@ -5423,7 +6447,7 @@ extern char GEOS_DLL GEOSIntersects(const GEOSGeometry* g1, const GEOSGeometry*
|
|
|
5423
6447
|
extern char GEOS_DLL GEOSCrosses(const GEOSGeometry* g1, const GEOSGeometry* g2);
|
|
5424
6448
|
|
|
5425
6449
|
/**
|
|
5426
|
-
* Tests if geometry g1 is completely within g2,
|
|
6450
|
+
* Tests if geometry g1 is completely within g2,
|
|
5427
6451
|
* but not wholly contained in the boundary of g2.
|
|
5428
6452
|
* \param g1 Input geometry
|
|
5429
6453
|
* \param g2 Input geometry
|
|
@@ -5499,6 +6523,9 @@ extern char GEOS_DLL GEOSCoveredBy(const GEOSGeometry* g1, const GEOSGeometry* g
|
|
|
5499
6523
|
* Unlike GEOSEquals(), geometries that are topologically equivalent but have different
|
|
5500
6524
|
* representations (e.g., LINESTRING (0 0, 1 1) and MULTILINESTRING ((0 0, 1 1)) ) are not
|
|
5501
6525
|
* considered equal by GEOSEqualsExact().
|
|
6526
|
+
*
|
|
6527
|
+
* Curved geometry types are supported since GEOS 3.13.
|
|
6528
|
+
*
|
|
5502
6529
|
* \param g1 Input geometry
|
|
5503
6530
|
* \param g2 Input geometry
|
|
5504
6531
|
* \param tolerance Tolerance to determine vertex equality
|
|
@@ -5512,11 +6539,13 @@ extern char GEOS_DLL GEOSEqualsExact(
|
|
|
5512
6539
|
double tolerance);
|
|
5513
6540
|
|
|
5514
6541
|
/**
|
|
5515
|
-
|
|
5516
|
-
|
|
5517
|
-
|
|
5518
|
-
|
|
5519
|
-
|
|
6542
|
+
* Determine pointwise equality of two geometries by checking
|
|
6543
|
+
* that the structure, ordering, and values of all vertices are
|
|
6544
|
+
* identical in all dimensions. NaN values are considered to be
|
|
6545
|
+
* equal to other NaN values.
|
|
6546
|
+
*
|
|
6547
|
+
* Curved geometry types are supported since GEOS 3.13.
|
|
6548
|
+
*
|
|
5520
6549
|
* \param g1 Input geometry
|
|
5521
6550
|
* \param g2 Input geometry
|
|
5522
6551
|
* \returns 1 on true, 0 on false, 2 on exception
|
|
@@ -6707,7 +7736,7 @@ extern GEOSGeometry GEOS_DLL *GEOSGeomFromWKB_buf(const unsigned char *wkb, size
|
|
|
6707
7736
|
extern unsigned char GEOS_DLL *GEOSGeomToWKB_buf(const GEOSGeometry* g, size_t *size);
|
|
6708
7737
|
|
|
6709
7738
|
/**
|
|
6710
|
-
* \deprecated use \ref GEOSWKBReader and
|
|
7739
|
+
* \deprecated use \ref GEOSWKBReader and GEOSWKBReader_readHEX()
|
|
6711
7740
|
*/
|
|
6712
7741
|
extern GEOSGeometry GEOS_DLL *GEOSGeomFromHEX_buf(const unsigned char *hex, size_t size);
|
|
6713
7742
|
|