@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,514 @@
|
|
|
1
|
+
/**********************************************************************
|
|
2
|
+
*
|
|
3
|
+
* GEOS - Geometry Engine Open Source
|
|
4
|
+
* http://geos.osgeo.org
|
|
5
|
+
*
|
|
6
|
+
* Copyright (C) 2012 Excensus LLC.
|
|
7
|
+
* Copyright (C) 2019 Daniel Baston
|
|
8
|
+
*
|
|
9
|
+
* This is free software; you can redistribute and/or modify it under
|
|
10
|
+
* the terms of the GNU Lesser General Licence as published
|
|
11
|
+
* by the Free Software Foundation.
|
|
12
|
+
* See the COPYING file for more information.
|
|
13
|
+
*
|
|
14
|
+
**********************************************************************
|
|
15
|
+
*
|
|
16
|
+
* Last port: triangulate/quadedge/QuadEdgeSubdivision.java r524
|
|
17
|
+
*
|
|
18
|
+
**********************************************************************/
|
|
19
|
+
|
|
20
|
+
#pragma once
|
|
21
|
+
|
|
22
|
+
#include <memory>
|
|
23
|
+
#include <list>
|
|
24
|
+
#include <stack>
|
|
25
|
+
#include <unordered_set>
|
|
26
|
+
#include <array>
|
|
27
|
+
#include <vector>
|
|
28
|
+
|
|
29
|
+
#include <geos/geom/MultiLineString.h>
|
|
30
|
+
#include <geos/triangulate/quadedge/QuadEdge.h>
|
|
31
|
+
#include <geos/triangulate/quadedge/QuadEdgeLocator.h>
|
|
32
|
+
#include <geos/triangulate/quadedge/QuadEdgeQuartet.h>
|
|
33
|
+
#include <geos/triangulate/quadedge/Vertex.h>
|
|
34
|
+
|
|
35
|
+
namespace geos {
|
|
36
|
+
|
|
37
|
+
namespace geom {
|
|
38
|
+
|
|
39
|
+
class CoordinateSequence;
|
|
40
|
+
class GeometryCollection;
|
|
41
|
+
class MultiLineString;
|
|
42
|
+
class GeometryFactory;
|
|
43
|
+
class Coordinate;
|
|
44
|
+
class Geometry;
|
|
45
|
+
class Envelope;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
namespace triangulate { //geos.triangulate
|
|
49
|
+
namespace quadedge { //geos.triangulate.quadedge
|
|
50
|
+
|
|
51
|
+
class TriangleVisitor;
|
|
52
|
+
|
|
53
|
+
/** \brief
|
|
54
|
+
* A class that contains the [QuadEdges](@ref QuadEdge) representing a planar
|
|
55
|
+
* subdivision that models a triangulation.
|
|
56
|
+
*
|
|
57
|
+
* The subdivision is constructed using the quadedge algebra defined in the class QuadEdge.
|
|
58
|
+
*
|
|
59
|
+
* All metric calculations are done in the Vertex class.
|
|
60
|
+
* In addition to a triangulation, subdivisions support extraction of Voronoi diagrams.
|
|
61
|
+
* This is easily accomplished, since the Voronoi diagram is the dual
|
|
62
|
+
* of the Delaunay triangulation.
|
|
63
|
+
*
|
|
64
|
+
* Subdivisions can be provided with a tolerance value. Inserted vertices which
|
|
65
|
+
* are closer than this value to vertices already in the subdivision will be
|
|
66
|
+
* ignored. Using a suitable tolerance value can prevent robustness failures
|
|
67
|
+
* from happening during Delaunay triangulation.
|
|
68
|
+
*
|
|
69
|
+
* Subdivisions maintain a **frame** triangle around the client-created
|
|
70
|
+
* edges. The frame is used to provide a bounded "container" for all edges
|
|
71
|
+
* within a TIN. Normally the frame edges, frame connecting edges, and frame
|
|
72
|
+
* triangles are not included in client processing.
|
|
73
|
+
*
|
|
74
|
+
* @author JTS: David Skea
|
|
75
|
+
* @author JTS: Martin Davis
|
|
76
|
+
* @author Benjamin Campbell
|
|
77
|
+
*/
|
|
78
|
+
class GEOS_DLL QuadEdgeSubdivision {
|
|
79
|
+
public:
|
|
80
|
+
typedef std::vector<QuadEdge*> QuadEdgeList;
|
|
81
|
+
|
|
82
|
+
/** \brief
|
|
83
|
+
* Gets the edges for the triangle to the left of the given QuadEdge.
|
|
84
|
+
*
|
|
85
|
+
* @param startQE
|
|
86
|
+
* @param triEdge
|
|
87
|
+
*
|
|
88
|
+
* @throws IllegalArgumentException if the edges do not form a triangle
|
|
89
|
+
*/
|
|
90
|
+
static void getTriangleEdges(const QuadEdge& startQE,
|
|
91
|
+
const QuadEdge* triEdge[3]);
|
|
92
|
+
|
|
93
|
+
private:
|
|
94
|
+
/**
|
|
95
|
+
* Use a deque to ensure QuadEdge pointers are stable.
|
|
96
|
+
* Note that it is NOT safe to erase entries from the deque.
|
|
97
|
+
*/
|
|
98
|
+
std::deque<QuadEdgeQuartet> quadEdges;
|
|
99
|
+
std::array<QuadEdge*, 3> startingEdges;
|
|
100
|
+
double tolerance;
|
|
101
|
+
double edgeCoincidenceTolerance;
|
|
102
|
+
std::array<Vertex, 3> frameVertex;
|
|
103
|
+
geom::Envelope frameEnv;
|
|
104
|
+
std::unique_ptr<QuadEdgeLocator> locator;
|
|
105
|
+
bool visit_state_clean;
|
|
106
|
+
|
|
107
|
+
public:
|
|
108
|
+
/** \brief
|
|
109
|
+
* Creates a new instance of a quad-edge subdivision based on a frame triangle
|
|
110
|
+
* that encloses a supplied bounding box.
|
|
111
|
+
* A new super-bounding box that contains the triangle is computed and stored.
|
|
112
|
+
*
|
|
113
|
+
* @param env the bounding box to surround
|
|
114
|
+
* @param tolerance the tolerance value for determining if two sites are equal
|
|
115
|
+
*/
|
|
116
|
+
QuadEdgeSubdivision(const geom::Envelope& env, double tolerance);
|
|
117
|
+
|
|
118
|
+
virtual ~QuadEdgeSubdivision() = default;
|
|
119
|
+
|
|
120
|
+
private:
|
|
121
|
+
virtual void createFrame(const geom::Envelope& env);
|
|
122
|
+
|
|
123
|
+
virtual void initSubdiv();
|
|
124
|
+
|
|
125
|
+
public:
|
|
126
|
+
/** \brief
|
|
127
|
+
* Gets the vertex-equality tolerance value used in this subdivision
|
|
128
|
+
*
|
|
129
|
+
* @return the tolerance value
|
|
130
|
+
*/
|
|
131
|
+
inline double
|
|
132
|
+
getTolerance() const
|
|
133
|
+
{
|
|
134
|
+
return tolerance;
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
/** \brief
|
|
138
|
+
* Gets the envelope of the Subdivision (including the frame).
|
|
139
|
+
*
|
|
140
|
+
* @return the envelope
|
|
141
|
+
*/
|
|
142
|
+
inline const geom::Envelope&
|
|
143
|
+
getEnvelope() const
|
|
144
|
+
{
|
|
145
|
+
return frameEnv;
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
/** \brief
|
|
149
|
+
* Gets the collection of base {@link QuadEdge}s (one for every pair of
|
|
150
|
+
* vertices which is connected).
|
|
151
|
+
*
|
|
152
|
+
* @return a QuadEdgeList
|
|
153
|
+
*/
|
|
154
|
+
inline std::deque<QuadEdgeQuartet>&
|
|
155
|
+
getEdges()
|
|
156
|
+
{
|
|
157
|
+
return quadEdges;
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
/** \brief
|
|
161
|
+
* Sets the QuadEdgeLocator to use for locating containing triangles
|
|
162
|
+
* in this subdivision.
|
|
163
|
+
*
|
|
164
|
+
* @param p_locator
|
|
165
|
+
* a QuadEdgeLocator
|
|
166
|
+
*/
|
|
167
|
+
inline void
|
|
168
|
+
setLocator(std::unique_ptr<QuadEdgeLocator> p_locator)
|
|
169
|
+
{
|
|
170
|
+
this->locator = std::move(p_locator);
|
|
171
|
+
}
|
|
172
|
+
|
|
173
|
+
/** \brief
|
|
174
|
+
* Creates a new quadedge, recording it in the edges list.
|
|
175
|
+
*
|
|
176
|
+
* @param o
|
|
177
|
+
* @param d
|
|
178
|
+
* @return
|
|
179
|
+
*/
|
|
180
|
+
virtual QuadEdge& makeEdge(const Vertex& o, const Vertex& d);
|
|
181
|
+
|
|
182
|
+
/** \brief
|
|
183
|
+
* Creates a new QuadEdge connecting the destination of a to the origin of b,
|
|
184
|
+
* in such a way that all three have the same left face after the connection
|
|
185
|
+
* is complete.
|
|
186
|
+
* The quadedge is recorded in the edges list.
|
|
187
|
+
*
|
|
188
|
+
* @param a
|
|
189
|
+
* @param b
|
|
190
|
+
* @return
|
|
191
|
+
*/
|
|
192
|
+
virtual QuadEdge& connect(QuadEdge& a, QuadEdge& b);
|
|
193
|
+
|
|
194
|
+
/** \brief
|
|
195
|
+
* Deletes a quadedge from the subdivision. Linked quadedges are updated to
|
|
196
|
+
* reflect the deletion.
|
|
197
|
+
*
|
|
198
|
+
* @param e the quadedge to delete
|
|
199
|
+
*/
|
|
200
|
+
void remove(QuadEdge& e);
|
|
201
|
+
|
|
202
|
+
/** \brief
|
|
203
|
+
* Locates an edge of a triangle which contains a location
|
|
204
|
+
* specified by a Vertex `v`.
|
|
205
|
+
*
|
|
206
|
+
* The edge returned has the property that either v is on e,
|
|
207
|
+
* or e is an edge of a triangle containing v.
|
|
208
|
+
* The search starts from startEdge and proceeds on the general direction of v.
|
|
209
|
+
*
|
|
210
|
+
* This locate algorithm relies on the subdivision being Delaunay. For
|
|
211
|
+
* non-Delaunay subdivisions, this may loop for ever.
|
|
212
|
+
*
|
|
213
|
+
* @param v the location to search for
|
|
214
|
+
* @param startEdge an edge of the subdivision to start searching at
|
|
215
|
+
* @return a QuadEdge which contains v, or is on the edge of a triangle containing v
|
|
216
|
+
* @throws LocateFailureException if the location algorithm fails to converge in a
|
|
217
|
+
* reasonable number of iterations.
|
|
218
|
+
*
|
|
219
|
+
* @note The returned pointer **should not** be freed be the caller.
|
|
220
|
+
*/
|
|
221
|
+
QuadEdge* locateFromEdge(const Vertex& v,
|
|
222
|
+
const QuadEdge& startEdge) const;
|
|
223
|
+
|
|
224
|
+
/** \brief
|
|
225
|
+
* Finds a quadedge of a triangle containing a location
|
|
226
|
+
* specified by a [Vertex](@ref triangulate::quadedge::Vertex), if one exists.
|
|
227
|
+
*
|
|
228
|
+
* @param v the vertex to locate
|
|
229
|
+
* @return a QuadEdge on the edge of a triangle which touches or contains the location
|
|
230
|
+
* @return `null` if no such triangle exists.
|
|
231
|
+
*
|
|
232
|
+
* @note The returned pointer **should not** be freed be the caller.
|
|
233
|
+
*/
|
|
234
|
+
inline QuadEdge*
|
|
235
|
+
locate(const Vertex& v) const
|
|
236
|
+
{
|
|
237
|
+
return locator->locate(v);
|
|
238
|
+
}
|
|
239
|
+
|
|
240
|
+
/** \brief
|
|
241
|
+
* Finds a quadedge of a triangle containing a location
|
|
242
|
+
* specified by a geom::Coordinate, if one exists.
|
|
243
|
+
*
|
|
244
|
+
* @param p the Coordinate to locate
|
|
245
|
+
* @return a QuadEdge on the edge of a triangle which touches or contains the location
|
|
246
|
+
* @return `null` if no such triangle exists.
|
|
247
|
+
*
|
|
248
|
+
* @note The returned pointer **should not** be freed be the caller.
|
|
249
|
+
*/
|
|
250
|
+
inline QuadEdge*
|
|
251
|
+
locate(const geom::Coordinate& p)
|
|
252
|
+
{
|
|
253
|
+
return locator->locate(Vertex(p));
|
|
254
|
+
}
|
|
255
|
+
|
|
256
|
+
/** \brief
|
|
257
|
+
* Locates the edge between the given vertices, if it exists in the
|
|
258
|
+
* subdivision.
|
|
259
|
+
*
|
|
260
|
+
* @param p0 a coordinate
|
|
261
|
+
* @param p1 another coordinate
|
|
262
|
+
* @return the edge joining the coordinates, if present
|
|
263
|
+
* @return `null` if no such edge exists
|
|
264
|
+
*
|
|
265
|
+
* @note the caller **should not** free the returned pointer
|
|
266
|
+
*/
|
|
267
|
+
QuadEdge* locate(const geom::Coordinate& p0, const geom::Coordinate& p1);
|
|
268
|
+
|
|
269
|
+
/** \brief
|
|
270
|
+
* Inserts a new site into the Subdivision, connecting it to the vertices of
|
|
271
|
+
* the containing triangle (or quadrilateral, if the split point falls on an
|
|
272
|
+
* existing edge).
|
|
273
|
+
*
|
|
274
|
+
* This method does NOT maintain the Delaunay condition. If desired, this must
|
|
275
|
+
* be checked and enforced by the caller.
|
|
276
|
+
*
|
|
277
|
+
* This method does NOT check if the inserted vertex falls on an edge. This
|
|
278
|
+
* must be checked by the caller, since this situation may cause erroneous
|
|
279
|
+
* triangulation
|
|
280
|
+
*
|
|
281
|
+
* @param v the vertex to insert
|
|
282
|
+
* @return a new quad edge terminating in v
|
|
283
|
+
*/
|
|
284
|
+
QuadEdge& insertSite(const Vertex& v);
|
|
285
|
+
|
|
286
|
+
/** \brief
|
|
287
|
+
* Tests whether a QuadEdge is an edge incident on a frame triangle vertex.
|
|
288
|
+
*
|
|
289
|
+
* @param e the edge to test
|
|
290
|
+
* @return `true` if the edge is connected to the frame triangle
|
|
291
|
+
*/
|
|
292
|
+
bool isFrameEdge(const QuadEdge& e) const;
|
|
293
|
+
|
|
294
|
+
/** \brief
|
|
295
|
+
* Tests whether a QuadEdge is an edge on the border of the frame facets and
|
|
296
|
+
* the internal facets. E.g. an edge which does not itself touch a frame
|
|
297
|
+
* vertex, but which touches an edge which does.
|
|
298
|
+
*
|
|
299
|
+
* @param e the edge to test
|
|
300
|
+
* @return `true` if the edge is on the border of the frame
|
|
301
|
+
*/
|
|
302
|
+
bool isFrameBorderEdge(const QuadEdge& e) const;
|
|
303
|
+
|
|
304
|
+
/** \brief
|
|
305
|
+
* Tests whether a vertex is a vertex of the outer triangle.
|
|
306
|
+
*
|
|
307
|
+
* @param v the vertex to test
|
|
308
|
+
* @return `true` if the vertex is an outer triangle vertex
|
|
309
|
+
*/
|
|
310
|
+
bool isFrameVertex(const Vertex& v) const;
|
|
311
|
+
|
|
312
|
+
|
|
313
|
+
/** \brief
|
|
314
|
+
* Tests whether a [Coordinate](@ref geom::Coordinate) lies on a QuadEdge,
|
|
315
|
+
* up to a tolerance determined by the subdivision tolerance.
|
|
316
|
+
*
|
|
317
|
+
* @param e a QuadEdge
|
|
318
|
+
* @param p a point
|
|
319
|
+
* @return `true` if the vertex lies on the edge
|
|
320
|
+
*/
|
|
321
|
+
bool isOnEdge(const QuadEdge& e, const geom::Coordinate& p) const;
|
|
322
|
+
|
|
323
|
+
/** \brief
|
|
324
|
+
* Tests whether a Vertex is the start or end vertex of a
|
|
325
|
+
* QuadEdge, up to the subdivision tolerance distance.
|
|
326
|
+
*
|
|
327
|
+
* @param e
|
|
328
|
+
* @param v
|
|
329
|
+
* @return `true` if the vertex is a endpoint of the edge
|
|
330
|
+
*/
|
|
331
|
+
bool isVertexOfEdge(const QuadEdge& e, const Vertex& v) const;
|
|
332
|
+
|
|
333
|
+
/** \brief
|
|
334
|
+
* Gets all primary quadedges in the subdivision.
|
|
335
|
+
*
|
|
336
|
+
* A primary edge is a QuadEdge which occupies the 0'th position in its
|
|
337
|
+
* array of associated quadedges. These provide the unique geometric
|
|
338
|
+
* edges of the triangulation.
|
|
339
|
+
*
|
|
340
|
+
* @param includeFrame `true` if the frame edges are to be included
|
|
341
|
+
* @return a List of QuadEdges. The caller takes ownership of the returned QuadEdgeList but not the
|
|
342
|
+
* items it contains.
|
|
343
|
+
*/
|
|
344
|
+
std::unique_ptr<QuadEdgeList> getPrimaryEdges(bool includeFrame);
|
|
345
|
+
|
|
346
|
+
/*****************************************************************************
|
|
347
|
+
* Visitors
|
|
348
|
+
****************************************************************************/
|
|
349
|
+
|
|
350
|
+
void visitTriangles(TriangleVisitor* triVisitor, bool includeFrame);
|
|
351
|
+
|
|
352
|
+
private:
|
|
353
|
+
typedef std::stack<QuadEdge*> QuadEdgeStack;
|
|
354
|
+
typedef std::vector<std::unique_ptr<geom::CoordinateSequence>> TriList;
|
|
355
|
+
|
|
356
|
+
/** \brief
|
|
357
|
+
* The quadedges forming a single triangle.
|
|
358
|
+
*
|
|
359
|
+
* Only one visitor is allowed to be active at a time, so this is safe.
|
|
360
|
+
*/
|
|
361
|
+
std::array<QuadEdge*, 3> m_triEdges;
|
|
362
|
+
|
|
363
|
+
/** \brief
|
|
364
|
+
* Resets the `visited` flag of each `QuadEdge` prior to iteration, if necessary.
|
|
365
|
+
*/
|
|
366
|
+
void prepareVisit();
|
|
367
|
+
|
|
368
|
+
/** \brief
|
|
369
|
+
* Stores the edges for a visited triangle. Also pushes sym (neighbour) edges
|
|
370
|
+
* on stack to visit later.
|
|
371
|
+
*
|
|
372
|
+
* @param edge
|
|
373
|
+
* @param edgeStack
|
|
374
|
+
* @param includeFrame
|
|
375
|
+
* @return the visited triangle edges
|
|
376
|
+
* @return `null` if the triangle should not be visited (for instance, if it is
|
|
377
|
+
* outer)
|
|
378
|
+
*/
|
|
379
|
+
std::array<QuadEdge*, 3>* fetchTriangleToVisit(QuadEdge* edge, QuadEdgeStack& edgeStack, bool includeFrame);
|
|
380
|
+
|
|
381
|
+
/** \brief
|
|
382
|
+
* Gets the coordinates for each triangle in the subdivision as an array.
|
|
383
|
+
*
|
|
384
|
+
* @param includeFrame true if the frame triangles should be included
|
|
385
|
+
* @param triList a list of Coordinate[4] representing each triangle
|
|
386
|
+
*/
|
|
387
|
+
void getTriangleCoordinates(TriList* triList, bool includeFrame);
|
|
388
|
+
|
|
389
|
+
private:
|
|
390
|
+
class TriangleCoordinatesVisitor;
|
|
391
|
+
class TriangleCircumcentreVisitor;
|
|
392
|
+
|
|
393
|
+
public:
|
|
394
|
+
/** \brief
|
|
395
|
+
* Gets the geometry for the edges in the subdivision as a [MultiLineString](@ref geom::MultiLineString)
|
|
396
|
+
* containing 2-point lines.
|
|
397
|
+
*
|
|
398
|
+
* @param geomFact the GeometryFactory to use
|
|
399
|
+
* @return a MultiLineString
|
|
400
|
+
* @note The caller takes ownership of the returned object.
|
|
401
|
+
*/
|
|
402
|
+
std::unique_ptr<geom::MultiLineString> getEdges(const geom::GeometryFactory& geomFact);
|
|
403
|
+
|
|
404
|
+
/** \brief
|
|
405
|
+
* Gets the geometry for the triangles in a triangulated subdivision as a
|
|
406
|
+
* [GeometryCollection](@ref geos::geom::GeometryCollection)
|
|
407
|
+
* of triangular [Polygons](@ref geos::geom::Polygon).
|
|
408
|
+
*
|
|
409
|
+
* @param geomFact the GeometryFactory to use
|
|
410
|
+
* @return a GeometryCollection of triangular polygons.
|
|
411
|
+
*
|
|
412
|
+
* @note The caller takes ownership of the returned object.
|
|
413
|
+
*/
|
|
414
|
+
std::unique_ptr<geom::GeometryCollection> getTriangles(const geom::GeometryFactory& geomFact);
|
|
415
|
+
|
|
416
|
+
/** \brief
|
|
417
|
+
* Gets the cells in the Voronoi diagram for this triangulation.
|
|
418
|
+
* The cells are returned as a [GeometryCollection](@ref geom::GeometryCollection)
|
|
419
|
+
* of [Polygons](@ref geom::Polygon).
|
|
420
|
+
*
|
|
421
|
+
* The userData of each polygon is set to be the [Coordinate](@ref geom::Coordinate)
|
|
422
|
+
* of the cell site. This allows easily associating external
|
|
423
|
+
* data associated with the sites to the cells.
|
|
424
|
+
*
|
|
425
|
+
* @param geomFact a geometry factory
|
|
426
|
+
* @return a GeometryCollection of Polygons
|
|
427
|
+
*/
|
|
428
|
+
std::unique_ptr<geom::GeometryCollection> getVoronoiDiagram(const geom::GeometryFactory& geomFact);
|
|
429
|
+
|
|
430
|
+
/** \brief
|
|
431
|
+
* Gets the cells in the Voronoi diagram for this triangulation.
|
|
432
|
+
*
|
|
433
|
+
* The cells are returned as a [GeometryCollection](@ref geom::GeometryCollection) of
|
|
434
|
+
* [LineStrings](@ref geom::LineString). The userData of each polygon is set to be the
|
|
435
|
+
* [Coordinate](@ref geom::Coordinate) of the cell site. This allows easily associating external
|
|
436
|
+
* data associated with the sites to the cells.
|
|
437
|
+
*
|
|
438
|
+
* @param geomFact a geometry factory
|
|
439
|
+
* @return a MultiLineString
|
|
440
|
+
*/
|
|
441
|
+
std::unique_ptr<geom::MultiLineString> getVoronoiDiagramEdges(const geom::GeometryFactory& geomFact);
|
|
442
|
+
|
|
443
|
+
/** \brief
|
|
444
|
+
* Gets a List of [Polygons](@ref geom::Polygon) for the Voronoi cells
|
|
445
|
+
* of this triangulation.
|
|
446
|
+
*
|
|
447
|
+
* The userData of each polygon is set to be the [Coordinate](@ref geom::Coordinate)
|
|
448
|
+
* of the cell site. This allows easily associating external data associated
|
|
449
|
+
* with the sites to the cells.
|
|
450
|
+
*
|
|
451
|
+
* @param geomFact a geometry factory
|
|
452
|
+
* @return a List of Polygons
|
|
453
|
+
*/
|
|
454
|
+
std::vector<std::unique_ptr<geom::Geometry>> getVoronoiCellPolygons(const geom::GeometryFactory& geomFact);
|
|
455
|
+
|
|
456
|
+
/** \brief
|
|
457
|
+
* Gets a List of [LineStrings](@ref geom::LineString) for the Voronoi cells
|
|
458
|
+
* of this triangulation.
|
|
459
|
+
*
|
|
460
|
+
* The userData of each LineString is set to be the [Coordinate](@ref geom::Coordinate)
|
|
461
|
+
* of the cell site. This allows easily associating external
|
|
462
|
+
* data associated with the sites to the cells.
|
|
463
|
+
*
|
|
464
|
+
* @param geomFact a geometry factory
|
|
465
|
+
* @return a List of LineString
|
|
466
|
+
*/
|
|
467
|
+
std::vector<std::unique_ptr<geom::Geometry>> getVoronoiCellEdges(const geom::GeometryFactory& geomFact);
|
|
468
|
+
|
|
469
|
+
/** \brief
|
|
470
|
+
* Gets a collection of [QuadEdges](@ref QuadEdge) whose origin vertices are a unique set
|
|
471
|
+
* which includes all vertices in the subdivision.
|
|
472
|
+
*
|
|
473
|
+
* The frame vertices can be included if required. This is useful for algorithms which require
|
|
474
|
+
* traversing the subdivision starting at all vertices.
|
|
475
|
+
* Returning a quadedge for each vertex is more efficient than the alternative
|
|
476
|
+
* of finding the actual vertices using `getVertices()` and then locating
|
|
477
|
+
* quadedges attached to them.
|
|
478
|
+
*
|
|
479
|
+
* @param includeFrame `true` if the frame vertices should be included
|
|
480
|
+
* @return a collection of QuadEdge with the vertices of the subdivision as their origins
|
|
481
|
+
*/
|
|
482
|
+
std::unique_ptr<QuadEdgeSubdivision::QuadEdgeList> getVertexUniqueEdges(bool includeFrame);
|
|
483
|
+
|
|
484
|
+
/** \brief
|
|
485
|
+
* Gets the Voronoi cell around a site specified by the origin of a QuadEdge.
|
|
486
|
+
*
|
|
487
|
+
* The userData of the polygon is set to be the [Coordinate](@ref geom::Coordinate)
|
|
488
|
+
* of the site. This allows attaching external data associated with the site
|
|
489
|
+
* to this cell polygon.
|
|
490
|
+
*
|
|
491
|
+
* @param qe a quadedge originating at the cell site
|
|
492
|
+
* @param geomFact a factory for building the polygon
|
|
493
|
+
* @return a polygon indicating the cell extent
|
|
494
|
+
*/
|
|
495
|
+
std::unique_ptr<geom::Geometry> getVoronoiCellPolygon(const QuadEdge* qe, const geom::GeometryFactory& geomFact);
|
|
496
|
+
|
|
497
|
+
/** \brief
|
|
498
|
+
* Gets the Voronoi cell edge around a site specified by the origin of a QuadEdge.
|
|
499
|
+
*
|
|
500
|
+
* The userData of the LineString is set to be the [Coordinate](@ref geom::Coordinate)
|
|
501
|
+
* of the site. This allows attaching external data associated with
|
|
502
|
+
* the site to this cell polygon.
|
|
503
|
+
*
|
|
504
|
+
* @param qe a quadedge originating at the cell site
|
|
505
|
+
* @param geomFact a factory for building the polygon
|
|
506
|
+
* @return a polygon indicating the cell extent
|
|
507
|
+
*/
|
|
508
|
+
std::unique_ptr<geom::Geometry> getVoronoiCellEdge(const QuadEdge* qe, const geom::GeometryFactory& geomFact);
|
|
509
|
+
|
|
510
|
+
};
|
|
511
|
+
|
|
512
|
+
} //namespace geos.triangulate.quadedge
|
|
513
|
+
} //namespace geos.triangulate
|
|
514
|
+
} //namespace goes
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
/**********************************************************************
|
|
2
|
+
*
|
|
3
|
+
* GEOS - Geometry Engine Open Source
|
|
4
|
+
* http://geos.osgeo.org
|
|
5
|
+
*
|
|
6
|
+
* Copyright (C) 2012 Excensus LLC.
|
|
7
|
+
*
|
|
8
|
+
* This is free software; you can redistribute and/or modify it under
|
|
9
|
+
* the terms of the GNU Lesser General Licence as published
|
|
10
|
+
* by the Free Software Foundation.
|
|
11
|
+
* See the COPYING file for more information.
|
|
12
|
+
*
|
|
13
|
+
**********************************************************************
|
|
14
|
+
*
|
|
15
|
+
* Last port: triangulate/quadedge/TrianglePredicate.java r524
|
|
16
|
+
*
|
|
17
|
+
**********************************************************************/
|
|
18
|
+
|
|
19
|
+
#pragma once
|
|
20
|
+
|
|
21
|
+
#include <geos/export.h>
|
|
22
|
+
#include <geos/geom/Location.h>
|
|
23
|
+
|
|
24
|
+
namespace geos {
|
|
25
|
+
namespace geom {
|
|
26
|
+
class CoordinateXY;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
namespace geos {
|
|
31
|
+
namespace triangulate {
|
|
32
|
+
namespace quadedge {
|
|
33
|
+
|
|
34
|
+
/** \brief
|
|
35
|
+
* Algorithms for computing values and predicates
|
|
36
|
+
* associated with triangles.
|
|
37
|
+
*
|
|
38
|
+
* For some algorithms extended-precision
|
|
39
|
+
* implementations are provided, which are more robust
|
|
40
|
+
* (i.e. they produce correct answers in more cases).
|
|
41
|
+
* Also, some more robust formulations of
|
|
42
|
+
* some algorithms are provided, which utilize
|
|
43
|
+
* normalization to the origin.
|
|
44
|
+
*
|
|
45
|
+
* @author JTS: Martin Davis
|
|
46
|
+
* @author Benjamin Campbell
|
|
47
|
+
*
|
|
48
|
+
*/
|
|
49
|
+
class GEOS_DLL TrianglePredicate {
|
|
50
|
+
public:
|
|
51
|
+
using CoordinateXY = geos::geom::CoordinateXY;
|
|
52
|
+
|
|
53
|
+
/**
|
|
54
|
+
* Tests if a point is inside the circle defined by
|
|
55
|
+
* the triangle with vertices a, b, c (oriented counter-clockwise).
|
|
56
|
+
* This test uses simple
|
|
57
|
+
* double-precision arithmetic, and thus may not be robust.
|
|
58
|
+
*
|
|
59
|
+
* @param a a vertex of the triangle
|
|
60
|
+
* @param b a vertex of the triangle
|
|
61
|
+
* @param c a vertex of the triangle
|
|
62
|
+
* @param p the point to test
|
|
63
|
+
* @return true if this point is inside the circle defined by the points a, b, c
|
|
64
|
+
*/
|
|
65
|
+
static geom::Location isInCircleNonRobust(
|
|
66
|
+
const CoordinateXY& a, const CoordinateXY& b, const CoordinateXY& c,
|
|
67
|
+
const CoordinateXY& p);
|
|
68
|
+
|
|
69
|
+
/**
|
|
70
|
+
* Tests if a point is inside the circle defined by
|
|
71
|
+
* the triangle with vertices a, b, c (oriented counter-clockwise).
|
|
72
|
+
* This test uses simple
|
|
73
|
+
* double-precision arithmetic, and thus is not 10% robust.
|
|
74
|
+
* However, by using normalization to the origin
|
|
75
|
+
* it provides improved robustness and increased performance.
|
|
76
|
+
* <p>
|
|
77
|
+
* Based on code by J.R.Shewchuk.
|
|
78
|
+
*
|
|
79
|
+
*
|
|
80
|
+
* @param a a vertex of the triangle
|
|
81
|
+
* @param b a vertex of the triangle
|
|
82
|
+
* @param c a vertex of the triangle
|
|
83
|
+
* @param p the point to test
|
|
84
|
+
* @return true if this point is inside the circle defined by the points a, b, c
|
|
85
|
+
*/
|
|
86
|
+
static geom::Location isInCircleNormalized(
|
|
87
|
+
const CoordinateXY& a, const CoordinateXY& b, const CoordinateXY& c,
|
|
88
|
+
const CoordinateXY& p);
|
|
89
|
+
|
|
90
|
+
private:
|
|
91
|
+
/**
|
|
92
|
+
* Computes twice the area of the oriented triangle (a, b, c), i.e., the area is positive if the
|
|
93
|
+
* triangle is oriented counterclockwise.
|
|
94
|
+
*
|
|
95
|
+
* @param a a vertex of the triangle
|
|
96
|
+
* @param b a vertex of the triangle
|
|
97
|
+
* @param c a vertex of the triangle
|
|
98
|
+
*/
|
|
99
|
+
static double triArea(const CoordinateXY& a,
|
|
100
|
+
const CoordinateXY& b, const CoordinateXY& c);
|
|
101
|
+
|
|
102
|
+
public:
|
|
103
|
+
/**
|
|
104
|
+
* Tests if a point is inside the circle defined by
|
|
105
|
+
* the triangle with vertices a, b, c (oriented counter-clockwise).
|
|
106
|
+
* This method uses more robust computation.
|
|
107
|
+
*
|
|
108
|
+
* @param a a vertex of the triangle
|
|
109
|
+
* @param b a vertex of the triangle
|
|
110
|
+
* @param c a vertex of the triangle
|
|
111
|
+
* @param p the point to test
|
|
112
|
+
* @return true if this point is inside the circle defined by the points a, b, c
|
|
113
|
+
*/
|
|
114
|
+
static geom::Location isInCircleRobust(
|
|
115
|
+
const CoordinateXY& a, const CoordinateXY& b, const CoordinateXY& c,
|
|
116
|
+
const CoordinateXY& p);
|
|
117
|
+
} ;
|
|
118
|
+
|
|
119
|
+
|
|
120
|
+
} // namespace geos.triangulate.quadedge
|
|
121
|
+
} // namespace geos.triangulate
|
|
122
|
+
} // namespace geos
|
|
123
|
+
|
|
124
|
+
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**********************************************************************
|
|
2
|
+
*
|
|
3
|
+
* GEOS - Geometry Engine Open Source
|
|
4
|
+
* http://geos.osgeo.org
|
|
5
|
+
*
|
|
6
|
+
* Copyright (C) 2012 Excensus LLC.
|
|
7
|
+
*
|
|
8
|
+
* This is free software; you can redistribute and/or modify it under
|
|
9
|
+
* the terms of the GNU Lesser General Licence as published
|
|
10
|
+
* by the Free Software Foundation.
|
|
11
|
+
* See the COPYING file for more information.
|
|
12
|
+
*
|
|
13
|
+
**********************************************************************
|
|
14
|
+
*
|
|
15
|
+
* Last port: triangulate/quadedge/TriangleVisitor.java r524
|
|
16
|
+
*
|
|
17
|
+
**********************************************************************/
|
|
18
|
+
|
|
19
|
+
#pragma once
|
|
20
|
+
|
|
21
|
+
#include <geos/triangulate/quadedge/QuadEdge.h>
|
|
22
|
+
|
|
23
|
+
namespace geos {
|
|
24
|
+
namespace triangulate { //geos.triangulate
|
|
25
|
+
namespace quadedge { //geos.triangulate.quadedge
|
|
26
|
+
|
|
27
|
+
/** \brief
|
|
28
|
+
* An interface for algorithms which process the triangles in a {@link QuadEdgeSubdivision}.
|
|
29
|
+
*
|
|
30
|
+
* @author JTS: Martin Davis
|
|
31
|
+
* @author Benjamin Campbell
|
|
32
|
+
*/
|
|
33
|
+
class GEOS_DLL TriangleVisitor {
|
|
34
|
+
public:
|
|
35
|
+
/**
|
|
36
|
+
* Visits the {@link QuadEdge}s of a triangle.
|
|
37
|
+
*
|
|
38
|
+
* @param triEdges an array of the 3 quad edges in a triangle (in CCW order)
|
|
39
|
+
*/
|
|
40
|
+
virtual void visit(std::array<QuadEdge*, 3> & triEdges) = 0;
|
|
41
|
+
virtual ~TriangleVisitor() = default;
|
|
42
|
+
private:
|
|
43
|
+
} ;
|
|
44
|
+
|
|
45
|
+
} //namespace geos.triangulate.quadedge
|
|
46
|
+
} //namespace geos.triangulate
|
|
47
|
+
} //namespace goes
|
|
48
|
+
|