@cpp.js/package-geos 1.0.0-beta.21 → 1.0.0-beta.23
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 +7 -0
- package/cppjs-package-geos.podspec +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,200 @@
|
|
|
1
|
+
/**********************************************************************
|
|
2
|
+
*
|
|
3
|
+
* GEOS - Geometry Engine Open Source
|
|
4
|
+
* http://geos.osgeo.org
|
|
5
|
+
*
|
|
6
|
+
* Copyright (C) 2020 Crunchy Data
|
|
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
|
+
/**
|
|
16
|
+
* Implements extended-precision floating-point numbers
|
|
17
|
+
* which maintain 106 bits (approximately 30 decimal digits) of precision.
|
|
18
|
+
* <p>
|
|
19
|
+
* A DoubleDouble uses a representation containing two double-precision values.
|
|
20
|
+
* A number x is represented as a pair of doubles, x.hi and x.lo,
|
|
21
|
+
* such that the number represented by x is x.hi + x.lo, where
|
|
22
|
+
* <pre>
|
|
23
|
+
* |x.lo| <= 0.5*ulp(x.hi)
|
|
24
|
+
* </pre>
|
|
25
|
+
* and ulp(y) means "unit in the last place of y".
|
|
26
|
+
* The basic arithmetic operations are implemented using
|
|
27
|
+
* convenient properties of IEEE-754 floating-point arithmetic.
|
|
28
|
+
* <p>
|
|
29
|
+
* The range of values which can be represented is the same as in IEEE-754.
|
|
30
|
+
* The precision of the representable numbers
|
|
31
|
+
* is twice as great as IEEE-754 double precision.
|
|
32
|
+
* <p>
|
|
33
|
+
* The correctness of the arithmetic algorithms relies on operations
|
|
34
|
+
* being performed with standard IEEE-754 double precision and rounding.
|
|
35
|
+
* This is the Java standard arithmetic model, but for performance reasons
|
|
36
|
+
* Java implementations are not
|
|
37
|
+
* constrained to using this standard by default.
|
|
38
|
+
* Some processors (notably the Intel Pentium architecture) perform
|
|
39
|
+
* floating point operations in (non-IEEE-754-standard) extended-precision.
|
|
40
|
+
* A JVM implementation may choose to use the non-standard extended-precision
|
|
41
|
+
* as its default arithmetic mode.
|
|
42
|
+
* To prevent this from happening, this code uses the
|
|
43
|
+
* Java <tt>strictfp</tt> modifier,
|
|
44
|
+
* which forces all operations to take place in the standard IEEE-754 rounding model.
|
|
45
|
+
* <p>
|
|
46
|
+
* The API provides both a set of value-oriented operations
|
|
47
|
+
* and a set of mutating operations.
|
|
48
|
+
* Value-oriented operations treat DoubleDouble values as
|
|
49
|
+
* immutable; operations on them return new objects carrying the result
|
|
50
|
+
* of the operation. This provides a simple and safe semantics for
|
|
51
|
+
* writing DoubleDouble expressions. However, there is a performance
|
|
52
|
+
* penalty for the object allocations required.
|
|
53
|
+
* The mutable interface updates object values in-place.
|
|
54
|
+
* It provides optimum memory performance, but requires
|
|
55
|
+
* care to ensure that aliasing errors are not created
|
|
56
|
+
* and constant values are not changed.
|
|
57
|
+
* <p>
|
|
58
|
+
* For example, the following code example constructs three DD instances:
|
|
59
|
+
* two to hold the input values and one to hold the result of the addition.
|
|
60
|
+
* <pre>
|
|
61
|
+
* DD a = new DD(2.0);
|
|
62
|
+
* DD b = new DD(3.0);
|
|
63
|
+
* DD c = a.add(b);
|
|
64
|
+
* </pre>
|
|
65
|
+
* In contrast, the following approach uses only one object:
|
|
66
|
+
* <pre>
|
|
67
|
+
* DD a = new DD(2.0);
|
|
68
|
+
* a.selfAdd(3.0);
|
|
69
|
+
* </pre>
|
|
70
|
+
* <p>
|
|
71
|
+
* This implementation uses algorithms originally designed variously by
|
|
72
|
+
* Knuth, Kahan, Dekker, and Linnainmaa.
|
|
73
|
+
* Douglas Priest developed the first C implementation of these techniques.
|
|
74
|
+
* Other more recent C++ implementation are due to Keith M. Briggs and David Bailey et al.
|
|
75
|
+
*
|
|
76
|
+
* <h3>References</h3>
|
|
77
|
+
* <ul>
|
|
78
|
+
* <li>Priest, D., <i>Algorithms for Arbitrary Precision Floating Point Arithmetic</i>,
|
|
79
|
+
* in P. Kornerup and D. Matula, Eds., Proc. 10th Symposium on Computer Arithmetic,
|
|
80
|
+
* IEEE Computer Society Press, Los Alamitos, Calif., 1991.
|
|
81
|
+
* <li>Yozo Hida, Xiaoye S. Li and David H. Bailey,
|
|
82
|
+
* <i>Quad-Double Arithmetic: Algorithms, Implementation, and Application</i>,
|
|
83
|
+
* manuscript, Oct 2000; Lawrence Berkeley National Laboratory Report BNL-46996.
|
|
84
|
+
* <li>David Bailey, <i>High Precision Software Directory</i>;
|
|
85
|
+
* <tt>http://crd.lbl.gov/~dhbailey/mpdist/index.html</tt>
|
|
86
|
+
* </ul>
|
|
87
|
+
*
|
|
88
|
+
*
|
|
89
|
+
* @author Martin Davis
|
|
90
|
+
*
|
|
91
|
+
*/
|
|
92
|
+
|
|
93
|
+
#pragma once
|
|
94
|
+
|
|
95
|
+
#include <cmath>
|
|
96
|
+
#include <geos/export.h>
|
|
97
|
+
|
|
98
|
+
namespace geos {
|
|
99
|
+
namespace math { // geos.math
|
|
100
|
+
|
|
101
|
+
/**
|
|
102
|
+
* \class DD
|
|
103
|
+
*
|
|
104
|
+
* \brief
|
|
105
|
+
* Wrapper for DoubleDouble higher precision mathematics
|
|
106
|
+
* operations.
|
|
107
|
+
*/
|
|
108
|
+
class GEOS_DLL DD {
|
|
109
|
+
private:
|
|
110
|
+
static constexpr double SPLIT = 134217729.0; // 2^27+1, for IEEE double
|
|
111
|
+
double hi;
|
|
112
|
+
double lo;
|
|
113
|
+
|
|
114
|
+
int signum() const;
|
|
115
|
+
DD rint() const;
|
|
116
|
+
|
|
117
|
+
|
|
118
|
+
public:
|
|
119
|
+
DD(double p_hi, double p_lo) : hi(p_hi), lo(p_lo) {};
|
|
120
|
+
DD(double x) : hi(x), lo(0.0) {};
|
|
121
|
+
DD() : hi(0.0), lo(0.0) {};
|
|
122
|
+
|
|
123
|
+
bool operator==(const DD &rhs) const
|
|
124
|
+
{
|
|
125
|
+
return hi == rhs.hi && lo == rhs.lo;
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
bool operator!=(const DD &rhs) const
|
|
129
|
+
{
|
|
130
|
+
return hi != rhs.hi || lo != rhs.lo;
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
bool operator<(const DD &rhs) const
|
|
134
|
+
{
|
|
135
|
+
return (hi < rhs.hi) || (hi == rhs.hi && lo < rhs.lo);
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
bool operator<=(const DD &rhs) const
|
|
139
|
+
{
|
|
140
|
+
return (hi < rhs.hi) || (hi == rhs.hi && lo <= rhs.lo);
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
bool operator>(const DD &rhs) const
|
|
144
|
+
{
|
|
145
|
+
return (hi > rhs.hi) || (hi == rhs.hi && lo > rhs.lo);
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
bool operator>=(const DD &rhs) const
|
|
149
|
+
{
|
|
150
|
+
return (hi > rhs.hi) || (hi == rhs.hi && lo >= rhs.lo);
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
friend GEOS_DLL DD operator+ (const DD &lhs, const DD &rhs);
|
|
154
|
+
friend GEOS_DLL DD operator+ (const DD &lhs, double rhs);
|
|
155
|
+
friend GEOS_DLL DD operator- (const DD &lhs, const DD &rhs);
|
|
156
|
+
friend GEOS_DLL DD operator- (const DD &lhs, double rhs);
|
|
157
|
+
friend GEOS_DLL DD operator* (const DD &lhs, const DD &rhs);
|
|
158
|
+
friend GEOS_DLL DD operator* (const DD &lhs, double rhs);
|
|
159
|
+
friend GEOS_DLL DD operator/ (const DD &lhs, const DD &rhs);
|
|
160
|
+
friend GEOS_DLL DD operator/ (const DD &lhs, double rhs);
|
|
161
|
+
|
|
162
|
+
static DD determinant(const DD &x1, const DD &y1, const DD &x2, const DD &y2);
|
|
163
|
+
static DD determinant(double x1, double y1, double x2, double y2);
|
|
164
|
+
static DD abs(const DD &d);
|
|
165
|
+
static DD pow(const DD &d, int exp);
|
|
166
|
+
static DD trunc(const DD &d);
|
|
167
|
+
|
|
168
|
+
bool isNaN() const;
|
|
169
|
+
bool isNegative() const;
|
|
170
|
+
bool isPositive() const;
|
|
171
|
+
bool isZero() const;
|
|
172
|
+
double doubleValue() const;
|
|
173
|
+
double ToDouble() const { return doubleValue(); }
|
|
174
|
+
int intValue() const;
|
|
175
|
+
DD negate() const;
|
|
176
|
+
DD reciprocal() const;
|
|
177
|
+
DD floor() const;
|
|
178
|
+
DD ceil() const;
|
|
179
|
+
|
|
180
|
+
void selfAdd(const DD &d);
|
|
181
|
+
void selfAdd(double p_hi, double p_lo);
|
|
182
|
+
void selfAdd(double y);
|
|
183
|
+
|
|
184
|
+
void selfSubtract(const DD &d);
|
|
185
|
+
void selfSubtract(double p_hi, double p_lo);
|
|
186
|
+
void selfSubtract(double y);
|
|
187
|
+
|
|
188
|
+
void selfMultiply(double p_hi, double p_lo);
|
|
189
|
+
void selfMultiply(const DD &d);
|
|
190
|
+
void selfMultiply(double y);
|
|
191
|
+
|
|
192
|
+
void selfDivide(double p_hi, double p_lo);
|
|
193
|
+
void selfDivide(const DD &d);
|
|
194
|
+
void selfDivide(double y);
|
|
195
|
+
};
|
|
196
|
+
|
|
197
|
+
|
|
198
|
+
} // namespace geos::math
|
|
199
|
+
} // namespace geos
|
|
200
|
+
|
|
@@ -0,0 +1,317 @@
|
|
|
1
|
+
/**********************************************************************
|
|
2
|
+
*
|
|
3
|
+
* GEOS - Geometry Engine Open Source
|
|
4
|
+
* http://geos.osgeo.org
|
|
5
|
+
*
|
|
6
|
+
* Copyright (C) 2001-2002 Vivid Solutions Inc.
|
|
7
|
+
* Copyright (C) 2005-2006 Refractions Research Inc.
|
|
8
|
+
* Copyright (C) 2019 Nicklas Larsson
|
|
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
|
+
namespace geos {
|
|
20
|
+
|
|
21
|
+
/// \brief
|
|
22
|
+
/// Contains classes and interfaces implementing fundamental computational
|
|
23
|
+
/// geometry algorithms.
|
|
24
|
+
///
|
|
25
|
+
/// ### Robustness
|
|
26
|
+
///
|
|
27
|
+
/// Geometrical algorithms involve a combination of combinatorial and numerical
|
|
28
|
+
/// computation. As with all numerical computation using finite-precision
|
|
29
|
+
/// numbers, the algorithms chosen are susceptible to problems of robustness.
|
|
30
|
+
/// A robustness problem occurs when a numerical calculation produces an
|
|
31
|
+
/// incorrect answer for some inputs due to round-off errors. Robustness
|
|
32
|
+
/// problems are especially serious in geometric computation, since they can
|
|
33
|
+
/// result in errors during topology building.
|
|
34
|
+
///
|
|
35
|
+
/// There are many approaches to dealing with the problem of robustness in
|
|
36
|
+
/// geometrical computation. Not surprisingly, most robust algorithms are
|
|
37
|
+
/// substantially more complex and less performant than the non-robust
|
|
38
|
+
/// versions. Fortunately, JTS is sensitive to robustness problems in only a
|
|
39
|
+
/// few key functions (such as line intersection and the point-in-polygon
|
|
40
|
+
/// test). There are efficient robust algorithms available for these
|
|
41
|
+
/// functions, and these algorithms are implemented in JTS.
|
|
42
|
+
///
|
|
43
|
+
/// ### Computational Performance
|
|
44
|
+
///
|
|
45
|
+
/// Runtime performance is an important consideration for a production-quality
|
|
46
|
+
/// implementation of geometric algorithms. The most computationally intensive
|
|
47
|
+
/// algorithm used in JTS is intersection detection. JTS methods need to
|
|
48
|
+
/// determine both all intersection between the line segments in a single
|
|
49
|
+
/// Geometry (self-intersection) and all intersections between the line
|
|
50
|
+
/// segments of two different Geometries.
|
|
51
|
+
///
|
|
52
|
+
/// The obvious naive algorithm for intersection detection (comparing every
|
|
53
|
+
/// segment with every other) has unacceptably slow performance. There is a
|
|
54
|
+
/// large literature of faster algorithms for intersection detection.
|
|
55
|
+
/// Unfortunately, many of them involve substantial code complexity. JTS tries
|
|
56
|
+
/// to balance code simplicity with performance gains. It uses some simple
|
|
57
|
+
/// techniques to produce substantial performance gains for common types of
|
|
58
|
+
/// input data.
|
|
59
|
+
///
|
|
60
|
+
/// ### Package Specification
|
|
61
|
+
///
|
|
62
|
+
/// - Java Topology Suite Technical Specifications
|
|
63
|
+
/// - <A HREF="http://www.opengis.org/techno/specs.htm">
|
|
64
|
+
/// OpenGIS Simple Features Specification for SQL</A>
|
|
65
|
+
namespace algorithm { // geos::algorithm
|
|
66
|
+
|
|
67
|
+
/// Classes to compute distance metrics between geometries.
|
|
68
|
+
namespace distance {}
|
|
69
|
+
|
|
70
|
+
/// Classes which determine the Location of points in geometries.
|
|
71
|
+
namespace locate {}
|
|
72
|
+
} // namespace geos::algorithm
|
|
73
|
+
|
|
74
|
+
namespace geom { // geos.geom
|
|
75
|
+
|
|
76
|
+
/// \brief
|
|
77
|
+
/// Contains classes and interfaces implementing algorithms that optimize
|
|
78
|
+
/// the performance of repeated calls to specific geometric operations.
|
|
79
|
+
namespace prep {}
|
|
80
|
+
|
|
81
|
+
/// \brief
|
|
82
|
+
/// Provides classes that parse and modify Geometry objects.
|
|
83
|
+
namespace util {}
|
|
84
|
+
} // namespace geos.geom
|
|
85
|
+
|
|
86
|
+
/// \brief
|
|
87
|
+
/// Contains classes that implement topology graphs.
|
|
88
|
+
///
|
|
89
|
+
/// The Java Topology Suite (JTS) is a Java API that implements a core set of
|
|
90
|
+
/// spatial data operations using an explicit precision model and robust
|
|
91
|
+
/// geometric algorithms. JTS is int ended to be used in the development of
|
|
92
|
+
/// applications that support the validation, cleaning, integration and
|
|
93
|
+
/// querying of spatial datasets.
|
|
94
|
+
///
|
|
95
|
+
/// JTS attempts to implement the OpenGIS Simple Features Specification (SFS)
|
|
96
|
+
/// as accurately as possible. In some cases the SFS is unclear or omits a
|
|
97
|
+
/// specification; in this case JTS attempts to choose a reasonable and
|
|
98
|
+
/// consistent alternative. Differences from and elaborations of the SFS are
|
|
99
|
+
/// documented in this specification.
|
|
100
|
+
///
|
|
101
|
+
/// ### Package Specification
|
|
102
|
+
///
|
|
103
|
+
/// - Java Topology Suite Technical Specifications
|
|
104
|
+
/// - <A HREF="http://www.opengis.org/techno/specs.htm">
|
|
105
|
+
/// OpenGIS Simple Features Specification for SQL</A>
|
|
106
|
+
namespace geomgraph { // geos.geomgraph
|
|
107
|
+
|
|
108
|
+
/// \brief
|
|
109
|
+
/// Contains classes that implement indexes for performing noding on
|
|
110
|
+
/// geometry graph edges.
|
|
111
|
+
namespace index {}
|
|
112
|
+
} // namespace geos.geomgraph
|
|
113
|
+
|
|
114
|
+
|
|
115
|
+
/// Provides classes for various kinds of spatial indexes.
|
|
116
|
+
namespace index { // geos.index
|
|
117
|
+
|
|
118
|
+
/// Contains classes that implement a Binary Interval Tree index
|
|
119
|
+
namespace bintree {}
|
|
120
|
+
|
|
121
|
+
/// Contains classes that implement Monotone Chains
|
|
122
|
+
namespace chain {}
|
|
123
|
+
|
|
124
|
+
/// \brief Contains classes that implement a static index on a set of
|
|
125
|
+
/// 1-dimensional intervals, using an R-Tree packed based on the order of
|
|
126
|
+
/// the interval midpoints.
|
|
127
|
+
namespace intervalrtree {}
|
|
128
|
+
|
|
129
|
+
/// Contains classes that implement a Quadtree spatial index
|
|
130
|
+
namespace quadtree {}
|
|
131
|
+
|
|
132
|
+
/// \brief Contains 2-D and 1-D versions of the Sort-Tile-Recursive (STR)
|
|
133
|
+
/// tree, a query-only R-tree.
|
|
134
|
+
namespace strtree {}
|
|
135
|
+
|
|
136
|
+
/// \brief Contains classes which implement a sweepline algorithm for
|
|
137
|
+
/// scanning geometric data structures.
|
|
138
|
+
namespace sweepline {}
|
|
139
|
+
} // namespace geos.index
|
|
140
|
+
|
|
141
|
+
/// \brief
|
|
142
|
+
/// Contains the interfaces for converting JTS objects to and from other
|
|
143
|
+
/// formats.
|
|
144
|
+
///
|
|
145
|
+
/// The Java Topology Suite (JTS) is a Java API that implements a core set of
|
|
146
|
+
/// spatial data operations using an explicit precision model and robust
|
|
147
|
+
/// geometric algorithms. JTS is intended to be used in the devel opment of
|
|
148
|
+
/// applications that support the validation, cleaning, integration and
|
|
149
|
+
/// querying of spatial data sets.
|
|
150
|
+
///
|
|
151
|
+
/// JTS attempts to implement the OpenGIS Simple Features Specification (SFS)
|
|
152
|
+
/// as accurately as possible. In some cases the SFS is unclear or omits a
|
|
153
|
+
/// specification; in this case JTS attempts to choose a reasonable and
|
|
154
|
+
/// consistent alternative. Differences from and elaborations of the SFS are
|
|
155
|
+
/// documented in this specification.
|
|
156
|
+
///
|
|
157
|
+
/// ### Package Specification
|
|
158
|
+
///
|
|
159
|
+
/// - Java Topology Suite Technical Specifications
|
|
160
|
+
/// - <A HREF="http://www.opengis.org/techno/specs.htm">
|
|
161
|
+
/// OpenGIS Simple Features Specification for SQL</A>
|
|
162
|
+
///
|
|
163
|
+
namespace io {}
|
|
164
|
+
|
|
165
|
+
/// \brief Contains classes and interfaces implementing linear referencing on
|
|
166
|
+
/// linear geometries.
|
|
167
|
+
namespace linearref {}
|
|
168
|
+
|
|
169
|
+
/// \brief Classes to compute nodings for arrangements of line segments and
|
|
170
|
+
/// line segment sequences.
|
|
171
|
+
namespace noding { // geos.noding
|
|
172
|
+
|
|
173
|
+
/// \brief Contains classes to implement the Snap Rounding algorithm for
|
|
174
|
+
/// noding linestrings.
|
|
175
|
+
namespace snapround {}
|
|
176
|
+
} // namespace geos.noding
|
|
177
|
+
|
|
178
|
+
/// Provides classes for implementing operations on geometries.
|
|
179
|
+
namespace operation { // geos.operation
|
|
180
|
+
|
|
181
|
+
/// Provides classes for computing buffers of geometries
|
|
182
|
+
namespace buffer {}
|
|
183
|
+
|
|
184
|
+
/// Provides classes for computing the distance between geometries.
|
|
185
|
+
namespace distance {}
|
|
186
|
+
|
|
187
|
+
/// \brief Provides classes for computing the intersection of a Geometry
|
|
188
|
+
/// and a clipping Rectangle.
|
|
189
|
+
namespace intersection {}
|
|
190
|
+
|
|
191
|
+
/// Line merging package.
|
|
192
|
+
namespace linemerge {}
|
|
193
|
+
|
|
194
|
+
/// \brief
|
|
195
|
+
/// Contains classes that perform a topological overlay to compute boolean
|
|
196
|
+
/// spatial functions.
|
|
197
|
+
///
|
|
198
|
+
/// The Overlay Algorithm is used in spatial analysis methods for computing
|
|
199
|
+
/// set-theoretic operations (boolean combinations) of input
|
|
200
|
+
/// [Geometrys](\ref geom::Geometry).
|
|
201
|
+
/// The algorithm for computing the overlay uses the intersection operations
|
|
202
|
+
/// supported by topology graphs. To compute an overlay it is necessary to
|
|
203
|
+
/// explicitly compute the resultant graph formed by the computed
|
|
204
|
+
/// intersections.
|
|
205
|
+
///
|
|
206
|
+
/// The algorithm to compute a set-theoretic spatial analysis method has the
|
|
207
|
+
/// following steps:
|
|
208
|
+
///
|
|
209
|
+
/// - Build topology graphs of the two input geometries. For each geometry
|
|
210
|
+
/// all self-intersection nodes are computed and added to the graph.
|
|
211
|
+
/// - Compute nodes for all intersections between edges and nodes of the
|
|
212
|
+
/// graphs.
|
|
213
|
+
/// - Compute the labeling for the computed nodes by merging the labels from
|
|
214
|
+
/// the input graphs.
|
|
215
|
+
/// - Compute new edges between the compute intersection nodes.
|
|
216
|
+
/// Label the edges appropriately.
|
|
217
|
+
/// - Build the resultant graph from the new nodes and edges.
|
|
218
|
+
/// - Compute the labeling for isolated components of the graph. Add the
|
|
219
|
+
/// isolated components to the resultant graph.
|
|
220
|
+
/// - Compute the result of the boolean combination by selecting the node
|
|
221
|
+
/// and edges with the appropriate labels. Polygonize areas and sew linear
|
|
222
|
+
/// geometries together.
|
|
223
|
+
///
|
|
224
|
+
/// ### Package Specification
|
|
225
|
+
///
|
|
226
|
+
/// - Java Topology Suite Technical Specifications
|
|
227
|
+
/// - <A HREF="http://www.opengis.org/techno/specs.htm">
|
|
228
|
+
/// OpenGIS Simple Features Specification for SQL</A>
|
|
229
|
+
namespace overlay {}
|
|
230
|
+
|
|
231
|
+
/// An API for polygonizing sets of lines.
|
|
232
|
+
namespace polygonize {}
|
|
233
|
+
|
|
234
|
+
/// \brief Classes which implement topological predicates optimized for
|
|
235
|
+
/// particular kinds of geometries.
|
|
236
|
+
namespace predicate {}
|
|
237
|
+
|
|
238
|
+
/// \brief Contains classes to implement the computation of the spatial
|
|
239
|
+
/// relationships of `Geometry`s.
|
|
240
|
+
///
|
|
241
|
+
/// The `relate` algorithm computes the `IntersectionMatrix` describing the
|
|
242
|
+
/// relationship of two `Geometry`s. The algorithm for computing `relate`
|
|
243
|
+
/// uses the intersection operations supported by topology graphs. Although
|
|
244
|
+
/// the `relate` result depends on the resultant graph formed by the
|
|
245
|
+
/// computed intersections, there is no need to explicitly compute the
|
|
246
|
+
/// entire graph. It is sufficient to compute the local structure of the
|
|
247
|
+
/// graph at each intersection node.
|
|
248
|
+
///
|
|
249
|
+
/// The algorithm to compute `relate` has the following steps:
|
|
250
|
+
///
|
|
251
|
+
/// - Build topology graphs of the two input geometries. For each geometry
|
|
252
|
+
/// all self-intersection nodes are computed and added to the graph.
|
|
253
|
+
/// - Compute nodes for all intersections between edges and nodes of the
|
|
254
|
+
/// graphs.
|
|
255
|
+
/// - Compute the labeling for the computed nodes by merging the labels
|
|
256
|
+
/// from the input graphs.
|
|
257
|
+
/// - Compute the labeling for isolated components of the graph (see below)
|
|
258
|
+
/// - Compute the `IntersectionMatrix` from the labels on the nodes and
|
|
259
|
+
/// edges.
|
|
260
|
+
///
|
|
261
|
+
/// ### Labeling isolated components
|
|
262
|
+
///
|
|
263
|
+
/// Isolated components are components (edges or nodes) of an input
|
|
264
|
+
/// `Geometry` which do not contain any intersections with the other input
|
|
265
|
+
/// `Geometry`. The topological relationship of these components to the
|
|
266
|
+
/// other input `Geometry` must be computed in order to determine the
|
|
267
|
+
/// complete labeling of the component. This can be done by testing whether
|
|
268
|
+
/// the component lies in the interior or exterior of the other `Geometry`.
|
|
269
|
+
/// If the other `Geometry` is 1-dimensional, the isolated component must
|
|
270
|
+
/// lie in the exterior (since otherwise it would have an intersection with
|
|
271
|
+
/// an edge of the `Geometry`). If the other `Geometry` is 2-dimensional,
|
|
272
|
+
/// a Point-In-Polygon test can be used to determine whether the isolated
|
|
273
|
+
/// component is in the interior or exterior.
|
|
274
|
+
///
|
|
275
|
+
/// ### Package Specification
|
|
276
|
+
///
|
|
277
|
+
/// - Java Topology Suite Technical Specifications
|
|
278
|
+
/// - <A HREF="http://www.opengis.org/techno/specs.htm">
|
|
279
|
+
/// OpenGIS Simple Features Specification for SQL</A>
|
|
280
|
+
namespace relate {}
|
|
281
|
+
|
|
282
|
+
/// Find shared paths among two linear Geometry objects.
|
|
283
|
+
namespace sharedpaths {}
|
|
284
|
+
|
|
285
|
+
/// Classes to perform efficient unioning of collections of geometries.
|
|
286
|
+
namespace geounion {}
|
|
287
|
+
|
|
288
|
+
/// Provides classes for testing the validity of geometries.
|
|
289
|
+
namespace valid {}
|
|
290
|
+
} // namespace geos.operation
|
|
291
|
+
|
|
292
|
+
/// Contains classes to implement a planar graph data structure.
|
|
293
|
+
namespace planargraph { // geos::planargraph
|
|
294
|
+
|
|
295
|
+
/// Planargraph algorithms.
|
|
296
|
+
namespace algorithm {}
|
|
297
|
+
} // namespace geos::planargraph
|
|
298
|
+
|
|
299
|
+
/// Provides classes for manipulating the precision model of Geometries.
|
|
300
|
+
namespace precision {}
|
|
301
|
+
|
|
302
|
+
/// Classes which implement algorithms for simplifying or generalizing geometries.
|
|
303
|
+
namespace simplify {}
|
|
304
|
+
|
|
305
|
+
/// Classes to compute Delaunay triangulations.
|
|
306
|
+
namespace triangulate { // geos.triangulate
|
|
307
|
+
|
|
308
|
+
/// \brief Classes to implement a topological subdivision of quadeges, to
|
|
309
|
+
/// support creating triangulations and Voronoi diagrams.
|
|
310
|
+
namespace quadedge {}
|
|
311
|
+
} // namespace geos.triangulate
|
|
312
|
+
|
|
313
|
+
/// Utility classes for GEOS.
|
|
314
|
+
namespace util {}
|
|
315
|
+
|
|
316
|
+
} // namespace geos
|
|
317
|
+
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
/**********************************************************************
|
|
2
|
+
*
|
|
3
|
+
* GEOS - Geometry Engine Open Source
|
|
4
|
+
* http://geos.osgeo.org
|
|
5
|
+
*
|
|
6
|
+
* Copyright (C) 2009 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: noding/BasicSegmentString.java rev. 1.1 (JTS-1.9)
|
|
16
|
+
*
|
|
17
|
+
**********************************************************************/
|
|
18
|
+
|
|
19
|
+
#pragma once
|
|
20
|
+
|
|
21
|
+
#include <geos/export.h>
|
|
22
|
+
#include <geos/noding/BasicSegmentString.h>
|
|
23
|
+
#include <geos/noding/Octant.h>
|
|
24
|
+
#include <geos/noding/SegmentString.h> // for inheritance
|
|
25
|
+
#include <geos/geom/CoordinateSequence.h> // for inlines (size())
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
#include <vector>
|
|
29
|
+
|
|
30
|
+
// Forward declarations
|
|
31
|
+
|
|
32
|
+
namespace geos {
|
|
33
|
+
namespace noding { // geos.noding
|
|
34
|
+
|
|
35
|
+
/** \brief
|
|
36
|
+
* Represents a list of contiguous line segments, and supports noding the segments.
|
|
37
|
+
*
|
|
38
|
+
* The line segments are represented by an array of [Coordinates](@ref geom::Coordinate).
|
|
39
|
+
* Intended to optimize the noding of contiguous segments by reducing the number
|
|
40
|
+
* of allocated objects. SegmentStrings can carry a context object, which is
|
|
41
|
+
* useful for preserving topological or parentage information.
|
|
42
|
+
* All noded substrings are initialized with the same context object.
|
|
43
|
+
*/
|
|
44
|
+
class GEOS_DLL BasicSegmentString : public SegmentString {
|
|
45
|
+
|
|
46
|
+
public:
|
|
47
|
+
|
|
48
|
+
/// \brief Construct a BasicSegmentString.
|
|
49
|
+
///
|
|
50
|
+
/// @param newPts CoordinateSequence representing the string, externally owned
|
|
51
|
+
/// @param newContext the context associated to this SegmentString
|
|
52
|
+
///
|
|
53
|
+
BasicSegmentString(geom::CoordinateSequence* newPts,
|
|
54
|
+
const void* newContext)
|
|
55
|
+
:
|
|
56
|
+
SegmentString(newContext, newPts)
|
|
57
|
+
{}
|
|
58
|
+
|
|
59
|
+
~BasicSegmentString() override
|
|
60
|
+
{}
|
|
61
|
+
|
|
62
|
+
// see dox in SegmentString.h
|
|
63
|
+
std::ostream& print(std::ostream& os) const override;
|
|
64
|
+
|
|
65
|
+
/** \brief
|
|
66
|
+
* Gets the octant of the segment starting at vertex index.
|
|
67
|
+
*
|
|
68
|
+
* @param index the index of the vertex starting the segment.
|
|
69
|
+
* Must not be the last index in the vertex list
|
|
70
|
+
* @return the octant of the segment at the vertex
|
|
71
|
+
*/
|
|
72
|
+
int getSegmentOctant(std::size_t index) const
|
|
73
|
+
{
|
|
74
|
+
if(index >= size() - 1) {
|
|
75
|
+
return -1;
|
|
76
|
+
}
|
|
77
|
+
return Octant::octant(getCoordinate(index), getCoordinate(index + 1));
|
|
78
|
+
};
|
|
79
|
+
|
|
80
|
+
private:
|
|
81
|
+
|
|
82
|
+
// Declare type as noncopyable
|
|
83
|
+
BasicSegmentString(const BasicSegmentString& other) = delete;
|
|
84
|
+
BasicSegmentString& operator=(const BasicSegmentString& rhs) = delete;
|
|
85
|
+
|
|
86
|
+
};
|
|
87
|
+
|
|
88
|
+
} // namespace geos.noding
|
|
89
|
+
} // namespace geos
|