@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,255 @@
|
|
|
1
|
+
/**********************************************************************
|
|
2
|
+
*
|
|
3
|
+
* GEOS - Geometry Engine Open Source
|
|
4
|
+
* http://geos.osgeo.org
|
|
5
|
+
*
|
|
6
|
+
* Copyright (C) 2020 Paul Ramsey <pramsey@cleverelephant.ca>
|
|
7
|
+
*
|
|
8
|
+
* This is free software; you can redistribute and/or modify it under
|
|
9
|
+
* the terms of the GNU Lesser General Public Licence as published
|
|
10
|
+
* by the Free Software Foundation.
|
|
11
|
+
* See the COPYING file for more information.
|
|
12
|
+
*
|
|
13
|
+
**********************************************************************
|
|
14
|
+
*
|
|
15
|
+
* Last port: operation/overlayng/EdgeNodingBuilder.java 6ef89b096
|
|
16
|
+
*
|
|
17
|
+
**********************************************************************/
|
|
18
|
+
|
|
19
|
+
#pragma once
|
|
20
|
+
|
|
21
|
+
#include <geos/algorithm/LineIntersector.h>
|
|
22
|
+
#include <geos/algorithm/Orientation.h>
|
|
23
|
+
#include <geos/geom/Coordinate.h>
|
|
24
|
+
#include <geos/geom/CoordinateSequence.h>
|
|
25
|
+
#include <geos/geom/CoordinateSequence.h>
|
|
26
|
+
#include <geos/geom/Envelope.h>
|
|
27
|
+
#include <geos/geom/Geometry.h>
|
|
28
|
+
#include <geos/geom/GeometryCollection.h>
|
|
29
|
+
#include <geos/geom/LinearRing.h>
|
|
30
|
+
#include <geos/geom/LineString.h>
|
|
31
|
+
#include <geos/geom/MultiLineString.h>
|
|
32
|
+
#include <geos/geom/MultiPolygon.h>
|
|
33
|
+
#include <geos/geom/Polygon.h>
|
|
34
|
+
#include <geos/noding/IntersectionAdder.h>
|
|
35
|
+
#include <geos/noding/MCIndexNoder.h>
|
|
36
|
+
#include <geos/noding/Noder.h>
|
|
37
|
+
#include <geos/noding/NodedSegmentString.h>
|
|
38
|
+
#include <geos/noding/SegmentString.h>
|
|
39
|
+
#include <geos/noding/ValidatingNoder.h>
|
|
40
|
+
#include <geos/noding/snapround/SnapRoundingNoder.h>
|
|
41
|
+
#include <geos/operation/overlayng/Edge.h>
|
|
42
|
+
#include <geos/operation/overlayng/EdgeSourceInfo.h>
|
|
43
|
+
#include <geos/operation/overlayng/InputGeometry.h>
|
|
44
|
+
#include <geos/operation/overlayng/LineLimiter.h>
|
|
45
|
+
#include <geos/operation/overlayng/OverlayUtil.h>
|
|
46
|
+
#include <geos/operation/overlayng/RingClipper.h>
|
|
47
|
+
#include <geos/operation/valid/RepeatedPointRemover.h>
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
#include <geos/export.h>
|
|
51
|
+
#include <array>
|
|
52
|
+
#include <memory>
|
|
53
|
+
#include <deque>
|
|
54
|
+
|
|
55
|
+
using namespace geos::geom;
|
|
56
|
+
using namespace geos::noding;
|
|
57
|
+
using geos::noding::snapround::SnapRoundingNoder;
|
|
58
|
+
using geos::algorithm::LineIntersector;
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
namespace geos { // geos.
|
|
62
|
+
namespace operation { // geos.operation
|
|
63
|
+
namespace overlayng { // geos.operation.overlayng
|
|
64
|
+
|
|
65
|
+
/**
|
|
66
|
+
* Builds a set of noded, unique, labelled Edges from
|
|
67
|
+
* the edges of the two input geometries.
|
|
68
|
+
*
|
|
69
|
+
* It performs the following steps:
|
|
70
|
+
*
|
|
71
|
+
* - Extracts input edges, and attaches topological information
|
|
72
|
+
* - if clipping is enabled, handles clipping or limiting input geometry
|
|
73
|
+
* - chooses a {@link noding::Noder} based on provided precision model, unless a custom one is supplied
|
|
74
|
+
* - calls the chosen Noder, with precision model
|
|
75
|
+
* - removes any fully collapsed noded edges
|
|
76
|
+
* - builds {@link Edge}s and merges them
|
|
77
|
+
*
|
|
78
|
+
* @author mdavis
|
|
79
|
+
*/
|
|
80
|
+
class GEOS_DLL EdgeNodingBuilder {
|
|
81
|
+
|
|
82
|
+
private:
|
|
83
|
+
|
|
84
|
+
// Constants
|
|
85
|
+
static constexpr int MIN_LIMIT_PTS = 20;
|
|
86
|
+
static constexpr bool IS_NODING_VALIDATED = true;
|
|
87
|
+
|
|
88
|
+
// Members
|
|
89
|
+
const PrecisionModel* pm;
|
|
90
|
+
std::unique_ptr<std::vector<SegmentString*>> inputEdges;
|
|
91
|
+
Noder* customNoder;
|
|
92
|
+
std::array<bool, 2> hasEdges;
|
|
93
|
+
const Envelope* clipEnv;
|
|
94
|
+
std::unique_ptr<RingClipper> clipper;
|
|
95
|
+
std::unique_ptr<LineLimiter> limiter;
|
|
96
|
+
|
|
97
|
+
// For use in createFloatingPrecisionNoder()
|
|
98
|
+
LineIntersector lineInt;
|
|
99
|
+
IntersectionAdder intAdder;
|
|
100
|
+
std::unique_ptr<Noder> internalNoder;
|
|
101
|
+
std::unique_ptr<Noder> spareInternalNoder;
|
|
102
|
+
// EdgeSourceInfo*, Edge* owned by EdgeNodingBuilder, stored in deque
|
|
103
|
+
std::deque<EdgeSourceInfo> edgeSourceInfoQue;
|
|
104
|
+
std::deque<Edge> edgeQue;
|
|
105
|
+
bool inputHasZ;
|
|
106
|
+
bool inputHasM;
|
|
107
|
+
|
|
108
|
+
/**
|
|
109
|
+
* Gets a noder appropriate for the precision model supplied.
|
|
110
|
+
* This is one of:
|
|
111
|
+
*
|
|
112
|
+
* - Fixed precision: a snap-rounding noder (which should be fully robust)
|
|
113
|
+
* - Floating precision: a conventional model (which may be non-robust).
|
|
114
|
+
* In this case, a validation step is applied to the output from the noder.
|
|
115
|
+
*/
|
|
116
|
+
Noder* getNoder();
|
|
117
|
+
static std::unique_ptr<Noder> createFixedPrecisionNoder(const PrecisionModel* pm);
|
|
118
|
+
std::unique_ptr<Noder> createFloatingPrecisionNoder(bool doValidation);
|
|
119
|
+
|
|
120
|
+
|
|
121
|
+
void addCollection(const GeometryCollection* gc, uint8_t geomIndex);
|
|
122
|
+
void addGeometryCollection(const GeometryCollection* gc, uint8_t geomIndex, int expectedDim);
|
|
123
|
+
void addPolygon(const Polygon* poly, uint8_t geomIndex);
|
|
124
|
+
void addPolygonRing(const LinearRing* ring, bool isHole, uint8_t geomIndex);
|
|
125
|
+
void addLine(const LineString* line, uint8_t geomIndex);
|
|
126
|
+
void addLine(std::unique_ptr<CoordinateSequence>& pts, uint8_t geomIndex);
|
|
127
|
+
void addEdge(std::unique_ptr<CoordinateSequence>& cas, const EdgeSourceInfo* info);
|
|
128
|
+
|
|
129
|
+
// Create a EdgeSourceInfo* owned by EdgeNodingBuilder
|
|
130
|
+
const EdgeSourceInfo* createEdgeSourceInfo(uint8_t index, int depthDelta, bool isHole);
|
|
131
|
+
const EdgeSourceInfo* createEdgeSourceInfo(uint8_t index);
|
|
132
|
+
|
|
133
|
+
/**
|
|
134
|
+
* Tests whether a geometry (represented by its envelope)
|
|
135
|
+
* lies completely outside the clip extent(if any).
|
|
136
|
+
*/
|
|
137
|
+
bool isClippedCompletely(const Envelope* env) const;
|
|
138
|
+
|
|
139
|
+
/**
|
|
140
|
+
* Tests whether it is worth limiting a line.
|
|
141
|
+
* Lines that have few vertices or are covered
|
|
142
|
+
* by the clip extent do not need to be limited.
|
|
143
|
+
*/
|
|
144
|
+
bool isToBeLimited(const LineString* line) const;
|
|
145
|
+
|
|
146
|
+
/**
|
|
147
|
+
* If limiter is provided,
|
|
148
|
+
* limit the line to the clip envelope.
|
|
149
|
+
*
|
|
150
|
+
*/
|
|
151
|
+
std::vector<std::unique_ptr<CoordinateSequence>>& limit(const LineString* line);
|
|
152
|
+
|
|
153
|
+
/**
|
|
154
|
+
* If a clipper is present,
|
|
155
|
+
* clip the line to the clip extent.
|
|
156
|
+
* Otherwise, remove duplicate points from the ring.
|
|
157
|
+
*
|
|
158
|
+
* If clipping is enabled, then every ring MUST
|
|
159
|
+
* be clipped, to ensure that holes are clipped to
|
|
160
|
+
* be inside the shell.
|
|
161
|
+
* This means it is not possible to skip
|
|
162
|
+
* clipping for rings with few vertices.
|
|
163
|
+
*
|
|
164
|
+
* @param ring the line to clip
|
|
165
|
+
* @return the points in the clipped line
|
|
166
|
+
*/
|
|
167
|
+
std::unique_ptr<CoordinateSequence> clip(const LinearRing* line);
|
|
168
|
+
|
|
169
|
+
/**
|
|
170
|
+
* Removes any repeated points from a linear component.
|
|
171
|
+
* This is required so that noding can be computed correctly.
|
|
172
|
+
*
|
|
173
|
+
* @param line the line to process
|
|
174
|
+
* @return the points of the line with repeated points removed
|
|
175
|
+
*/
|
|
176
|
+
static std::unique_ptr<CoordinateSequence> removeRepeatedPoints(const LineString* line);
|
|
177
|
+
|
|
178
|
+
static int computeDepthDelta(const LinearRing* ring, bool isHole);
|
|
179
|
+
|
|
180
|
+
void add(const Geometry* g, uint8_t geomIndex);
|
|
181
|
+
|
|
182
|
+
/**
|
|
183
|
+
* Nodes a set of segment strings and creates {@link Edge}s from the result.
|
|
184
|
+
* The input segment strings each carry a {@link EdgeSourceInfo} object,
|
|
185
|
+
* which is used to provide source topology info to the constructed Edges
|
|
186
|
+
* (and is then discarded).
|
|
187
|
+
*/
|
|
188
|
+
std::vector<Edge*> node(std::vector<SegmentString*>* segStrings);
|
|
189
|
+
std::vector<Edge*> createEdges(std::vector<SegmentString*>* segStrings);
|
|
190
|
+
|
|
191
|
+
|
|
192
|
+
public:
|
|
193
|
+
|
|
194
|
+
/**
|
|
195
|
+
* Creates a new builder, with an optional custom noder.
|
|
196
|
+
* If the noder is not provided, a suitable one will
|
|
197
|
+
* be used based on the supplied precision model.
|
|
198
|
+
*/
|
|
199
|
+
EdgeNodingBuilder(const PrecisionModel* p_pm, Noder* p_customNoder)
|
|
200
|
+
: pm(p_pm)
|
|
201
|
+
, inputEdges(new std::vector<SegmentString*>)
|
|
202
|
+
, customNoder(p_customNoder)
|
|
203
|
+
, hasEdges{{false,false}}
|
|
204
|
+
, clipEnv(nullptr)
|
|
205
|
+
, intAdder(lineInt)
|
|
206
|
+
, inputHasZ(false)
|
|
207
|
+
, inputHasM(false)
|
|
208
|
+
{};
|
|
209
|
+
|
|
210
|
+
~EdgeNodingBuilder()
|
|
211
|
+
{
|
|
212
|
+
for (SegmentString* ss: *inputEdges) {
|
|
213
|
+
delete ss;
|
|
214
|
+
}
|
|
215
|
+
}
|
|
216
|
+
|
|
217
|
+
void setClipEnvelope(const Envelope* clipEnv);
|
|
218
|
+
|
|
219
|
+
// returns newly allocated vector and segmentstrings
|
|
220
|
+
// std::vector<SegmentString*>* node();
|
|
221
|
+
|
|
222
|
+
/**
|
|
223
|
+
* Reports whether there are noded edges
|
|
224
|
+
* for the given input geometry.
|
|
225
|
+
* If there are none, this indicates that either
|
|
226
|
+
* the geometry was empty, or has completely collapsed
|
|
227
|
+
* (because it is smaller than the noding precision).
|
|
228
|
+
*
|
|
229
|
+
* @param geomIndex index of input geometry
|
|
230
|
+
* @return true if there are edges for the geometry
|
|
231
|
+
*/
|
|
232
|
+
bool hasEdgesFor(uint8_t geomIndex) const;
|
|
233
|
+
|
|
234
|
+
/**
|
|
235
|
+
* Creates a set of labelled {Edge}s.
|
|
236
|
+
* representing the fully noded edges of the input geometries.
|
|
237
|
+
* Coincident edges (from the same or both geometries)
|
|
238
|
+
* are merged along with their labels
|
|
239
|
+
* into a single unique, fully labelled edge.
|
|
240
|
+
*
|
|
241
|
+
* @param geom0 the first geometry
|
|
242
|
+
* @param geom1 the second geometry
|
|
243
|
+
* @return the noded, merged, labelled edges
|
|
244
|
+
*/
|
|
245
|
+
std::vector<Edge*> build(const Geometry* geom0, const Geometry* geom1);
|
|
246
|
+
|
|
247
|
+
|
|
248
|
+
|
|
249
|
+
};
|
|
250
|
+
|
|
251
|
+
|
|
252
|
+
} // namespace geos.operation.overlayng
|
|
253
|
+
} // namespace geos.operation
|
|
254
|
+
} // namespace geos
|
|
255
|
+
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
/**********************************************************************
|
|
2
|
+
*
|
|
3
|
+
* GEOS - Geometry Engine Open Source
|
|
4
|
+
* http://geos.osgeo.org
|
|
5
|
+
*
|
|
6
|
+
* Copyright (C) 2020 Paul Ramsey <pramsey@cleverelephant.ca>
|
|
7
|
+
*
|
|
8
|
+
* This is free software; you can redistribute and/or modify it under
|
|
9
|
+
* the terms of the GNU Lesser General Public Licence as published
|
|
10
|
+
* by the Free Software Foundation.
|
|
11
|
+
* See the COPYING file for more information.
|
|
12
|
+
*
|
|
13
|
+
**********************************************************************/
|
|
14
|
+
|
|
15
|
+
#pragma once
|
|
16
|
+
|
|
17
|
+
#include <geos/geom/Dimension.h>
|
|
18
|
+
#include <geos/export.h>
|
|
19
|
+
#include <cstdint>
|
|
20
|
+
|
|
21
|
+
namespace geos { // geos.
|
|
22
|
+
namespace operation { // geos.operation
|
|
23
|
+
namespace overlayng { // geos.operation.overlayng
|
|
24
|
+
/**
|
|
25
|
+
* Records topological information about an
|
|
26
|
+
* edge representing a piece of linework (lineString or polygon ring)
|
|
27
|
+
* from a single source geometry.
|
|
28
|
+
* This information is carried through the noding process
|
|
29
|
+
* (which may result in many noded edges sharing the same information object).
|
|
30
|
+
* It is then used to populate the topology info fields
|
|
31
|
+
* in {@link Edge}s (possibly via merging).
|
|
32
|
+
* That information is used to construct the topology graph {@link OverlayLabel}s.
|
|
33
|
+
*
|
|
34
|
+
* @author mdavis
|
|
35
|
+
*
|
|
36
|
+
*/
|
|
37
|
+
|
|
38
|
+
class GEOS_DLL EdgeSourceInfo {
|
|
39
|
+
|
|
40
|
+
private:
|
|
41
|
+
|
|
42
|
+
// Members
|
|
43
|
+
uint8_t index;
|
|
44
|
+
int8_t dim;
|
|
45
|
+
bool edgeIsHole;
|
|
46
|
+
int depthDelta;
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
public:
|
|
50
|
+
|
|
51
|
+
EdgeSourceInfo(uint8_t p_index, int p_depthDelta, bool p_isHole);
|
|
52
|
+
EdgeSourceInfo(uint8_t p_index);
|
|
53
|
+
|
|
54
|
+
uint8_t getIndex() const { return index; }
|
|
55
|
+
int getDimension() const { return dim; }
|
|
56
|
+
int getDepthDelta() const { return depthDelta; }
|
|
57
|
+
bool isHole() const { return edgeIsHole; }
|
|
58
|
+
|
|
59
|
+
};
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
} // namespace geos.operation.overlayng
|
|
63
|
+
} // namespace geos.operation
|
|
64
|
+
} // namespace geos
|
|
65
|
+
|
|
@@ -0,0 +1,170 @@
|
|
|
1
|
+
/**********************************************************************
|
|
2
|
+
*
|
|
3
|
+
* GEOS - Geometry Engine Open Source
|
|
4
|
+
* http://geos.osgeo.org
|
|
5
|
+
*
|
|
6
|
+
* Copyright (C) 2020 Sandro Santilli <strk@kbt.io>
|
|
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: operation/overlayng/ElevationModel.java 4c88fea52
|
|
16
|
+
*
|
|
17
|
+
**********************************************************************/
|
|
18
|
+
|
|
19
|
+
#pragma once
|
|
20
|
+
|
|
21
|
+
#include <geos/export.h>
|
|
22
|
+
|
|
23
|
+
#include <geos/geom/Envelope.h> // for composition
|
|
24
|
+
|
|
25
|
+
// Forward declarations
|
|
26
|
+
namespace geos {
|
|
27
|
+
namespace geom {
|
|
28
|
+
class Geometry;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
namespace geos { // geos.
|
|
33
|
+
namespace operation { // geos.operation
|
|
34
|
+
namespace overlayng { // geos.operation.overlayng
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
/**
|
|
38
|
+
* \brief
|
|
39
|
+
* A simple elevation model used to populate missing Z values
|
|
40
|
+
* in overlay results.
|
|
41
|
+
*
|
|
42
|
+
* The model divides the extent of the input geometry(s)
|
|
43
|
+
* into an NxM grid.
|
|
44
|
+
* The default grid size is 3x3.
|
|
45
|
+
* If the input has no extent in the X or Y dimension,
|
|
46
|
+
* that dimension is given grid size 1.
|
|
47
|
+
* The elevation of each grid cell is computed as the average of the Z
|
|
48
|
+
* values
|
|
49
|
+
* of the input vertices in that cell (if any).
|
|
50
|
+
* If a cell has no input vertices within it, it is assigned
|
|
51
|
+
* the average elevation over all cells.
|
|
52
|
+
*
|
|
53
|
+
* If no input vertices have Z values, the model does not assign a Z
|
|
54
|
+
* value.
|
|
55
|
+
*
|
|
56
|
+
* The elevation of an arbitrary location is determined as the
|
|
57
|
+
* Z value of the nearest grid cell.
|
|
58
|
+
*
|
|
59
|
+
* An elevation model can be used to populate missing Z values
|
|
60
|
+
* in an overlay result geometry.
|
|
61
|
+
*
|
|
62
|
+
* @author Martin Davis
|
|
63
|
+
*
|
|
64
|
+
*/
|
|
65
|
+
class GEOS_DLL ElevationModel {
|
|
66
|
+
|
|
67
|
+
private:
|
|
68
|
+
|
|
69
|
+
class ElevationCell {
|
|
70
|
+
private:
|
|
71
|
+
|
|
72
|
+
int numZ = 0;
|
|
73
|
+
double sumZ = 0.0;
|
|
74
|
+
double avgZ;
|
|
75
|
+
|
|
76
|
+
public:
|
|
77
|
+
|
|
78
|
+
bool isNull() const
|
|
79
|
+
{
|
|
80
|
+
return numZ == 0;
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
void add(double z)
|
|
84
|
+
{
|
|
85
|
+
++numZ;
|
|
86
|
+
sumZ += z;
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
void compute()
|
|
90
|
+
{
|
|
91
|
+
avgZ = DoubleNotANumber;
|
|
92
|
+
if (numZ > 0)
|
|
93
|
+
avgZ = sumZ / numZ;
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
double getZ() const
|
|
97
|
+
{
|
|
98
|
+
return avgZ;
|
|
99
|
+
}
|
|
100
|
+
};
|
|
101
|
+
|
|
102
|
+
|
|
103
|
+
static const int DEFAULT_CELL_NUM;
|
|
104
|
+
geom::Envelope extent;
|
|
105
|
+
int numCellX;
|
|
106
|
+
int numCellY;
|
|
107
|
+
double cellSizeX;
|
|
108
|
+
double cellSizeY;
|
|
109
|
+
std::vector<ElevationCell> cells;
|
|
110
|
+
bool isInitialized = false;
|
|
111
|
+
bool hasZValue = false;
|
|
112
|
+
double averageZ = DoubleNotANumber;
|
|
113
|
+
|
|
114
|
+
void init();
|
|
115
|
+
|
|
116
|
+
ElevationCell& getCell(double x, double y); //, bool isCreateIfMissing);
|
|
117
|
+
|
|
118
|
+
int getCellOffset(int ix, int iy) {
|
|
119
|
+
return (numCellX * iy + ix);
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
protected:
|
|
123
|
+
|
|
124
|
+
void add(double x, double y, double z);
|
|
125
|
+
|
|
126
|
+
|
|
127
|
+
public:
|
|
128
|
+
|
|
129
|
+
static std::unique_ptr<ElevationModel> create(const geom::Geometry& geom1,
|
|
130
|
+
const geom::Geometry& geom2);
|
|
131
|
+
|
|
132
|
+
static std::unique_ptr<ElevationModel> create(const geom::Geometry& geom1);
|
|
133
|
+
|
|
134
|
+
ElevationModel(const geom::Envelope& extent, int numCellX, int numCellY);
|
|
135
|
+
|
|
136
|
+
void add(const geom::Geometry& geom);
|
|
137
|
+
|
|
138
|
+
|
|
139
|
+
/**
|
|
140
|
+
* Gets the model Z value at a given location.
|
|
141
|
+
* If the location lies outside the model grid extent,
|
|
142
|
+
* this returns the Z value of the nearest grid cell.
|
|
143
|
+
* If the model has no elevation computed (i.e. due
|
|
144
|
+
* to empty input), the value is returned as a double NaN.
|
|
145
|
+
*
|
|
146
|
+
* @param x the x ordinate of the location
|
|
147
|
+
* @param y the y ordinate of the location
|
|
148
|
+
* @return the computed model Z value
|
|
149
|
+
*/
|
|
150
|
+
double getZ(double x, double y);
|
|
151
|
+
|
|
152
|
+
|
|
153
|
+
/**
|
|
154
|
+
* \brief
|
|
155
|
+
* Computes Z values for any missing Z values in a geometry,
|
|
156
|
+
* using the computed model.
|
|
157
|
+
*
|
|
158
|
+
* If the model has no Z value, or the geometry coordinate dimension
|
|
159
|
+
* does not include Z, no action is taken.
|
|
160
|
+
*
|
|
161
|
+
* @param geom the geometry to elevate
|
|
162
|
+
*/
|
|
163
|
+
void populateZ(geom::Geometry& geom);
|
|
164
|
+
|
|
165
|
+
|
|
166
|
+
};
|
|
167
|
+
|
|
168
|
+
} // namespace geos.operation.overlayng
|
|
169
|
+
} // namespace geos.operation
|
|
170
|
+
} // namespace geos
|
package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/IndexedPointOnLineLocator.h
ADDED
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
/**********************************************************************
|
|
2
|
+
*
|
|
3
|
+
* GEOS - Geometry Engine Open Source
|
|
4
|
+
* http://geos.osgeo.org
|
|
5
|
+
*
|
|
6
|
+
* Copyright (C) 2020 Paul Ramsey <pramsey@cleverelephant.ca>
|
|
7
|
+
*
|
|
8
|
+
* This is free software; you can redistribute and/or modify it under
|
|
9
|
+
* the terms of the GNU Lesser General Public Licence as published
|
|
10
|
+
* by the Free Software Foundation.
|
|
11
|
+
* See the COPYING file for more information.
|
|
12
|
+
*
|
|
13
|
+
**********************************************************************/
|
|
14
|
+
|
|
15
|
+
#pragma once
|
|
16
|
+
|
|
17
|
+
#include <geos/export.h>
|
|
18
|
+
#include <geos/algorithm/locate/PointOnGeometryLocator.h>
|
|
19
|
+
#include <geos/geom/Location.h>
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
// Forward declarations
|
|
24
|
+
namespace geos {
|
|
25
|
+
namespace geom {
|
|
26
|
+
class Geometry;
|
|
27
|
+
class Coordinate;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
namespace geos { // geos.
|
|
32
|
+
namespace operation { // geos.operation
|
|
33
|
+
namespace overlayng { // geos.operation.overlayng
|
|
34
|
+
|
|
35
|
+
/**
|
|
36
|
+
* Locates points on a linear geometry,
|
|
37
|
+
* using a spatial index to provide good performance.
|
|
38
|
+
*
|
|
39
|
+
* @author mdavis
|
|
40
|
+
*/
|
|
41
|
+
class IndexedPointOnLineLocator : public algorithm::locate::PointOnGeometryLocator {
|
|
42
|
+
|
|
43
|
+
private:
|
|
44
|
+
|
|
45
|
+
// Members
|
|
46
|
+
const geom::Geometry& inputGeom;
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
public:
|
|
51
|
+
|
|
52
|
+
IndexedPointOnLineLocator(const geom::Geometry& geomLinear)
|
|
53
|
+
: inputGeom(geomLinear)
|
|
54
|
+
{}
|
|
55
|
+
|
|
56
|
+
geom::Location locate(const geom::CoordinateXY* p) override;
|
|
57
|
+
|
|
58
|
+
};
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
} // namespace geos.operation.overlayng
|
|
62
|
+
} // namespace geos.operation
|
|
63
|
+
} // namespace geos
|
|
64
|
+
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
/**********************************************************************
|
|
2
|
+
*
|
|
3
|
+
* GEOS - Geometry Engine Open Source
|
|
4
|
+
* http://geos.osgeo.org
|
|
5
|
+
*
|
|
6
|
+
* Copyright (C) 2020 Paul Ramsey <pramsey@cleverelephant.ca>
|
|
7
|
+
*
|
|
8
|
+
* This is free software; you can redistribute and/or modify it under
|
|
9
|
+
* the terms of the GNU Lesser General Public Licence as published
|
|
10
|
+
* by the Free Software Foundation.
|
|
11
|
+
* See the COPYING file for more information.
|
|
12
|
+
*
|
|
13
|
+
**********************************************************************/
|
|
14
|
+
|
|
15
|
+
#pragma once
|
|
16
|
+
|
|
17
|
+
#include <geos/algorithm/locate/IndexedPointInAreaLocator.h>
|
|
18
|
+
#include <geos/algorithm/locate/PointOnGeometryLocator.h>
|
|
19
|
+
#include <geos/geom/Coordinate.h>
|
|
20
|
+
#include <geos/geom/Envelope.h>
|
|
21
|
+
#include <geos/geom/Geometry.h>
|
|
22
|
+
#include <geos/geom/Location.h>
|
|
23
|
+
#include <geos/export.h>
|
|
24
|
+
|
|
25
|
+
#include <array>
|
|
26
|
+
|
|
27
|
+
namespace geos { // geos.
|
|
28
|
+
namespace operation { // geos.operation
|
|
29
|
+
namespace overlayng { // geos.operation.overlayng
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
/**
|
|
33
|
+
* Manages the input geometries for an overlay operation.
|
|
34
|
+
* The second geometry is allowed to be null,
|
|
35
|
+
* to support for instance precision reduction.
|
|
36
|
+
*
|
|
37
|
+
* @author Martin Davis
|
|
38
|
+
*
|
|
39
|
+
*/
|
|
40
|
+
|
|
41
|
+
using namespace geos::algorithm::locate;
|
|
42
|
+
using namespace geos::geom;
|
|
43
|
+
|
|
44
|
+
class GEOS_DLL InputGeometry {
|
|
45
|
+
|
|
46
|
+
private:
|
|
47
|
+
|
|
48
|
+
// Members
|
|
49
|
+
std::array<const Geometry*, 2> geom;
|
|
50
|
+
std::unique_ptr<PointOnGeometryLocator> ptLocatorA;
|
|
51
|
+
std::unique_ptr<PointOnGeometryLocator> ptLocatorB;
|
|
52
|
+
std::array<bool, 2> isCollapsed;
|
|
53
|
+
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
public:
|
|
57
|
+
|
|
58
|
+
InputGeometry(const Geometry* geomA, const Geometry* geomB);
|
|
59
|
+
|
|
60
|
+
bool isSingle() const;
|
|
61
|
+
int getDimension(uint8_t index) const;
|
|
62
|
+
const Geometry* getGeometry(uint8_t geomIndex) const;
|
|
63
|
+
const Envelope* getEnvelope(uint8_t geomIndex) const;
|
|
64
|
+
bool isEmpty(uint8_t geomIndex) const;
|
|
65
|
+
bool isArea(uint8_t geomIndex) const;
|
|
66
|
+
int getAreaIndex() const;
|
|
67
|
+
bool isLine(uint8_t geomIndex) const;
|
|
68
|
+
bool isAllPoints() const;
|
|
69
|
+
bool hasPoints() const;
|
|
70
|
+
|
|
71
|
+
/**
|
|
72
|
+
* Tests if an input geometry has edges.
|
|
73
|
+
* This indicates that topology needs to be computed for them.
|
|
74
|
+
*
|
|
75
|
+
* @param geomIndex
|
|
76
|
+
* @return true if the input geometry has edges
|
|
77
|
+
*/
|
|
78
|
+
bool hasEdges(uint8_t geomIndex) const;
|
|
79
|
+
|
|
80
|
+
/**
|
|
81
|
+
* Determines the location within an area geometry.
|
|
82
|
+
* This allows disconnected edges to be fully
|
|
83
|
+
* located.
|
|
84
|
+
*
|
|
85
|
+
* @param geomIndex the index of the geometry
|
|
86
|
+
* @param pt the coordinate to locate
|
|
87
|
+
* @return the location of the coordinate
|
|
88
|
+
*
|
|
89
|
+
* @see Location
|
|
90
|
+
*/
|
|
91
|
+
Location locatePointInArea(uint8_t geomIndex, const Coordinate& pt);
|
|
92
|
+
|
|
93
|
+
PointOnGeometryLocator* getLocator(uint8_t geomIndex);
|
|
94
|
+
void setCollapsed(uint8_t geomIndex, bool isGeomCollapsed);
|
|
95
|
+
|
|
96
|
+
|
|
97
|
+
};
|
|
98
|
+
|
|
99
|
+
|
|
100
|
+
} // namespace geos.operation.overlayng
|
|
101
|
+
} // namespace geos.operation
|
|
102
|
+
} // namespace geos
|
|
103
|
+
|