@cpp.js/package-geos 1.0.0-beta.22 → 1.0.0
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/CHANGELOG.md +13 -0
- package/README.md +1 -1
- package/dist/prebuilt/Android-x86_64/bin/geos-config +79 -0
- package/dist/prebuilt/Android-x86_64/bin/geosop +0 -0
- package/dist/prebuilt/Android-x86_64/include/geos/algorithm/Angle.h +247 -0
- package/dist/prebuilt/Android-x86_64/include/geos/algorithm/Area.h +82 -0
- package/dist/prebuilt/Android-x86_64/include/geos/algorithm/BoundaryNodeRule.h +146 -0
- package/dist/prebuilt/Android-x86_64/include/geos/algorithm/CGAlgorithmsDD.h +193 -0
- package/dist/prebuilt/Android-x86_64/include/geos/algorithm/CentralEndpointIntersector.h +161 -0
- package/dist/prebuilt/Android-x86_64/include/geos/algorithm/Centroid.h +157 -0
- package/dist/prebuilt/Android-x86_64/include/geos/algorithm/CircularArcs.h +37 -0
- package/dist/prebuilt/Android-x86_64/include/geos/algorithm/ConvexHull.h +211 -0
- package/dist/prebuilt/Android-x86_64/include/geos/algorithm/Distance.h +116 -0
- package/dist/prebuilt/Android-x86_64/include/geos/algorithm/HCoordinate.h +100 -0
- package/dist/prebuilt/Android-x86_64/include/geos/algorithm/InteriorPointArea.h +110 -0
- package/dist/prebuilt/Android-x86_64/include/geos/algorithm/InteriorPointLine.h +79 -0
- package/dist/prebuilt/Android-x86_64/include/geos/algorithm/InteriorPointPoint.h +73 -0
- package/dist/prebuilt/Android-x86_64/include/geos/algorithm/Interpolate.h +182 -0
- package/dist/prebuilt/Android-x86_64/include/geos/algorithm/Intersection.h +84 -0
- package/dist/prebuilt/Android-x86_64/include/geos/algorithm/Length.h +50 -0
- package/dist/prebuilt/Android-x86_64/include/geos/algorithm/LineIntersector.h +667 -0
- package/dist/prebuilt/Android-x86_64/include/geos/algorithm/MinimumAreaRectangle.h +159 -0
- package/dist/prebuilt/Android-x86_64/include/geos/algorithm/MinimumBoundingCircle.h +137 -0
- package/dist/prebuilt/Android-x86_64/include/geos/algorithm/MinimumDiameter.h +185 -0
- package/dist/prebuilt/Android-x86_64/include/geos/algorithm/NotRepresentableException.h +43 -0
- package/dist/prebuilt/Android-x86_64/include/geos/algorithm/Orientation.h +122 -0
- package/dist/prebuilt/Android-x86_64/include/geos/algorithm/PointInRing.h +40 -0
- package/dist/prebuilt/Android-x86_64/include/geos/algorithm/PointLocation.h +107 -0
- package/dist/prebuilt/Android-x86_64/include/geos/algorithm/PointLocator.h +108 -0
- package/dist/prebuilt/Android-x86_64/include/geos/algorithm/PolygonNodeTopology.h +149 -0
- package/dist/prebuilt/Android-x86_64/include/geos/algorithm/RayCrossingCounter.h +173 -0
- package/dist/prebuilt/Android-x86_64/include/geos/algorithm/Rectangle.h +96 -0
- package/dist/prebuilt/Android-x86_64/include/geos/algorithm/RobustDeterminant.h +66 -0
- package/dist/prebuilt/Android-x86_64/include/geos/algorithm/SimplePointInRing.h +44 -0
- package/dist/prebuilt/Android-x86_64/include/geos/algorithm/construct/IndexedDistanceToPoint.h +88 -0
- package/dist/prebuilt/Android-x86_64/include/geos/algorithm/construct/IndexedPointInPolygonsLocator.h +79 -0
- package/dist/prebuilt/Android-x86_64/include/geos/algorithm/construct/LargestEmptyCircle.h +240 -0
- package/dist/prebuilt/Android-x86_64/include/geos/algorithm/construct/MaximumInscribedCircle.h +221 -0
- package/dist/prebuilt/Android-x86_64/include/geos/algorithm/distance/DiscreteFrechetDistance.h +175 -0
- package/dist/prebuilt/Android-x86_64/include/geos/algorithm/distance/DiscreteHausdorffDistance.h +252 -0
- package/dist/prebuilt/Android-x86_64/include/geos/algorithm/distance/DistanceToPoint.h +72 -0
- package/dist/prebuilt/Android-x86_64/include/geos/algorithm/distance/PointPairDistance.h +151 -0
- package/dist/prebuilt/Android-x86_64/include/geos/algorithm/hull/ConcaveHull.h +309 -0
- package/dist/prebuilt/Android-x86_64/include/geos/algorithm/hull/ConcaveHullOfPolygons.h +377 -0
- package/dist/prebuilt/Android-x86_64/include/geos/algorithm/hull/HullTri.h +156 -0
- package/dist/prebuilt/Android-x86_64/include/geos/algorithm/hull/HullTriangulation.h +139 -0
- package/dist/prebuilt/Android-x86_64/include/geos/algorithm/locate/IndexedPointInAreaLocator.h +139 -0
- package/dist/prebuilt/Android-x86_64/include/geos/algorithm/locate/PointOnGeometryLocator.h +56 -0
- package/dist/prebuilt/Android-x86_64/include/geos/algorithm/locate/SimplePointInAreaLocator.h +117 -0
- package/dist/prebuilt/Android-x86_64/include/geos/constants.h +49 -0
- package/dist/prebuilt/Android-x86_64/include/geos/coverage/Corner.h +137 -0
- package/dist/prebuilt/Android-x86_64/include/geos/coverage/CoverageBoundarySegmentFinder.h +83 -0
- package/dist/prebuilt/Android-x86_64/include/geos/coverage/CoverageEdge.h +171 -0
- package/dist/prebuilt/Android-x86_64/include/geos/coverage/CoverageGapFinder.h +106 -0
- package/dist/prebuilt/Android-x86_64/include/geos/coverage/CoveragePolygon.h +57 -0
- package/dist/prebuilt/Android-x86_64/include/geos/coverage/CoveragePolygonValidator.h +381 -0
- package/dist/prebuilt/Android-x86_64/include/geos/coverage/CoverageRing.h +205 -0
- package/dist/prebuilt/Android-x86_64/include/geos/coverage/CoverageRingEdges.h +170 -0
- package/dist/prebuilt/Android-x86_64/include/geos/coverage/CoverageSimplifier.h +166 -0
- package/dist/prebuilt/Android-x86_64/include/geos/coverage/CoverageUnion.h +77 -0
- package/dist/prebuilt/Android-x86_64/include/geos/coverage/CoverageValidator.h +159 -0
- package/dist/prebuilt/Android-x86_64/include/geos/coverage/InvalidSegmentDetector.h +133 -0
- package/dist/prebuilt/Android-x86_64/include/geos/coverage/TPVWSimplifier.h +225 -0
- package/dist/prebuilt/Android-x86_64/include/geos/coverage/VertexRingCounter.h +71 -0
- package/dist/prebuilt/Android-x86_64/include/geos/edgegraph/EdgeGraph.h +137 -0
- package/dist/prebuilt/Android-x86_64/include/geos/edgegraph/EdgeGraphBuilder.h +91 -0
- package/dist/prebuilt/Android-x86_64/include/geos/edgegraph/HalfEdge.h +315 -0
- package/dist/prebuilt/Android-x86_64/include/geos/edgegraph/MarkHalfEdge.h +110 -0
- package/dist/prebuilt/Android-x86_64/include/geos/export.h +51 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/CircularArc.h +273 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/CircularString.h +85 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/CompoundCurve.h +121 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/Coordinate.h +627 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/CoordinateFilter.h +134 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/CoordinateList.h +244 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/CoordinateSequence.h +807 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/CoordinateSequenceFilter.h +116 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/CoordinateSequenceIterator.h +126 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/CoordinateSequences.h +76 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/Curve.h +71 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/CurvePolygon.h +58 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/Dimension.h +64 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/Envelope.h +826 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/Geometry.h +1051 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/GeometryCollection.h +256 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/GeometryComponentFilter.h +61 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/GeometryFactory.h +542 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/GeometryFilter.h +74 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/GeometryTypeName.h +110 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/HeuristicOverlay.h +99 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/IntersectionMatrix.h +383 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/LineSegment.h +576 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/LineString.h +151 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/LinearRing.h +128 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/Location.h +64 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/MultiCurve.h +126 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/MultiLineString.h +160 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/MultiPoint.h +150 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/MultiPolygon.h +155 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/MultiSurface.h +94 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/Point.h +221 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/Polygon.h +138 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/Position.h +68 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/PrecisionModel.h +374 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/Quadrant.h +164 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/SimpleCurve.h +142 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/Surface.h +115 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/SurfaceImpl.h +159 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/Triangle.h +230 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/prep/AbstractPreparedPolygonContains.h +144 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/prep/BasicPreparedGeometry.h +214 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/prep/PreparedGeometry.h +260 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/prep/PreparedGeometryFactory.h +93 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/prep/PreparedLineString.h +70 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/prep/PreparedLineStringDistance.h +57 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/prep/PreparedLineStringIntersects.h +97 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/prep/PreparedLineStringNearestPoints.h +54 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/prep/PreparedPoint.h +56 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/prep/PreparedPolygon.h +81 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/prep/PreparedPolygonContains.h +105 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/prep/PreparedPolygonContainsProperly.h +101 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/prep/PreparedPolygonCovers.h +108 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/prep/PreparedPolygonDistance.h +67 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/prep/PreparedPolygonIntersects.h +90 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/prep/PreparedPolygonPredicate.h +141 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/util/ComponentCoordinateExtracter.h +69 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/util/CoordinateOperation.h +70 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/util/Densifier.h +90 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/util/GeometryCombiner.h +151 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/util/GeometryEditor.h +127 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/util/GeometryEditorOperation.h +65 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/util/GeometryExtracter.h +95 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/util/GeometryFixer.h +169 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/util/GeometryLister.h +92 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/util/GeometryMapper.h +115 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/util/GeometryTransformer.h +181 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/util/LinearComponentExtracter.h +65 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/util/NoOpGeometryOperation.h +52 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/util/PointExtracter.h +63 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/util/PolygonExtracter.h +66 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/util/PolygonalExtracter.h +54 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/util/ShortCircuitedGeometryVisitor.h +66 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom/util/SineStarFactory.h +122 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geom.h +146 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/Depth.h +143 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/DirectedEdge.h +236 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/DirectedEdgeStar.h +164 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/Edge.h +285 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/EdgeEnd.h +187 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/EdgeEndStar.h +217 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/EdgeIntersection.h +149 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/EdgeIntersectionList.h +129 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/EdgeList.h +124 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/EdgeNodingValidator.h +113 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/EdgeRing.h +201 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/GeometryGraph.h +251 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/GraphComponent.h +117 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/Label.h +290 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/Node.h +192 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/NodeFactory.h +51 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/NodeMap.h +143 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/PlanarGraph.h +203 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/TopologyLocation.h +238 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/index/EdgeSetIntersector.h +68 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/index/MonotoneChain.h +72 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/index/MonotoneChainEdge.h +85 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/index/MonotoneChainIndexer.h +71 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/index/SegmentIntersector.h +176 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/index/SimpleEdgeSetIntersector.h +64 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/index/SimpleMCSweepLineIntersector.h +108 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/index/SimpleSweepLineIntersector.h +94 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/index/SweepLineEvent.h +136 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/index/SweepLineEventObj.h +38 -0
- package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/index/SweepLineSegment.h +57 -0
- package/dist/prebuilt/Android-x86_64/include/geos/index/ItemVisitor.h +38 -0
- package/dist/prebuilt/Android-x86_64/include/geos/index/SpatialIndex.h +103 -0
- package/dist/prebuilt/Android-x86_64/include/geos/index/VertexSequencePackedRtree.h +153 -0
- package/dist/prebuilt/Android-x86_64/include/geos/index/bintree/Bintree.h +129 -0
- package/dist/prebuilt/Android-x86_64/include/geos/index/bintree/Interval.h +61 -0
- package/dist/prebuilt/Android-x86_64/include/geos/index/bintree/Key.h +71 -0
- package/dist/prebuilt/Android-x86_64/include/geos/index/bintree/Node.h +74 -0
- package/dist/prebuilt/Android-x86_64/include/geos/index/bintree/NodeBase.h +83 -0
- package/dist/prebuilt/Android-x86_64/include/geos/index/bintree/Root.h +77 -0
- package/dist/prebuilt/Android-x86_64/include/geos/index/chain/MonotoneChain.h +206 -0
- package/dist/prebuilt/Android-x86_64/include/geos/index/chain/MonotoneChainBuilder.h +74 -0
- package/dist/prebuilt/Android-x86_64/include/geos/index/chain/MonotoneChainOverlapAction.h +86 -0
- package/dist/prebuilt/Android-x86_64/include/geos/index/chain/MonotoneChainSelectAction.h +74 -0
- package/dist/prebuilt/Android-x86_64/include/geos/index/intervalrtree/IntervalRTreeBranchNode.h +53 -0
- package/dist/prebuilt/Android-x86_64/include/geos/index/intervalrtree/IntervalRTreeLeafNode.h +58 -0
- package/dist/prebuilt/Android-x86_64/include/geos/index/intervalrtree/IntervalRTreeNode.h +105 -0
- package/dist/prebuilt/Android-x86_64/include/geos/index/intervalrtree/SortedPackedIntervalRTree.h +110 -0
- package/dist/prebuilt/Android-x86_64/include/geos/index/kdtree/KdNode.h +64 -0
- package/dist/prebuilt/Android-x86_64/include/geos/index/kdtree/KdNodeVisitor.h +45 -0
- package/dist/prebuilt/Android-x86_64/include/geos/index/kdtree/KdTree.h +191 -0
- package/dist/prebuilt/Android-x86_64/include/geos/index/quadtree/IntervalSize.h +62 -0
- package/dist/prebuilt/Android-x86_64/include/geos/index/quadtree/Key.h +87 -0
- package/dist/prebuilt/Android-x86_64/include/geos/index/quadtree/Node.h +141 -0
- package/dist/prebuilt/Android-x86_64/include/geos/index/quadtree/NodeBase.h +161 -0
- package/dist/prebuilt/Android-x86_64/include/geos/index/quadtree/Quadtree.h +200 -0
- package/dist/prebuilt/Android-x86_64/include/geos/index/quadtree/Root.h +87 -0
- package/dist/prebuilt/Android-x86_64/include/geos/index/strtree/AbstractNode.h +131 -0
- package/dist/prebuilt/Android-x86_64/include/geos/index/strtree/AbstractSTRtree.h +324 -0
- package/dist/prebuilt/Android-x86_64/include/geos/index/strtree/Boundable.h +49 -0
- package/dist/prebuilt/Android-x86_64/include/geos/index/strtree/BoundablePair.h +122 -0
- package/dist/prebuilt/Android-x86_64/include/geos/index/strtree/EnvelopeUtil.h +33 -0
- package/dist/prebuilt/Android-x86_64/include/geos/index/strtree/GeometryItemDistance.h +44 -0
- package/dist/prebuilt/Android-x86_64/include/geos/index/strtree/Interval.h +60 -0
- package/dist/prebuilt/Android-x86_64/include/geos/index/strtree/ItemBoundable.h +59 -0
- package/dist/prebuilt/Android-x86_64/include/geos/index/strtree/ItemDistance.h +49 -0
- package/dist/prebuilt/Android-x86_64/include/geos/index/strtree/SIRtree.h +124 -0
- package/dist/prebuilt/Android-x86_64/include/geos/index/strtree/STRtree.h +177 -0
- package/dist/prebuilt/Android-x86_64/include/geos/index/strtree/SimpleSTRdistance.h +166 -0
- package/dist/prebuilt/Android-x86_64/include/geos/index/strtree/SimpleSTRnode.h +141 -0
- package/dist/prebuilt/Android-x86_64/include/geos/index/strtree/SimpleSTRtree.h +189 -0
- package/dist/prebuilt/Android-x86_64/include/geos/index/strtree/TemplateSTRNode.h +156 -0
- package/dist/prebuilt/Android-x86_64/include/geos/index/strtree/TemplateSTRNodePair.h +74 -0
- package/dist/prebuilt/Android-x86_64/include/geos/index/strtree/TemplateSTRtree.h +807 -0
- package/dist/prebuilt/Android-x86_64/include/geos/index/strtree/TemplateSTRtreeDistance.h +233 -0
- package/dist/prebuilt/Android-x86_64/include/geos/index/sweepline/SweepLineEvent.h +95 -0
- package/dist/prebuilt/Android-x86_64/include/geos/index/sweepline/SweepLineIndex.h +87 -0
- package/dist/prebuilt/Android-x86_64/include/geos/index/sweepline/SweepLineInterval.h +37 -0
- package/dist/prebuilt/Android-x86_64/include/geos/index/sweepline/SweepLineOverlapAction.h +44 -0
- package/dist/prebuilt/Android-x86_64/include/geos/io/ByteOrderDataInStream.h +125 -0
- package/dist/prebuilt/Android-x86_64/include/geos/io/ByteOrderValues.h +61 -0
- package/dist/prebuilt/Android-x86_64/include/geos/io/CLocalizer.h +53 -0
- package/dist/prebuilt/Android-x86_64/include/geos/io/CheckOrdinatesFilter.h +68 -0
- package/dist/prebuilt/Android-x86_64/include/geos/io/GeoJSON.h +154 -0
- package/dist/prebuilt/Android-x86_64/include/geos/io/GeoJSONReader.h +125 -0
- package/dist/prebuilt/Android-x86_64/include/geos/io/GeoJSONWriter.h +139 -0
- package/dist/prebuilt/Android-x86_64/include/geos/io/OrdinateSet.h +119 -0
- package/dist/prebuilt/Android-x86_64/include/geos/io/ParseException.h +53 -0
- package/dist/prebuilt/Android-x86_64/include/geos/io/StringTokenizer.h +66 -0
- package/dist/prebuilt/Android-x86_64/include/geos/io/WKBConstants.h +57 -0
- package/dist/prebuilt/Android-x86_64/include/geos/io/WKBReader.h +204 -0
- package/dist/prebuilt/Android-x86_64/include/geos/io/WKBStreamReader.h +49 -0
- package/dist/prebuilt/Android-x86_64/include/geos/io/WKBWriter.h +260 -0
- package/dist/prebuilt/Android-x86_64/include/geos/io/WKTFileReader.h +46 -0
- package/dist/prebuilt/Android-x86_64/include/geos/io/WKTReader.h +165 -0
- package/dist/prebuilt/Android-x86_64/include/geos/io/WKTStreamReader.h +48 -0
- package/dist/prebuilt/Android-x86_64/include/geos/io/WKTWriter.h +342 -0
- package/dist/prebuilt/Android-x86_64/include/geos/io/Writer.h +51 -0
- package/dist/prebuilt/Android-x86_64/include/geos/linearref/ExtractLineByLocation.h +88 -0
- package/dist/prebuilt/Android-x86_64/include/geos/linearref/LengthIndexOfPoint.h +87 -0
- package/dist/prebuilt/Android-x86_64/include/geos/linearref/LengthIndexedLine.h +211 -0
- package/dist/prebuilt/Android-x86_64/include/geos/linearref/LengthLocationMap.h +134 -0
- package/dist/prebuilt/Android-x86_64/include/geos/linearref/LinearGeometryBuilder.h +106 -0
- package/dist/prebuilt/Android-x86_64/include/geos/linearref/LinearIterator.h +156 -0
- package/dist/prebuilt/Android-x86_64/include/geos/linearref/LinearLocation.h +248 -0
- package/dist/prebuilt/Android-x86_64/include/geos/linearref/LocationIndexOfLine.h +72 -0
- package/dist/prebuilt/Android-x86_64/include/geos/linearref/LocationIndexOfPoint.h +77 -0
- package/dist/prebuilt/Android-x86_64/include/geos/linearref/LocationIndexedLine.h +276 -0
- package/dist/prebuilt/Android-x86_64/include/geos/math/DD.h +200 -0
- package/dist/prebuilt/Android-x86_64/include/geos/namespaces.h +317 -0
- package/dist/prebuilt/Android-x86_64/include/geos/noding/BasicSegmentString.h +89 -0
- package/dist/prebuilt/Android-x86_64/include/geos/noding/BoundaryChainNoder.h +171 -0
- package/dist/prebuilt/Android-x86_64/include/geos/noding/FastNodingValidator.h +129 -0
- package/dist/prebuilt/Android-x86_64/include/geos/noding/FastSegmentSetIntersectionFinder.h +80 -0
- package/dist/prebuilt/Android-x86_64/include/geos/noding/GeometryNoder.h +69 -0
- package/dist/prebuilt/Android-x86_64/include/geos/noding/IntersectionAdder.h +202 -0
- package/dist/prebuilt/Android-x86_64/include/geos/noding/IntersectionFinderAdder.h +110 -0
- package/dist/prebuilt/Android-x86_64/include/geos/noding/IteratedNoder.h +120 -0
- package/dist/prebuilt/Android-x86_64/include/geos/noding/MCIndexNoder.h +141 -0
- package/dist/prebuilt/Android-x86_64/include/geos/noding/MCIndexSegmentSetMutualIntersector.h +146 -0
- package/dist/prebuilt/Android-x86_64/include/geos/noding/NodableSegmentString.h +56 -0
- package/dist/prebuilt/Android-x86_64/include/geos/noding/NodedSegmentString.h +218 -0
- package/dist/prebuilt/Android-x86_64/include/geos/noding/Noder.h +79 -0
- package/dist/prebuilt/Android-x86_64/include/geos/noding/NodingIntersectionFinder.h +262 -0
- package/dist/prebuilt/Android-x86_64/include/geos/noding/NodingValidator.h +109 -0
- package/dist/prebuilt/Android-x86_64/include/geos/noding/Octant.h +73 -0
- package/dist/prebuilt/Android-x86_64/include/geos/noding/OrientedCoordinateArray.h +113 -0
- package/dist/prebuilt/Android-x86_64/include/geos/noding/ScaledNoder.h +132 -0
- package/dist/prebuilt/Android-x86_64/include/geos/noding/SegmentExtractingNoder.h +88 -0
- package/dist/prebuilt/Android-x86_64/include/geos/noding/SegmentIntersectionDetector.h +177 -0
- package/dist/prebuilt/Android-x86_64/include/geos/noding/SegmentIntersector.h +89 -0
- package/dist/prebuilt/Android-x86_64/include/geos/noding/SegmentNode.h +161 -0
- package/dist/prebuilt/Android-x86_64/include/geos/noding/SegmentNodeList.h +253 -0
- package/dist/prebuilt/Android-x86_64/include/geos/noding/SegmentPointComparator.h +120 -0
- package/dist/prebuilt/Android-x86_64/include/geos/noding/SegmentSetMutualIntersector.h +80 -0
- package/dist/prebuilt/Android-x86_64/include/geos/noding/SegmentString.h +199 -0
- package/dist/prebuilt/Android-x86_64/include/geos/noding/SegmentStringUtil.h +67 -0
- package/dist/prebuilt/Android-x86_64/include/geos/noding/SimpleNoder.h +70 -0
- package/dist/prebuilt/Android-x86_64/include/geos/noding/SinglePassNoder.h +96 -0
- package/dist/prebuilt/Android-x86_64/include/geos/noding/ValidatingNoder.h +74 -0
- package/dist/prebuilt/Android-x86_64/include/geos/noding/snap/SnappingIntersectionAdder.h +109 -0
- package/dist/prebuilt/Android-x86_64/include/geos/noding/snap/SnappingNoder.h +121 -0
- package/dist/prebuilt/Android-x86_64/include/geos/noding/snap/SnappingPointIndex.h +62 -0
- package/dist/prebuilt/Android-x86_64/include/geos/noding/snapround/HotPixel.h +171 -0
- package/dist/prebuilt/Android-x86_64/include/geos/noding/snapround/HotPixelIndex.h +116 -0
- package/dist/prebuilt/Android-x86_64/include/geos/noding/snapround/MCIndexPointSnapper.h +98 -0
- package/dist/prebuilt/Android-x86_64/include/geos/noding/snapround/MCIndexSnapRounder.h +157 -0
- package/dist/prebuilt/Android-x86_64/include/geos/noding/snapround/SnapRoundingIntersectionAdder.h +126 -0
- package/dist/prebuilt/Android-x86_64/include/geos/noding/snapround/SnapRoundingNoder.h +167 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/BoundaryOp.h +120 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/GeometryGraphOperation.h +92 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/buffer/BufferBuilder.h +270 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/buffer/BufferCurveSetBuilder.h +296 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/buffer/BufferInputLineSimplifier.h +180 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/buffer/BufferOp.h +307 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/buffer/BufferParameters.h +319 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/buffer/BufferSubgraph.h +202 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/buffer/OffsetCurve.h +328 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/buffer/OffsetCurveBuilder.h +257 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/buffer/OffsetCurveSection.h +111 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/buffer/OffsetSegmentGenerator.h +390 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/buffer/OffsetSegmentString.h +215 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/buffer/RightmostEdgeFinder.h +105 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/buffer/SegmentMCIndex.h +56 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/buffer/SubgraphDepthLocater.h +120 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/cluster/AbstractClusterFinder.h +136 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/cluster/Clusters.h +72 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/cluster/DBSCANClusterFinder.h +59 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/cluster/DisjointOperation.h +73 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/cluster/EnvelopeDistanceClusterFinder.h +53 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/cluster/EnvelopeIntersectsClusterFinder.h +44 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/cluster/GeometryDistanceClusterFinder.h +59 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/cluster/GeometryFlattener.h +46 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/cluster/GeometryIntersectsClusterFinder.h +53 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/cluster/UnionFind.h +137 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/distance/ConnectedElementLocationFilter.h +76 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/distance/ConnectedElementPointFilter.h +73 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/distance/DistanceOp.h +228 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/distance/FacetSequence.h +84 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/distance/FacetSequenceTreeBuilder.h +69 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/distance/GeometryLocation.h +126 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/distance/IndexedFacetDistance.h +124 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/intersection/Rectangle.h +236 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/intersection/RectangleIntersection.h +174 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/intersection/RectangleIntersectionBuilder.h +159 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/linemerge/EdgeString.h +88 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/linemerge/LineMergeDirectedEdge.h +78 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/linemerge/LineMergeEdge.h +62 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/linemerge/LineMergeGraph.h +91 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/linemerge/LineMerger.h +149 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/linemerge/LineSequencer.h +295 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/overlay/MaximalEdgeRing.h +105 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/overlay/MinimalEdgeRing.h +80 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/overlay/OverlayNodeFactory.h +56 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/overlay/PolygonBuilder.h +210 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/overlay/snap/GeometrySnapper.h +154 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/overlay/snap/LineStringSnapper.h +165 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/overlay/snap/SnapOverlayOp.h +134 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/overlay/validate/FuzzyPointLocator.h +97 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/overlay/validate/OffsetPointGenerator.h +87 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/overlay/validate/OverlayResultValidator.h +131 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/CoverageUnion.h +100 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/Edge.h +345 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/EdgeKey.h +120 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/EdgeMerger.h +81 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/EdgeNodingBuilder.h +255 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/EdgeSourceInfo.h +65 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/ElevationModel.h +170 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/IndexedPointOnLineLocator.h +64 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/InputGeometry.h +103 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/IntersectionPointBuilder.h +113 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/LineBuilder.h +189 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/LineLimiter.h +91 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/MaximalEdgeRing.h +134 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/OverlayEdge.h +279 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/OverlayEdgeRing.h +153 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/OverlayGraph.h +143 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/OverlayLabel.h +404 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/OverlayLabeller.h +207 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/OverlayMixedPoints.h +142 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/OverlayNG.h +410 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/OverlayNGRobust.h +174 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/OverlayPoints.h +120 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/OverlayUtil.h +213 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/PolygonBuilder.h +151 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/PrecisionReducer.h +75 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/PrecisionUtil.h +245 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/RingClipper.h +112 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/RobustClipEnvelopeComputer.h +84 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/UnaryUnionNG.h +95 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/polygonize/BuildArea.h +75 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/polygonize/EdgeRing.h +350 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/polygonize/HoleAssigner.h +65 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/polygonize/PolygonizeDirectedEdge.h +127 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/polygonize/PolygonizeEdge.h +58 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/polygonize/PolygonizeGraph.h +214 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/polygonize/Polygonizer.h +260 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/predicate/RectangleContains.h +119 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/predicate/RectangleIntersects.h +98 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/predicate/SegmentIntersectionTester.h +91 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/relate/EdgeEndBuilder.h +70 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/relate/EdgeEndBundle.h +104 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/relate/EdgeEndBundleStar.h +65 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/relate/RelateComputer.h +185 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/relate/RelateNode.h +67 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/relate/RelateNodeFactory.h +55 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/relate/RelateNodeGraph.h +98 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/relate/RelateOp.h +134 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/AdjacentEdgeLocator.h +124 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/BasicPredicate.h +105 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/DimensionLocation.h +60 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/EdgeSegmentIntersector.h +80 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/EdgeSegmentOverlapAction.h +75 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/EdgeSetIntersector.h +94 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/IMPatternMatcher.h +87 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/IMPredicate.h +131 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/IntersectionMatrixPattern.h +65 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/LineStringExtracter.h +77 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/LinearBoundary.h +88 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/NodeSection.h +166 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/NodeSections.h +102 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/PolygonNodeConverter.h +112 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/RelateEdge.h +176 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/RelateGeometry.h +272 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/RelateMatrixPredicate.h +85 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/RelateNG.h +295 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/RelateNode.h +146 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/RelatePointLocator.h +213 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/RelatePredicate.h +652 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/RelateSegmentString.h +161 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/TopologyComputer.h +236 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/TopologyPredicate.h +206 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/sharedpaths/SharedPathsOp.h +161 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/union/CascadedPolygonUnion.h +246 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/union/CoverageUnion.h +65 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/union/DisjointSubsetUnion.h +49 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/union/OverlapUnion.h +139 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/union/PointGeometryUnion.h +72 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/union/UnaryUnionOp.h +243 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/union/UnionStrategy.h +73 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/valid/ConsistentAreaTester.h +137 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/valid/IndexedNestedHoleTester.h +83 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/valid/IndexedNestedPolygonTester.h +111 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/valid/IsSimpleOp.h +299 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/valid/IsValidOp.h +307 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/valid/MakeValid.h +76 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/valid/PolygonIntersectionAnalyzer.h +125 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/valid/PolygonRing.h +231 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/valid/PolygonRingSelfNode.h +84 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/valid/PolygonRingTouch.h +65 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/valid/PolygonTopologyAnalyzer.h +211 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/valid/RepeatedPointRemover.h +60 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/valid/RepeatedPointTester.h +66 -0
- package/dist/prebuilt/Android-x86_64/include/geos/operation/valid/TopologyValidationError.h +76 -0
- package/dist/prebuilt/Android-x86_64/include/geos/planargraph/DirectedEdge.h +237 -0
- package/dist/prebuilt/Android-x86_64/include/geos/planargraph/DirectedEdgeStar.h +149 -0
- package/dist/prebuilt/Android-x86_64/include/geos/planargraph/Edge.h +141 -0
- package/dist/prebuilt/Android-x86_64/include/geos/planargraph/GraphComponent.h +182 -0
- package/dist/prebuilt/Android-x86_64/include/geos/planargraph/Node.h +158 -0
- package/dist/prebuilt/Android-x86_64/include/geos/planargraph/NodeMap.h +135 -0
- package/dist/prebuilt/Android-x86_64/include/geos/planargraph/PlanarGraph.h +293 -0
- package/dist/prebuilt/Android-x86_64/include/geos/planargraph/Subgraph.h +181 -0
- package/dist/prebuilt/Android-x86_64/include/geos/planargraph/algorithm/ConnectedSubgraphFinder.h +92 -0
- package/dist/prebuilt/Android-x86_64/include/geos/precision/CommonBits.h +97 -0
- package/dist/prebuilt/Android-x86_64/include/geos/precision/CommonBitsOp.h +172 -0
- package/dist/prebuilt/Android-x86_64/include/geos/precision/CommonBitsRemover.h +92 -0
- package/dist/prebuilt/Android-x86_64/include/geos/precision/EnhancedPrecisionOp.h +105 -0
- package/dist/prebuilt/Android-x86_64/include/geos/precision/GeometryPrecisionReducer.h +202 -0
- package/dist/prebuilt/Android-x86_64/include/geos/precision/MinimumClearance.h +57 -0
- package/dist/prebuilt/Android-x86_64/include/geos/precision/PointwisePrecisionReducerTransformer.h +74 -0
- package/dist/prebuilt/Android-x86_64/include/geos/precision/PrecisionReducerCoordinateOperation.h +65 -0
- package/dist/prebuilt/Android-x86_64/include/geos/precision/PrecisionReducerTransformer.h +95 -0
- package/dist/prebuilt/Android-x86_64/include/geos/precision/SimpleGeometryPrecisionReducer.h +88 -0
- package/dist/prebuilt/Android-x86_64/include/geos/profiler.h +185 -0
- package/dist/prebuilt/Android-x86_64/include/geos/shape/fractal/HilbertCode.h +128 -0
- package/dist/prebuilt/Android-x86_64/include/geos/shape/fractal/HilbertEncoder.h +96 -0
- package/dist/prebuilt/Android-x86_64/include/geos/shape/fractal/MortonCode.h +140 -0
- package/dist/prebuilt/Android-x86_64/include/geos/simplify/ComponentJumpChecker.h +120 -0
- package/dist/prebuilt/Android-x86_64/include/geos/simplify/DouglasPeuckerLineSimplifier.h +103 -0
- package/dist/prebuilt/Android-x86_64/include/geos/simplify/DouglasPeuckerSimplifier.h +84 -0
- package/dist/prebuilt/Android-x86_64/include/geos/simplify/LineSegmentIndex.h +87 -0
- package/dist/prebuilt/Android-x86_64/include/geos/simplify/LinkedLine.h +84 -0
- package/dist/prebuilt/Android-x86_64/include/geos/simplify/LinkedRing.h +69 -0
- package/dist/prebuilt/Android-x86_64/include/geos/simplify/PolygonHullSimplifier.h +232 -0
- package/dist/prebuilt/Android-x86_64/include/geos/simplify/RingHull.h +209 -0
- package/dist/prebuilt/Android-x86_64/include/geos/simplify/RingHullIndex.h +55 -0
- package/dist/prebuilt/Android-x86_64/include/geos/simplify/TaggedLineSegment.h +83 -0
- package/dist/prebuilt/Android-x86_64/include/geos/simplify/TaggedLineString.h +145 -0
- package/dist/prebuilt/Android-x86_64/include/geos/simplify/TaggedLineStringSimplifier.h +178 -0
- package/dist/prebuilt/Android-x86_64/include/geos/simplify/TaggedLinesSimplifier.h +88 -0
- package/dist/prebuilt/Android-x86_64/include/geos/simplify/TopologyPreservingSimplifier.h +93 -0
- package/dist/prebuilt/Android-x86_64/include/geos/triangulate/DelaunayTriangulationBuilder.h +166 -0
- package/dist/prebuilt/Android-x86_64/include/geos/triangulate/IncrementalDelaunayTriangulator.h +106 -0
- package/dist/prebuilt/Android-x86_64/include/geos/triangulate/VoronoiDiagramBuilder.h +157 -0
- package/dist/prebuilt/Android-x86_64/include/geos/triangulate/polygon/ConstrainedDelaunayTriangulator.h +101 -0
- package/dist/prebuilt/Android-x86_64/include/geos/triangulate/polygon/PolygonEarClipper.h +218 -0
- package/dist/prebuilt/Android-x86_64/include/geos/triangulate/polygon/PolygonHoleJoiner.h +267 -0
- package/dist/prebuilt/Android-x86_64/include/geos/triangulate/polygon/PolygonNoder.h +101 -0
- package/dist/prebuilt/Android-x86_64/include/geos/triangulate/polygon/PolygonTriangulator.h +105 -0
- package/dist/prebuilt/Android-x86_64/include/geos/triangulate/polygon/TriDelaunayImprover.h +147 -0
- package/dist/prebuilt/Android-x86_64/include/geos/triangulate/quadedge/LastFoundQuadEdgeLocator.h +63 -0
- package/dist/prebuilt/Android-x86_64/include/geos/triangulate/quadedge/LocateFailureException.h +37 -0
- package/dist/prebuilt/Android-x86_64/include/geos/triangulate/quadedge/QuadEdge.h +443 -0
- package/dist/prebuilt/Android-x86_64/include/geos/triangulate/quadedge/QuadEdgeLocator.h +48 -0
- package/dist/prebuilt/Android-x86_64/include/geos/triangulate/quadedge/QuadEdgeQuartet.h +64 -0
- package/dist/prebuilt/Android-x86_64/include/geos/triangulate/quadedge/QuadEdgeSubdivision.h +514 -0
- package/dist/prebuilt/Android-x86_64/include/geos/triangulate/quadedge/TrianglePredicate.h +124 -0
- package/dist/prebuilt/Android-x86_64/include/geos/triangulate/quadedge/TriangleVisitor.h +48 -0
- package/dist/prebuilt/Android-x86_64/include/geos/triangulate/quadedge/Vertex.h +312 -0
- package/dist/prebuilt/Android-x86_64/include/geos/triangulate/tri/Tri.h +186 -0
- package/dist/prebuilt/Android-x86_64/include/geos/triangulate/tri/TriEdge.h +80 -0
- package/dist/prebuilt/Android-x86_64/include/geos/triangulate/tri/TriList.h +182 -0
- package/dist/prebuilt/Android-x86_64/include/geos/triangulate/tri/TriangulationBuilder.h +86 -0
- package/dist/prebuilt/Android-x86_64/include/geos/unload.h +33 -0
- package/dist/prebuilt/Android-x86_64/include/geos/util/Assert.h +66 -0
- package/dist/prebuilt/Android-x86_64/include/geos/util/AssertionFailedException.h +48 -0
- package/dist/prebuilt/Android-x86_64/include/geos/util/CoordinateArrayFilter.h +85 -0
- package/dist/prebuilt/Android-x86_64/include/geos/util/GEOSException.h +64 -0
- package/dist/prebuilt/Android-x86_64/include/geos/util/GeometricShapeFactory.h +198 -0
- package/dist/prebuilt/Android-x86_64/include/geos/util/IllegalArgumentException.h +50 -0
- package/dist/prebuilt/Android-x86_64/include/geos/util/IllegalStateException.h +42 -0
- package/dist/prebuilt/Android-x86_64/include/geos/util/Interrupt.h +71 -0
- package/dist/prebuilt/Android-x86_64/include/geos/util/Machine.h +26 -0
- package/dist/prebuilt/Android-x86_64/include/geos/util/TopologyException.h +64 -0
- package/dist/prebuilt/Android-x86_64/include/geos/util/UniqueCoordinateArrayFilter.h +114 -0
- package/dist/prebuilt/Android-x86_64/include/geos/util/UnsupportedOperationException.h +52 -0
- package/dist/prebuilt/Android-x86_64/include/geos/util/math.h +45 -0
- package/dist/prebuilt/Android-x86_64/include/geos/util/string.h +31 -0
- package/dist/prebuilt/Android-x86_64/include/geos/util.h +86 -0
- package/dist/prebuilt/Android-x86_64/include/geos/vend/include_nlohmann_json.hpp +24 -0
- package/dist/prebuilt/Android-x86_64/include/geos/vend/json.hpp +25597 -0
- package/dist/prebuilt/Android-x86_64/include/geos/version.h +37 -0
- package/dist/prebuilt/Android-x86_64/include/geos.h +40 -0
- package/dist/prebuilt/Android-x86_64/include/geos_c.h +6121 -0
- package/dist/prebuilt/Android-x86_64/lib/cmake/GEOS/geos-config-version.cmake +43 -0
- package/dist/prebuilt/Android-x86_64/lib/cmake/GEOS/geos-config.cmake +11 -0
- package/dist/prebuilt/Android-x86_64/lib/cmake/GEOS/geos-targets-release.cmake +30 -0
- package/dist/prebuilt/Android-x86_64/lib/cmake/GEOS/geos-targets.cmake +124 -0
- package/dist/prebuilt/Android-x86_64/lib/libgeos.so +0 -0
- package/dist/prebuilt/Android-x86_64/lib/libgeos_c.so +0 -0
- package/dist/prebuilt/Android-x86_64/lib/pkgconfig/geos.pc +12 -0
- package/dist/prebuilt/iOS-iphoneos/bin/geosop.app/Info.plist +0 -0
- package/dist/prebuilt/iOS-iphoneos/bin/geosop.app/_CodeSignature/CodeResources +1 -1
- package/dist/prebuilt/iOS-iphoneos/bin/geosop.app/geosop +0 -0
- package/dist/prebuilt/iOS-iphoneos/lib/libgeos.a +0 -0
- package/dist/prebuilt/iOS-iphoneos/lib/libgeos_c.a +0 -0
- package/dist/prebuilt/iOS-iphonesimulator/bin/geosop.app/Info.plist +0 -0
- package/dist/prebuilt/iOS-iphonesimulator/bin/geosop.app/_CodeSignature/CodeResources +1 -1
- package/dist/prebuilt/iOS-iphonesimulator/bin/geosop.app/geosop +0 -0
- package/dist/prebuilt/iOS-iphonesimulator/lib/libgeos.a +0 -0
- package/dist/prebuilt/iOS-iphonesimulator/lib/libgeos_c.a +0 -0
- package/geos.xcframework/ios-arm64_arm64e/libgeos.a +0 -0
- package/geos.xcframework/ios-arm64_arm64e_x86_64-simulator/libgeos.a +0 -0
- package/geos_c.xcframework/ios-arm64_arm64e/libgeos_c.a +0 -0
- package/geos_c.xcframework/ios-arm64_arm64e_x86_64-simulator/libgeos_c.a +0 -0
- package/package.json +2 -2
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
/**********************************************************************
|
|
2
|
+
*
|
|
3
|
+
* GEOS - Geometry Engine Open Source
|
|
4
|
+
* http://geos.osgeo.org
|
|
5
|
+
*
|
|
6
|
+
* Copyright (C) 2023 Paul Ramsey <pramsey@cleverelephant.ca>
|
|
7
|
+
*
|
|
8
|
+
* This is free software; you can redistribute and/or modify it under
|
|
9
|
+
* the terms of the GNU Lesser General Public Licence as published
|
|
10
|
+
* by the Free Software Foundation.
|
|
11
|
+
* See the COPYING file for more information.
|
|
12
|
+
*
|
|
13
|
+
**********************************************************************/
|
|
14
|
+
|
|
15
|
+
#pragma once
|
|
16
|
+
|
|
17
|
+
#include <geos/export.h>
|
|
18
|
+
|
|
19
|
+
#include <vector>
|
|
20
|
+
#include <memory>
|
|
21
|
+
|
|
22
|
+
// Forward declarations
|
|
23
|
+
namespace geos {
|
|
24
|
+
namespace geom {
|
|
25
|
+
class CoordinateSequence;
|
|
26
|
+
class CoordinateXY;
|
|
27
|
+
class Geometry;
|
|
28
|
+
class GeometryFactory;
|
|
29
|
+
class LineSegment;
|
|
30
|
+
class LineString;
|
|
31
|
+
class Polygon;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
using geos::geom::CoordinateSequence;
|
|
36
|
+
using geos::geom::CoordinateXY;
|
|
37
|
+
using geos::geom::Geometry;
|
|
38
|
+
using geos::geom::GeometryFactory;
|
|
39
|
+
using geos::geom::LineSegment;
|
|
40
|
+
using geos::geom::LineString;
|
|
41
|
+
using geos::geom::Polygon;
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
namespace geos {
|
|
45
|
+
namespace algorithm { // geos::algorithm
|
|
46
|
+
|
|
47
|
+
|
|
48
|
+
/**
|
|
49
|
+
* Computes the minimum-area rectangle enclosing a Geometry.
|
|
50
|
+
* Unlike the Envelope, the rectangle may not be axis-parallel.
|
|
51
|
+
*
|
|
52
|
+
* The first step in the algorithm is computing the convex hull of the Geometry.
|
|
53
|
+
* If the input Geometry is known to be convex, a hint can be supplied to
|
|
54
|
+
* avoid this computation.
|
|
55
|
+
*
|
|
56
|
+
* In degenerate cases the minimum enclosing geometry
|
|
57
|
+
* may be a LineString or a Point.
|
|
58
|
+
*
|
|
59
|
+
* The minimum-area enclosing rectangle does not necessarily
|
|
60
|
+
* have the minimum possible width.
|
|
61
|
+
* Use MinimumDiameter to compute this.
|
|
62
|
+
*
|
|
63
|
+
* @see MinimumDiameter
|
|
64
|
+
* @see ConvexHull
|
|
65
|
+
*
|
|
66
|
+
*/
|
|
67
|
+
class GEOS_DLL MinimumAreaRectangle {
|
|
68
|
+
|
|
69
|
+
private:
|
|
70
|
+
|
|
71
|
+
// Members
|
|
72
|
+
const Geometry* m_inputGeom;
|
|
73
|
+
bool m_isConvex;
|
|
74
|
+
|
|
75
|
+
// Methods
|
|
76
|
+
std::unique_ptr<Geometry> getMinimumRectangle();
|
|
77
|
+
|
|
78
|
+
std::unique_ptr<Geometry> computeConvex(const Geometry* convexGeom);
|
|
79
|
+
|
|
80
|
+
/**
|
|
81
|
+
* Computes the minimum-area rectangle for a convex ring of Coordinate.
|
|
82
|
+
*
|
|
83
|
+
* This algorithm uses the "dual rotating calipers" technique.
|
|
84
|
+
* Performance is linear in the number of segments.
|
|
85
|
+
*
|
|
86
|
+
* @param ring the convex ring to scan
|
|
87
|
+
*/
|
|
88
|
+
std::unique_ptr<Polygon> computeConvexRing(const CoordinateSequence* ring);
|
|
89
|
+
|
|
90
|
+
std::size_t findFurthestVertex(
|
|
91
|
+
const CoordinateSequence* pts,
|
|
92
|
+
const LineSegment& baseSeg,
|
|
93
|
+
std::size_t startIndex,
|
|
94
|
+
int orient);
|
|
95
|
+
|
|
96
|
+
bool isFurtherOrEqual(double d1, double d2, int orient);
|
|
97
|
+
|
|
98
|
+
static double orientedDistance(
|
|
99
|
+
const LineSegment& seg,
|
|
100
|
+
const CoordinateXY& p,
|
|
101
|
+
int orient);
|
|
102
|
+
|
|
103
|
+
static std::size_t getNextIndex(
|
|
104
|
+
const CoordinateSequence* ring,
|
|
105
|
+
std::size_t index);
|
|
106
|
+
|
|
107
|
+
/**
|
|
108
|
+
* Creates a line of maximum extent from the provided vertices
|
|
109
|
+
* @param pts the vertices
|
|
110
|
+
* @param factory the geometry factory
|
|
111
|
+
* @return the line of maximum extent
|
|
112
|
+
*/
|
|
113
|
+
static std::unique_ptr<LineString> computeMaximumLine(
|
|
114
|
+
const CoordinateSequence* pts,
|
|
115
|
+
const GeometryFactory* factory);
|
|
116
|
+
|
|
117
|
+
|
|
118
|
+
public:
|
|
119
|
+
|
|
120
|
+
/**
|
|
121
|
+
* Compute a minimum-area rectangle for a given Geometry.
|
|
122
|
+
*
|
|
123
|
+
* @param inputGeom a Geometry
|
|
124
|
+
*/
|
|
125
|
+
MinimumAreaRectangle(const Geometry* inputGeom)
|
|
126
|
+
: m_inputGeom(inputGeom)
|
|
127
|
+
, m_isConvex(false)
|
|
128
|
+
{};
|
|
129
|
+
|
|
130
|
+
/**
|
|
131
|
+
* Compute a minimum rectangle for a Geometry,
|
|
132
|
+
* with a hint if the geometry is convex
|
|
133
|
+
* (e.g. a convex Polygon or LinearRing,
|
|
134
|
+
* or a two-point LineString, or a Point).
|
|
135
|
+
*
|
|
136
|
+
* @param inputGeom a Geometry which is convex
|
|
137
|
+
* @param isConvex true if the input geometry is convex
|
|
138
|
+
*/
|
|
139
|
+
MinimumAreaRectangle(const Geometry* inputGeom, bool isConvex)
|
|
140
|
+
: m_inputGeom(inputGeom)
|
|
141
|
+
, m_isConvex(isConvex)
|
|
142
|
+
{};
|
|
143
|
+
|
|
144
|
+
/**
|
|
145
|
+
* Gets the minimum-area rectangular Polygon which encloses the input geometry.
|
|
146
|
+
* If the convex hull of the input is degenerate (a line or point)
|
|
147
|
+
* a LineString or Point is returned.
|
|
148
|
+
*
|
|
149
|
+
* @param geom the geometry
|
|
150
|
+
* @return the minimum rectangle enclosing the geometry
|
|
151
|
+
*/
|
|
152
|
+
static std::unique_ptr<Geometry> getMinimumRectangle(const Geometry* geom);
|
|
153
|
+
|
|
154
|
+
};
|
|
155
|
+
|
|
156
|
+
|
|
157
|
+
} // namespace geos::algorithm
|
|
158
|
+
} // namespace geos
|
|
159
|
+
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
/**********************************************************************
|
|
2
|
+
*
|
|
3
|
+
* GEOS - Geometry Engine Open Source
|
|
4
|
+
* http://geos.osgeo.org
|
|
5
|
+
*
|
|
6
|
+
* Copyright (C) 2019 Paul Ramsey <pramsey@cleverelephant.ca>
|
|
7
|
+
*
|
|
8
|
+
* This is free software; you can redistribute and/or modify it under
|
|
9
|
+
* the terms of the GNU Lesser General Public Licence as published
|
|
10
|
+
* by the Free Software Foundation.
|
|
11
|
+
* See the COPYING file for more information.
|
|
12
|
+
*
|
|
13
|
+
**********************************************************************
|
|
14
|
+
*
|
|
15
|
+
* Last port: algorithm/MinimumBoundingCircle.java 2019-01-23
|
|
16
|
+
*
|
|
17
|
+
**********************************************************************/
|
|
18
|
+
|
|
19
|
+
#pragma once
|
|
20
|
+
|
|
21
|
+
#include <geos/export.h>
|
|
22
|
+
#include <geos/geom/Coordinate.h>
|
|
23
|
+
#include <geos/geom/CoordinateSequence.h>
|
|
24
|
+
#include <geos/geom/Geometry.h>
|
|
25
|
+
#include <geos/geom/Point.h>
|
|
26
|
+
#include <geos/geom/Triangle.h>
|
|
27
|
+
|
|
28
|
+
#include <vector>
|
|
29
|
+
|
|
30
|
+
// Forward declarations
|
|
31
|
+
// namespace geos {
|
|
32
|
+
// namespace geom {
|
|
33
|
+
// class GeometryCollection;
|
|
34
|
+
// }
|
|
35
|
+
// }
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
namespace geos {
|
|
39
|
+
namespace algorithm { // geos::algorithm
|
|
40
|
+
|
|
41
|
+
class GEOS_DLL MinimumBoundingCircle {
|
|
42
|
+
|
|
43
|
+
private:
|
|
44
|
+
|
|
45
|
+
// member variables
|
|
46
|
+
const geom::Geometry* input;
|
|
47
|
+
std::vector<geom::CoordinateXY> extremalPts;
|
|
48
|
+
geom::CoordinateXY centre;
|
|
49
|
+
double radius;
|
|
50
|
+
|
|
51
|
+
void computeCentre();
|
|
52
|
+
void compute();
|
|
53
|
+
void computeCirclePoints();
|
|
54
|
+
geom::CoordinateXY lowestPoint(std::vector<geom::CoordinateXY>& pts);
|
|
55
|
+
geom::CoordinateXY pointWitMinAngleWithX(std::vector<geom::CoordinateXY>& pts, geom::CoordinateXY& P);
|
|
56
|
+
geom::CoordinateXY pointWithMinAngleWithSegment(std::vector<geom::CoordinateXY>& pts,
|
|
57
|
+
geom::CoordinateXY& P, geom::CoordinateXY& Q);
|
|
58
|
+
std::vector<geom::CoordinateXY> farthestPoints(std::vector<geom::CoordinateXY>& pts);
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
public:
|
|
62
|
+
|
|
63
|
+
MinimumBoundingCircle(const geom::Geometry* geom):
|
|
64
|
+
input(nullptr),
|
|
65
|
+
radius(0.0)
|
|
66
|
+
{
|
|
67
|
+
input = geom;
|
|
68
|
+
centre.setNull();
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
~MinimumBoundingCircle() {};
|
|
72
|
+
|
|
73
|
+
/**
|
|
74
|
+
* Gets a geometry which represents the Minimum Bounding Circle.
|
|
75
|
+
* If the input is degenerate (empty or a single unique point),
|
|
76
|
+
* this method will return an empty geometry or a single Point geometry.
|
|
77
|
+
* Otherwise, a Polygon will be returned which approximates the
|
|
78
|
+
* Minimum Bounding Circle.
|
|
79
|
+
* (Note that because the computed polygon is only an approximation,
|
|
80
|
+
* it may not precisely contain all the input points.)
|
|
81
|
+
*
|
|
82
|
+
* @return a Geometry representing the Minimum Bounding Circle.
|
|
83
|
+
*/
|
|
84
|
+
std::unique_ptr<geom::Geometry> getCircle();
|
|
85
|
+
|
|
86
|
+
/**
|
|
87
|
+
* Gets a geometry representing a line between the two farthest points
|
|
88
|
+
* in the input.
|
|
89
|
+
* These points will be two of the extremal points of the Minimum Bounding Circle.
|
|
90
|
+
* They also lie on the convex hull of the input.
|
|
91
|
+
*
|
|
92
|
+
* @return a LineString between the two farthest points of the input
|
|
93
|
+
* @return a empty LineString if the input is empty
|
|
94
|
+
* @return a Point if the input is a point
|
|
95
|
+
*/
|
|
96
|
+
std::unique_ptr<geom::Geometry> getMaximumDiameter();
|
|
97
|
+
|
|
98
|
+
/**
|
|
99
|
+
* Gets a geometry representing the diameter of the computed Minimum Bounding
|
|
100
|
+
* Circle.
|
|
101
|
+
*
|
|
102
|
+
* @return the diameter LineString of the Minimum Bounding Circle
|
|
103
|
+
* @return a empty LineString if the input is empty
|
|
104
|
+
* @return a Point if the input is a point
|
|
105
|
+
*/
|
|
106
|
+
std::unique_ptr<geom::Geometry> getDiameter();
|
|
107
|
+
|
|
108
|
+
/**
|
|
109
|
+
* Gets the extremal points which define the computed Minimum Bounding Circle.
|
|
110
|
+
* There may be zero, one, two or three of these points,
|
|
111
|
+
* depending on the number of points in the input
|
|
112
|
+
* and the geometry of those points.
|
|
113
|
+
*
|
|
114
|
+
* @return the points defining the Minimum Bounding Circle
|
|
115
|
+
*/
|
|
116
|
+
std::vector<geom::CoordinateXY> getExtremalPoints();
|
|
117
|
+
|
|
118
|
+
/**
|
|
119
|
+
* Gets the centre point of the computed Minimum Bounding Circle.
|
|
120
|
+
*
|
|
121
|
+
* @return the centre point of the Minimum Bounding Circle
|
|
122
|
+
* @return null if the input is empty
|
|
123
|
+
*/
|
|
124
|
+
geom::CoordinateXY getCentre();
|
|
125
|
+
|
|
126
|
+
/**
|
|
127
|
+
* Gets the radius of the computed Minimum Bounding Circle.
|
|
128
|
+
*
|
|
129
|
+
* @return the radius of the Minimum Bounding Circle
|
|
130
|
+
*/
|
|
131
|
+
double getRadius();
|
|
132
|
+
|
|
133
|
+
};
|
|
134
|
+
|
|
135
|
+
} // namespace geos::algorithm
|
|
136
|
+
} // namespace geos
|
|
137
|
+
|
|
@@ -0,0 +1,185 @@
|
|
|
1
|
+
/**********************************************************************
|
|
2
|
+
*
|
|
3
|
+
* GEOS - Geometry Engine Open Source
|
|
4
|
+
* http://geos.osgeo.org
|
|
5
|
+
*
|
|
6
|
+
* Copyright (C) 2023 Paul Ramsey <pramsey@cleverelephant.ca>
|
|
7
|
+
* Copyright (C) 2005-2006 Refractions Research Inc.
|
|
8
|
+
* Copyright (C) 2001-2002 Vivid Solutions Inc.
|
|
9
|
+
*
|
|
10
|
+
* This is free software; you can redistribute and/or modify it under
|
|
11
|
+
* the terms of the GNU Lesser General Public Licence as published
|
|
12
|
+
* by the Free Software Foundation.
|
|
13
|
+
* See the COPYING file for more information.
|
|
14
|
+
*
|
|
15
|
+
**********************************************************************/
|
|
16
|
+
|
|
17
|
+
#pragma once
|
|
18
|
+
|
|
19
|
+
#include <geos/geom/Coordinate.h>
|
|
20
|
+
#include <geos/geom/LineSegment.h>
|
|
21
|
+
|
|
22
|
+
#include <memory>
|
|
23
|
+
#include <geos/export.h>
|
|
24
|
+
|
|
25
|
+
// Forward declarations
|
|
26
|
+
namespace geos {
|
|
27
|
+
namespace geom {
|
|
28
|
+
class GeometryFactory;
|
|
29
|
+
class Geometry;
|
|
30
|
+
class LineString;
|
|
31
|
+
class CoordinateSequence;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
namespace geos {
|
|
37
|
+
namespace algorithm { // geos::algorithm
|
|
38
|
+
|
|
39
|
+
/** \brief
|
|
40
|
+
* Computes the minimum diameter of a geom::Geometry
|
|
41
|
+
*
|
|
42
|
+
* The minimum diameter is defined to be the width of the smallest band that
|
|
43
|
+
* contains the geometry, where a band is a strip of the plane defined
|
|
44
|
+
* by two parallel lines. This can be thought of as the smallest hole
|
|
45
|
+
* that the geometry can be moved through, with a single rotation.
|
|
46
|
+
*
|
|
47
|
+
* The first step in the algorithm is computing the convex hull of the Geometry.
|
|
48
|
+
* If the input Geometry is known to be convex, a hint can be supplied to
|
|
49
|
+
* avoid this computation.
|
|
50
|
+
*
|
|
51
|
+
* This class can also be used to compute a line segment representing
|
|
52
|
+
* the minimum diameter, the supporting line segment of the minimum diameter,
|
|
53
|
+
* and a minimum-width rectangle of the input geometry.
|
|
54
|
+
* This rectangle will have width equal to the minimum diameter, and have
|
|
55
|
+
* one side parallel to the supporting segment.
|
|
56
|
+
*
|
|
57
|
+
* In degenerate cases the rectangle may be a LineString or a Point.
|
|
58
|
+
* (Note that this may not be the enclosing rectangle with minimum area;
|
|
59
|
+
* use MinimumAreaRectangle to compute this.)
|
|
60
|
+
*
|
|
61
|
+
* @see ConvexHull
|
|
62
|
+
* @see MinimumAreaRectangle
|
|
63
|
+
*/
|
|
64
|
+
class GEOS_DLL MinimumDiameter {
|
|
65
|
+
private:
|
|
66
|
+
const geom::Geometry* inputGeom;
|
|
67
|
+
bool isConvex;
|
|
68
|
+
|
|
69
|
+
std::unique_ptr<geom::CoordinateSequence> convexHullPts;
|
|
70
|
+
|
|
71
|
+
geom::LineSegment minBaseSeg;
|
|
72
|
+
geom::Coordinate minWidthPt;
|
|
73
|
+
std::size_t minPtIndex;
|
|
74
|
+
double minWidth;
|
|
75
|
+
void computeMinimumDiameter();
|
|
76
|
+
void computeWidthConvex(const geom::Geometry* geom);
|
|
77
|
+
|
|
78
|
+
/**
|
|
79
|
+
* Compute the width information for a ring of Coordinate.
|
|
80
|
+
* Leaves the width information in the instance variables.
|
|
81
|
+
*
|
|
82
|
+
* @param pts
|
|
83
|
+
* @return
|
|
84
|
+
*/
|
|
85
|
+
void computeConvexRingMinDiameter(const geom::CoordinateSequence* pts);
|
|
86
|
+
|
|
87
|
+
unsigned int findMaxPerpDistance(const geom::CoordinateSequence* pts,
|
|
88
|
+
const geom::LineSegment* seg, unsigned int startIndex);
|
|
89
|
+
|
|
90
|
+
static unsigned int getNextIndex(const geom::CoordinateSequence* pts,
|
|
91
|
+
unsigned int index);
|
|
92
|
+
|
|
93
|
+
static double computeC(double a, double b, const geom::Coordinate& p);
|
|
94
|
+
|
|
95
|
+
static geom::LineSegment computeSegmentForLine(double a, double b, double c);
|
|
96
|
+
|
|
97
|
+
static std::unique_ptr<geom::Geometry> computeMaximumLine(
|
|
98
|
+
const geom::CoordinateSequence* pts,
|
|
99
|
+
const geom::GeometryFactory* factory);
|
|
100
|
+
|
|
101
|
+
public:
|
|
102
|
+
~MinimumDiameter() = default;
|
|
103
|
+
|
|
104
|
+
/** \brief
|
|
105
|
+
* Compute a minimum diameter for a given [Geometry](@ref geom::Geometry).
|
|
106
|
+
*
|
|
107
|
+
* @param newInputGeom a Geometry
|
|
108
|
+
*/
|
|
109
|
+
MinimumDiameter(const geom::Geometry* newInputGeom);
|
|
110
|
+
|
|
111
|
+
/** \brief
|
|
112
|
+
* Compute a minimum diameter for a given Geometry,
|
|
113
|
+
* with a hint if the Geometry is convex
|
|
114
|
+
* (e.g. a convex Polygon or LinearRing,
|
|
115
|
+
* or a two-point LineString, or a Point).
|
|
116
|
+
*
|
|
117
|
+
* @param newInputGeom a Geometry which is convex
|
|
118
|
+
* @param newIsConvex `true` if the input geometry is convex
|
|
119
|
+
*/
|
|
120
|
+
MinimumDiameter(const geom::Geometry* newInputGeom,
|
|
121
|
+
const bool newIsConvex);
|
|
122
|
+
|
|
123
|
+
/** \brief
|
|
124
|
+
* Gets the length of the minimum diameter of the input Geometry.
|
|
125
|
+
*
|
|
126
|
+
* @return the length of the minimum diameter
|
|
127
|
+
*/
|
|
128
|
+
double getLength();
|
|
129
|
+
|
|
130
|
+
/** \brief
|
|
131
|
+
* Gets the geom::Coordinate forming one end of the minimum diameter.
|
|
132
|
+
*
|
|
133
|
+
* @return a coordinate forming one end of the minimum diameter
|
|
134
|
+
*/
|
|
135
|
+
const geom::Coordinate& getWidthCoordinate();
|
|
136
|
+
|
|
137
|
+
/** \brief
|
|
138
|
+
* Gets the segment forming the base of the minimum diameter.
|
|
139
|
+
*
|
|
140
|
+
* @return the segment forming the base of the minimum diameter
|
|
141
|
+
*/
|
|
142
|
+
std::unique_ptr<geom::LineString> getSupportingSegment();
|
|
143
|
+
|
|
144
|
+
/** \brief
|
|
145
|
+
* Gets a LineString which is a minimum diameter.
|
|
146
|
+
*
|
|
147
|
+
* @return a LineString which is a minimum diameter
|
|
148
|
+
*/
|
|
149
|
+
std::unique_ptr<geom::LineString> getDiameter();
|
|
150
|
+
|
|
151
|
+
/** \brief
|
|
152
|
+
* Gets the rectangular Polygon which encloses the input geometry
|
|
153
|
+
* and is based on the minimum diameter supporting segment.
|
|
154
|
+
*
|
|
155
|
+
* The rectangle has width equal to the minimum diameter, and a longer
|
|
156
|
+
* length. If the convex hill of the input is degenerate (a line or point)
|
|
157
|
+
* a LineString or Point is returned.
|
|
158
|
+
* This is not necessarily the rectangle with minimum area.
|
|
159
|
+
* Use MinimumAreaRectangle to compute this.
|
|
160
|
+
*
|
|
161
|
+
* @return the the minimum-width rectangle enclosing the geometry
|
|
162
|
+
* @see MinimumAreaRectangle
|
|
163
|
+
*/
|
|
164
|
+
std::unique_ptr<geom::Geometry> getMinimumRectangle();
|
|
165
|
+
|
|
166
|
+
/** \brief
|
|
167
|
+
* Gets the minimum rectangle enclosing a geometry.
|
|
168
|
+
*
|
|
169
|
+
* @param geom the geometry
|
|
170
|
+
* @return a rectangle enclosing the input (or a line or point if degenerate)
|
|
171
|
+
* @see MinimumAreaRectangle
|
|
172
|
+
*/
|
|
173
|
+
static std::unique_ptr<geom::Geometry> getMinimumRectangle(geom::Geometry* geom);
|
|
174
|
+
|
|
175
|
+
/** \brief
|
|
176
|
+
* Gets the length of the minimum diameter enclosing a geometry.
|
|
177
|
+
* @param geom the geometry
|
|
178
|
+
* @return the length of the minimum diameter of the geometry
|
|
179
|
+
*/
|
|
180
|
+
static std::unique_ptr<geom::Geometry> getMinimumDiameter(geom::Geometry* geom);
|
|
181
|
+
|
|
182
|
+
};
|
|
183
|
+
|
|
184
|
+
} // namespace geos::algorithm
|
|
185
|
+
} // namespace geos
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/**********************************************************************
|
|
2
|
+
*
|
|
3
|
+
* GEOS - Geometry Engine Open Source
|
|
4
|
+
* http://geos.osgeo.org
|
|
5
|
+
*
|
|
6
|
+
* Copyright (C) 2005-2006 Refractions Research Inc.
|
|
7
|
+
* Copyright (C) 2001-2002 Vivid Solutions Inc.
|
|
8
|
+
*
|
|
9
|
+
* This is free software; you can redistribute and/or modify it under
|
|
10
|
+
* the terms of the GNU Lesser General Public Licence as published
|
|
11
|
+
* by the Free Software Foundation.
|
|
12
|
+
* See the COPYING file for more information.
|
|
13
|
+
*
|
|
14
|
+
**********************************************************************/
|
|
15
|
+
|
|
16
|
+
#pragma once
|
|
17
|
+
|
|
18
|
+
#include <geos/export.h>
|
|
19
|
+
#include <string>
|
|
20
|
+
#include <geos/util/GEOSException.h>
|
|
21
|
+
|
|
22
|
+
namespace geos {
|
|
23
|
+
namespace algorithm { // geos::algorithm
|
|
24
|
+
|
|
25
|
+
/**
|
|
26
|
+
* \class NotRepresentableException
|
|
27
|
+
* \brief
|
|
28
|
+
* Indicates that a HCoordinate has been computed which is
|
|
29
|
+
* not representable on the Cartesian plane.
|
|
30
|
+
*
|
|
31
|
+
* @version 1.4
|
|
32
|
+
* @see HCoordinate
|
|
33
|
+
*/
|
|
34
|
+
class GEOS_DLL NotRepresentableException: public util::GEOSException {
|
|
35
|
+
public:
|
|
36
|
+
NotRepresentableException();
|
|
37
|
+
NotRepresentableException(std::string msg);
|
|
38
|
+
~NotRepresentableException() noexcept override {}
|
|
39
|
+
};
|
|
40
|
+
|
|
41
|
+
} // namespace geos::algorithm
|
|
42
|
+
} // namespace geos
|
|
43
|
+
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
/**********************************************************************
|
|
2
|
+
*
|
|
3
|
+
* GEOS - Geometry Engine Open Source
|
|
4
|
+
* http://geos.osgeo.org
|
|
5
|
+
*
|
|
6
|
+
* Copyright (C) 2018 Paul Ramsey <pramsey@cleverlephant.ca>
|
|
7
|
+
*
|
|
8
|
+
* This is free software; you can redistribute and/or modify it under
|
|
9
|
+
* the terms of the GNU Lesser General Public Licence as published
|
|
10
|
+
* by the Free Software Foundation.
|
|
11
|
+
* See the COPYING file for more information.
|
|
12
|
+
*
|
|
13
|
+
**********************************************************************
|
|
14
|
+
*
|
|
15
|
+
* Last port: algorithm/Orientation.java @ 2017-09-04
|
|
16
|
+
*
|
|
17
|
+
**********************************************************************/
|
|
18
|
+
|
|
19
|
+
#pragma once
|
|
20
|
+
|
|
21
|
+
#include <geos/export.h>
|
|
22
|
+
#include <geos/geom/Coordinate.h>
|
|
23
|
+
#include <geos/geom/CoordinateSequence.h>
|
|
24
|
+
|
|
25
|
+
namespace geos {
|
|
26
|
+
namespace algorithm { // geos::algorithm
|
|
27
|
+
|
|
28
|
+
/** \brief
|
|
29
|
+
* Functions to compute the orientation of basic geometric structures
|
|
30
|
+
* including point triplets (triangles) and rings.
|
|
31
|
+
*
|
|
32
|
+
* Orientation is a fundamental property of planar geometries
|
|
33
|
+
* (and more generally geometry on two-dimensional manifolds).
|
|
34
|
+
*
|
|
35
|
+
* Orientation is notoriously subject to numerical precision errors
|
|
36
|
+
* in the case of collinear or nearly collinear points.
|
|
37
|
+
* JTS uses extended-precision arithmetic to increase
|
|
38
|
+
* the robustness of the computation.
|
|
39
|
+
*
|
|
40
|
+
* @author Martin Davis
|
|
41
|
+
*/
|
|
42
|
+
class GEOS_DLL Orientation {
|
|
43
|
+
public:
|
|
44
|
+
|
|
45
|
+
/* A value that indicates an orientation or turn */
|
|
46
|
+
enum {
|
|
47
|
+
CLOCKWISE = -1,
|
|
48
|
+
COLLINEAR = 0,
|
|
49
|
+
COUNTERCLOCKWISE = 1,
|
|
50
|
+
RIGHT = -1,
|
|
51
|
+
LEFT = 1,
|
|
52
|
+
STRAIGHT = 0
|
|
53
|
+
};
|
|
54
|
+
|
|
55
|
+
/** \brief
|
|
56
|
+
* Returns the orientation index of the direction of the point q relative to
|
|
57
|
+
* a directed infinite line specified by p1-p2.
|
|
58
|
+
*
|
|
59
|
+
* The index indicates whether the point lies to the
|
|
60
|
+
* `Orientation::LEFT` or `Orientation::RIGHT`
|
|
61
|
+
* of the line, or lies on it `Orientation::COLLINEAR`.
|
|
62
|
+
* The index also indicates the orientation of the triangle formed
|
|
63
|
+
* by the three points
|
|
64
|
+
* ( `Orientation::COUNTERCLOCKWISE`,
|
|
65
|
+
* `Orientation::CLOCKWISE`, or `Orientation::STRAIGHT` )
|
|
66
|
+
*/
|
|
67
|
+
static int index(const geom::CoordinateXY& p1, const geom::CoordinateXY& p2,
|
|
68
|
+
const geom::CoordinateXY& q);
|
|
69
|
+
|
|
70
|
+
/**
|
|
71
|
+
* Computes whether a ring defined by a geom::CoordinateSequence is
|
|
72
|
+
* oriented counter-clockwise.
|
|
73
|
+
*
|
|
74
|
+
* * The list of points is assumed to have the first and last points equal.
|
|
75
|
+
* * This handles coordinate lists which contain repeated points.
|
|
76
|
+
* * This handles rings which contain collapsed segments
|
|
77
|
+
* (in particular, along the top of the ring).
|
|
78
|
+
*
|
|
79
|
+
* This algorithm is guaranteed to work with valid rings.
|
|
80
|
+
* It also works with "mildly invalid" rings
|
|
81
|
+
* which contain collapsed (coincident) flat segments along the top of the ring.
|
|
82
|
+
* If the ring is "more" invalid (e.g. self-crosses or touches),
|
|
83
|
+
* the computed result may not be correct.
|
|
84
|
+
*
|
|
85
|
+
* @param ring a CoordinateSequence forming a ring (with first and last point identical)
|
|
86
|
+
* @return true if the ring is oriented counter-clockwise.
|
|
87
|
+
* @throws IllegalArgumentException if there are too few points to determine orientation (< 4)
|
|
88
|
+
*/
|
|
89
|
+
static bool isCCW(const geom::CoordinateSequence* ring);
|
|
90
|
+
|
|
91
|
+
/**
|
|
92
|
+
* Tests if a ring defined by a CoordinateSequence is
|
|
93
|
+
* oriented counter-clockwise, using the signed area of the ring.
|
|
94
|
+
*
|
|
95
|
+
* * The list of points is assumed to have the first and last points equal.
|
|
96
|
+
* * This handles coordinate lists which contain repeated points.
|
|
97
|
+
* * This handles rings which contain collapsed segments
|
|
98
|
+
* (in particular, along the top of the ring).
|
|
99
|
+
* * This handles rings which are invalid due to self-intersection
|
|
100
|
+
*
|
|
101
|
+
* This algorithm is guaranteed to work with valid rings.
|
|
102
|
+
* For invalid rings (containing self-intersections),
|
|
103
|
+
* the algorithm determines the orientation of
|
|
104
|
+
* the largest enclosed area (including overlaps).
|
|
105
|
+
* This provides a more useful result in some situations, such as buffering.
|
|
106
|
+
*
|
|
107
|
+
* However, this approach may be less accurate in the case of
|
|
108
|
+
* rings with almost zero area.
|
|
109
|
+
* (Note that the orientation of rings with zero area is essentially
|
|
110
|
+
* undefined, and hence non-deterministic.)
|
|
111
|
+
*
|
|
112
|
+
* @param ring a CoordinateSequence forming a ring (with first and last point identical)
|
|
113
|
+
* @return true if the ring is oriented counter-clockwise.
|
|
114
|
+
*/
|
|
115
|
+
static bool isCCWArea(const geom::CoordinateSequence* ring);
|
|
116
|
+
|
|
117
|
+
};
|
|
118
|
+
|
|
119
|
+
|
|
120
|
+
} // namespace geos::algorithm
|
|
121
|
+
} // namespace geos
|
|
122
|
+
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/**********************************************************************
|
|
2
|
+
*
|
|
3
|
+
* GEOS - Geometry Engine Open Source
|
|
4
|
+
* http://geos.osgeo.org
|
|
5
|
+
*
|
|
6
|
+
* Copyright (C) 2005-2006 Refractions Research Inc.
|
|
7
|
+
* Copyright (C) 2001-2002 Vivid Solutions Inc.
|
|
8
|
+
*
|
|
9
|
+
* This is free software; you can redistribute and/or modify it under
|
|
10
|
+
* the terms of the GNU Lesser General Public Licence as published
|
|
11
|
+
* by the Free Software Foundation.
|
|
12
|
+
* See the COPYING file for more information.
|
|
13
|
+
*
|
|
14
|
+
**********************************************************************/
|
|
15
|
+
|
|
16
|
+
#pragma once
|
|
17
|
+
|
|
18
|
+
#include <geos/export.h>
|
|
19
|
+
|
|
20
|
+
// Forward declarations
|
|
21
|
+
namespace geos {
|
|
22
|
+
namespace geom {
|
|
23
|
+
class Coordinate;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
namespace geos {
|
|
28
|
+
namespace algorithm { // geos::algorithm
|
|
29
|
+
|
|
30
|
+
class GEOS_DLL PointInRing {
|
|
31
|
+
public:
|
|
32
|
+
virtual
|
|
33
|
+
~PointInRing() {}
|
|
34
|
+
virtual bool isInside(const geom::Coordinate& pt) = 0;
|
|
35
|
+
};
|
|
36
|
+
|
|
37
|
+
} // namespace geos::algorithm
|
|
38
|
+
} // namespace geos
|
|
39
|
+
|
|
40
|
+
|