@cpp.js/package-geos 1.0.0-beta.22 → 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.
Files changed (539) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/dist/prebuilt/Android-x86_64/bin/geos-config +79 -0
  3. package/dist/prebuilt/Android-x86_64/bin/geosop +0 -0
  4. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/Angle.h +247 -0
  5. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/Area.h +82 -0
  6. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/BoundaryNodeRule.h +146 -0
  7. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/CGAlgorithmsDD.h +193 -0
  8. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/CentralEndpointIntersector.h +161 -0
  9. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/Centroid.h +157 -0
  10. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/CircularArcs.h +37 -0
  11. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/ConvexHull.h +211 -0
  12. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/Distance.h +116 -0
  13. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/HCoordinate.h +100 -0
  14. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/InteriorPointArea.h +110 -0
  15. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/InteriorPointLine.h +79 -0
  16. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/InteriorPointPoint.h +73 -0
  17. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/Interpolate.h +182 -0
  18. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/Intersection.h +84 -0
  19. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/Length.h +50 -0
  20. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/LineIntersector.h +667 -0
  21. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/MinimumAreaRectangle.h +159 -0
  22. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/MinimumBoundingCircle.h +137 -0
  23. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/MinimumDiameter.h +185 -0
  24. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/NotRepresentableException.h +43 -0
  25. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/Orientation.h +122 -0
  26. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/PointInRing.h +40 -0
  27. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/PointLocation.h +107 -0
  28. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/PointLocator.h +108 -0
  29. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/PolygonNodeTopology.h +149 -0
  30. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/RayCrossingCounter.h +173 -0
  31. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/Rectangle.h +96 -0
  32. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/RobustDeterminant.h +66 -0
  33. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/SimplePointInRing.h +44 -0
  34. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/construct/IndexedDistanceToPoint.h +88 -0
  35. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/construct/IndexedPointInPolygonsLocator.h +79 -0
  36. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/construct/LargestEmptyCircle.h +240 -0
  37. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/construct/MaximumInscribedCircle.h +221 -0
  38. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/distance/DiscreteFrechetDistance.h +175 -0
  39. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/distance/DiscreteHausdorffDistance.h +252 -0
  40. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/distance/DistanceToPoint.h +72 -0
  41. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/distance/PointPairDistance.h +151 -0
  42. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/hull/ConcaveHull.h +309 -0
  43. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/hull/ConcaveHullOfPolygons.h +377 -0
  44. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/hull/HullTri.h +156 -0
  45. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/hull/HullTriangulation.h +139 -0
  46. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/locate/IndexedPointInAreaLocator.h +139 -0
  47. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/locate/PointOnGeometryLocator.h +56 -0
  48. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/locate/SimplePointInAreaLocator.h +117 -0
  49. package/dist/prebuilt/Android-x86_64/include/geos/constants.h +49 -0
  50. package/dist/prebuilt/Android-x86_64/include/geos/coverage/Corner.h +137 -0
  51. package/dist/prebuilt/Android-x86_64/include/geos/coverage/CoverageBoundarySegmentFinder.h +83 -0
  52. package/dist/prebuilt/Android-x86_64/include/geos/coverage/CoverageEdge.h +171 -0
  53. package/dist/prebuilt/Android-x86_64/include/geos/coverage/CoverageGapFinder.h +106 -0
  54. package/dist/prebuilt/Android-x86_64/include/geos/coverage/CoveragePolygon.h +57 -0
  55. package/dist/prebuilt/Android-x86_64/include/geos/coverage/CoveragePolygonValidator.h +381 -0
  56. package/dist/prebuilt/Android-x86_64/include/geos/coverage/CoverageRing.h +205 -0
  57. package/dist/prebuilt/Android-x86_64/include/geos/coverage/CoverageRingEdges.h +170 -0
  58. package/dist/prebuilt/Android-x86_64/include/geos/coverage/CoverageSimplifier.h +166 -0
  59. package/dist/prebuilt/Android-x86_64/include/geos/coverage/CoverageUnion.h +77 -0
  60. package/dist/prebuilt/Android-x86_64/include/geos/coverage/CoverageValidator.h +159 -0
  61. package/dist/prebuilt/Android-x86_64/include/geos/coverage/InvalidSegmentDetector.h +133 -0
  62. package/dist/prebuilt/Android-x86_64/include/geos/coverage/TPVWSimplifier.h +225 -0
  63. package/dist/prebuilt/Android-x86_64/include/geos/coverage/VertexRingCounter.h +71 -0
  64. package/dist/prebuilt/Android-x86_64/include/geos/edgegraph/EdgeGraph.h +137 -0
  65. package/dist/prebuilt/Android-x86_64/include/geos/edgegraph/EdgeGraphBuilder.h +91 -0
  66. package/dist/prebuilt/Android-x86_64/include/geos/edgegraph/HalfEdge.h +315 -0
  67. package/dist/prebuilt/Android-x86_64/include/geos/edgegraph/MarkHalfEdge.h +110 -0
  68. package/dist/prebuilt/Android-x86_64/include/geos/export.h +51 -0
  69. package/dist/prebuilt/Android-x86_64/include/geos/geom/CircularArc.h +273 -0
  70. package/dist/prebuilt/Android-x86_64/include/geos/geom/CircularString.h +85 -0
  71. package/dist/prebuilt/Android-x86_64/include/geos/geom/CompoundCurve.h +121 -0
  72. package/dist/prebuilt/Android-x86_64/include/geos/geom/Coordinate.h +627 -0
  73. package/dist/prebuilt/Android-x86_64/include/geos/geom/CoordinateFilter.h +134 -0
  74. package/dist/prebuilt/Android-x86_64/include/geos/geom/CoordinateList.h +244 -0
  75. package/dist/prebuilt/Android-x86_64/include/geos/geom/CoordinateSequence.h +807 -0
  76. package/dist/prebuilt/Android-x86_64/include/geos/geom/CoordinateSequenceFilter.h +116 -0
  77. package/dist/prebuilt/Android-x86_64/include/geos/geom/CoordinateSequenceIterator.h +126 -0
  78. package/dist/prebuilt/Android-x86_64/include/geos/geom/CoordinateSequences.h +76 -0
  79. package/dist/prebuilt/Android-x86_64/include/geos/geom/Curve.h +71 -0
  80. package/dist/prebuilt/Android-x86_64/include/geos/geom/CurvePolygon.h +58 -0
  81. package/dist/prebuilt/Android-x86_64/include/geos/geom/Dimension.h +64 -0
  82. package/dist/prebuilt/Android-x86_64/include/geos/geom/Envelope.h +826 -0
  83. package/dist/prebuilt/Android-x86_64/include/geos/geom/Geometry.h +1051 -0
  84. package/dist/prebuilt/Android-x86_64/include/geos/geom/GeometryCollection.h +256 -0
  85. package/dist/prebuilt/Android-x86_64/include/geos/geom/GeometryComponentFilter.h +61 -0
  86. package/dist/prebuilt/Android-x86_64/include/geos/geom/GeometryFactory.h +542 -0
  87. package/dist/prebuilt/Android-x86_64/include/geos/geom/GeometryFilter.h +74 -0
  88. package/dist/prebuilt/Android-x86_64/include/geos/geom/GeometryTypeName.h +110 -0
  89. package/dist/prebuilt/Android-x86_64/include/geos/geom/HeuristicOverlay.h +99 -0
  90. package/dist/prebuilt/Android-x86_64/include/geos/geom/IntersectionMatrix.h +383 -0
  91. package/dist/prebuilt/Android-x86_64/include/geos/geom/LineSegment.h +576 -0
  92. package/dist/prebuilt/Android-x86_64/include/geos/geom/LineString.h +151 -0
  93. package/dist/prebuilt/Android-x86_64/include/geos/geom/LinearRing.h +128 -0
  94. package/dist/prebuilt/Android-x86_64/include/geos/geom/Location.h +64 -0
  95. package/dist/prebuilt/Android-x86_64/include/geos/geom/MultiCurve.h +126 -0
  96. package/dist/prebuilt/Android-x86_64/include/geos/geom/MultiLineString.h +160 -0
  97. package/dist/prebuilt/Android-x86_64/include/geos/geom/MultiPoint.h +150 -0
  98. package/dist/prebuilt/Android-x86_64/include/geos/geom/MultiPolygon.h +155 -0
  99. package/dist/prebuilt/Android-x86_64/include/geos/geom/MultiSurface.h +94 -0
  100. package/dist/prebuilt/Android-x86_64/include/geos/geom/Point.h +221 -0
  101. package/dist/prebuilt/Android-x86_64/include/geos/geom/Polygon.h +138 -0
  102. package/dist/prebuilt/Android-x86_64/include/geos/geom/Position.h +68 -0
  103. package/dist/prebuilt/Android-x86_64/include/geos/geom/PrecisionModel.h +374 -0
  104. package/dist/prebuilt/Android-x86_64/include/geos/geom/Quadrant.h +164 -0
  105. package/dist/prebuilt/Android-x86_64/include/geos/geom/SimpleCurve.h +142 -0
  106. package/dist/prebuilt/Android-x86_64/include/geos/geom/Surface.h +115 -0
  107. package/dist/prebuilt/Android-x86_64/include/geos/geom/SurfaceImpl.h +159 -0
  108. package/dist/prebuilt/Android-x86_64/include/geos/geom/Triangle.h +230 -0
  109. package/dist/prebuilt/Android-x86_64/include/geos/geom/prep/AbstractPreparedPolygonContains.h +144 -0
  110. package/dist/prebuilt/Android-x86_64/include/geos/geom/prep/BasicPreparedGeometry.h +214 -0
  111. package/dist/prebuilt/Android-x86_64/include/geos/geom/prep/PreparedGeometry.h +260 -0
  112. package/dist/prebuilt/Android-x86_64/include/geos/geom/prep/PreparedGeometryFactory.h +93 -0
  113. package/dist/prebuilt/Android-x86_64/include/geos/geom/prep/PreparedLineString.h +70 -0
  114. package/dist/prebuilt/Android-x86_64/include/geos/geom/prep/PreparedLineStringDistance.h +57 -0
  115. package/dist/prebuilt/Android-x86_64/include/geos/geom/prep/PreparedLineStringIntersects.h +97 -0
  116. package/dist/prebuilt/Android-x86_64/include/geos/geom/prep/PreparedLineStringNearestPoints.h +54 -0
  117. package/dist/prebuilt/Android-x86_64/include/geos/geom/prep/PreparedPoint.h +56 -0
  118. package/dist/prebuilt/Android-x86_64/include/geos/geom/prep/PreparedPolygon.h +81 -0
  119. package/dist/prebuilt/Android-x86_64/include/geos/geom/prep/PreparedPolygonContains.h +105 -0
  120. package/dist/prebuilt/Android-x86_64/include/geos/geom/prep/PreparedPolygonContainsProperly.h +101 -0
  121. package/dist/prebuilt/Android-x86_64/include/geos/geom/prep/PreparedPolygonCovers.h +108 -0
  122. package/dist/prebuilt/Android-x86_64/include/geos/geom/prep/PreparedPolygonDistance.h +67 -0
  123. package/dist/prebuilt/Android-x86_64/include/geos/geom/prep/PreparedPolygonIntersects.h +90 -0
  124. package/dist/prebuilt/Android-x86_64/include/geos/geom/prep/PreparedPolygonPredicate.h +141 -0
  125. package/dist/prebuilt/Android-x86_64/include/geos/geom/util/ComponentCoordinateExtracter.h +69 -0
  126. package/dist/prebuilt/Android-x86_64/include/geos/geom/util/CoordinateOperation.h +70 -0
  127. package/dist/prebuilt/Android-x86_64/include/geos/geom/util/Densifier.h +90 -0
  128. package/dist/prebuilt/Android-x86_64/include/geos/geom/util/GeometryCombiner.h +151 -0
  129. package/dist/prebuilt/Android-x86_64/include/geos/geom/util/GeometryEditor.h +127 -0
  130. package/dist/prebuilt/Android-x86_64/include/geos/geom/util/GeometryEditorOperation.h +65 -0
  131. package/dist/prebuilt/Android-x86_64/include/geos/geom/util/GeometryExtracter.h +95 -0
  132. package/dist/prebuilt/Android-x86_64/include/geos/geom/util/GeometryFixer.h +169 -0
  133. package/dist/prebuilt/Android-x86_64/include/geos/geom/util/GeometryLister.h +92 -0
  134. package/dist/prebuilt/Android-x86_64/include/geos/geom/util/GeometryMapper.h +115 -0
  135. package/dist/prebuilt/Android-x86_64/include/geos/geom/util/GeometryTransformer.h +181 -0
  136. package/dist/prebuilt/Android-x86_64/include/geos/geom/util/LinearComponentExtracter.h +65 -0
  137. package/dist/prebuilt/Android-x86_64/include/geos/geom/util/NoOpGeometryOperation.h +52 -0
  138. package/dist/prebuilt/Android-x86_64/include/geos/geom/util/PointExtracter.h +63 -0
  139. package/dist/prebuilt/Android-x86_64/include/geos/geom/util/PolygonExtracter.h +66 -0
  140. package/dist/prebuilt/Android-x86_64/include/geos/geom/util/PolygonalExtracter.h +54 -0
  141. package/dist/prebuilt/Android-x86_64/include/geos/geom/util/ShortCircuitedGeometryVisitor.h +66 -0
  142. package/dist/prebuilt/Android-x86_64/include/geos/geom/util/SineStarFactory.h +122 -0
  143. package/dist/prebuilt/Android-x86_64/include/geos/geom.h +146 -0
  144. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/Depth.h +143 -0
  145. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/DirectedEdge.h +236 -0
  146. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/DirectedEdgeStar.h +164 -0
  147. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/Edge.h +285 -0
  148. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/EdgeEnd.h +187 -0
  149. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/EdgeEndStar.h +217 -0
  150. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/EdgeIntersection.h +149 -0
  151. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/EdgeIntersectionList.h +129 -0
  152. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/EdgeList.h +124 -0
  153. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/EdgeNodingValidator.h +113 -0
  154. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/EdgeRing.h +201 -0
  155. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/GeometryGraph.h +251 -0
  156. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/GraphComponent.h +117 -0
  157. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/Label.h +290 -0
  158. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/Node.h +192 -0
  159. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/NodeFactory.h +51 -0
  160. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/NodeMap.h +143 -0
  161. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/PlanarGraph.h +203 -0
  162. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/TopologyLocation.h +238 -0
  163. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/index/EdgeSetIntersector.h +68 -0
  164. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/index/MonotoneChain.h +72 -0
  165. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/index/MonotoneChainEdge.h +85 -0
  166. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/index/MonotoneChainIndexer.h +71 -0
  167. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/index/SegmentIntersector.h +176 -0
  168. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/index/SimpleEdgeSetIntersector.h +64 -0
  169. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/index/SimpleMCSweepLineIntersector.h +108 -0
  170. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/index/SimpleSweepLineIntersector.h +94 -0
  171. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/index/SweepLineEvent.h +136 -0
  172. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/index/SweepLineEventObj.h +38 -0
  173. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/index/SweepLineSegment.h +57 -0
  174. package/dist/prebuilt/Android-x86_64/include/geos/index/ItemVisitor.h +38 -0
  175. package/dist/prebuilt/Android-x86_64/include/geos/index/SpatialIndex.h +103 -0
  176. package/dist/prebuilt/Android-x86_64/include/geos/index/VertexSequencePackedRtree.h +153 -0
  177. package/dist/prebuilt/Android-x86_64/include/geos/index/bintree/Bintree.h +129 -0
  178. package/dist/prebuilt/Android-x86_64/include/geos/index/bintree/Interval.h +61 -0
  179. package/dist/prebuilt/Android-x86_64/include/geos/index/bintree/Key.h +71 -0
  180. package/dist/prebuilt/Android-x86_64/include/geos/index/bintree/Node.h +74 -0
  181. package/dist/prebuilt/Android-x86_64/include/geos/index/bintree/NodeBase.h +83 -0
  182. package/dist/prebuilt/Android-x86_64/include/geos/index/bintree/Root.h +77 -0
  183. package/dist/prebuilt/Android-x86_64/include/geos/index/chain/MonotoneChain.h +206 -0
  184. package/dist/prebuilt/Android-x86_64/include/geos/index/chain/MonotoneChainBuilder.h +74 -0
  185. package/dist/prebuilt/Android-x86_64/include/geos/index/chain/MonotoneChainOverlapAction.h +86 -0
  186. package/dist/prebuilt/Android-x86_64/include/geos/index/chain/MonotoneChainSelectAction.h +74 -0
  187. package/dist/prebuilt/Android-x86_64/include/geos/index/intervalrtree/IntervalRTreeBranchNode.h +53 -0
  188. package/dist/prebuilt/Android-x86_64/include/geos/index/intervalrtree/IntervalRTreeLeafNode.h +58 -0
  189. package/dist/prebuilt/Android-x86_64/include/geos/index/intervalrtree/IntervalRTreeNode.h +105 -0
  190. package/dist/prebuilt/Android-x86_64/include/geos/index/intervalrtree/SortedPackedIntervalRTree.h +110 -0
  191. package/dist/prebuilt/Android-x86_64/include/geos/index/kdtree/KdNode.h +64 -0
  192. package/dist/prebuilt/Android-x86_64/include/geos/index/kdtree/KdNodeVisitor.h +45 -0
  193. package/dist/prebuilt/Android-x86_64/include/geos/index/kdtree/KdTree.h +191 -0
  194. package/dist/prebuilt/Android-x86_64/include/geos/index/quadtree/IntervalSize.h +62 -0
  195. package/dist/prebuilt/Android-x86_64/include/geos/index/quadtree/Key.h +87 -0
  196. package/dist/prebuilt/Android-x86_64/include/geos/index/quadtree/Node.h +141 -0
  197. package/dist/prebuilt/Android-x86_64/include/geos/index/quadtree/NodeBase.h +161 -0
  198. package/dist/prebuilt/Android-x86_64/include/geos/index/quadtree/Quadtree.h +200 -0
  199. package/dist/prebuilt/Android-x86_64/include/geos/index/quadtree/Root.h +87 -0
  200. package/dist/prebuilt/Android-x86_64/include/geos/index/strtree/AbstractNode.h +131 -0
  201. package/dist/prebuilt/Android-x86_64/include/geos/index/strtree/AbstractSTRtree.h +324 -0
  202. package/dist/prebuilt/Android-x86_64/include/geos/index/strtree/Boundable.h +49 -0
  203. package/dist/prebuilt/Android-x86_64/include/geos/index/strtree/BoundablePair.h +122 -0
  204. package/dist/prebuilt/Android-x86_64/include/geos/index/strtree/EnvelopeUtil.h +33 -0
  205. package/dist/prebuilt/Android-x86_64/include/geos/index/strtree/GeometryItemDistance.h +44 -0
  206. package/dist/prebuilt/Android-x86_64/include/geos/index/strtree/Interval.h +60 -0
  207. package/dist/prebuilt/Android-x86_64/include/geos/index/strtree/ItemBoundable.h +59 -0
  208. package/dist/prebuilt/Android-x86_64/include/geos/index/strtree/ItemDistance.h +49 -0
  209. package/dist/prebuilt/Android-x86_64/include/geos/index/strtree/SIRtree.h +124 -0
  210. package/dist/prebuilt/Android-x86_64/include/geos/index/strtree/STRtree.h +177 -0
  211. package/dist/prebuilt/Android-x86_64/include/geos/index/strtree/SimpleSTRdistance.h +166 -0
  212. package/dist/prebuilt/Android-x86_64/include/geos/index/strtree/SimpleSTRnode.h +141 -0
  213. package/dist/prebuilt/Android-x86_64/include/geos/index/strtree/SimpleSTRtree.h +189 -0
  214. package/dist/prebuilt/Android-x86_64/include/geos/index/strtree/TemplateSTRNode.h +156 -0
  215. package/dist/prebuilt/Android-x86_64/include/geos/index/strtree/TemplateSTRNodePair.h +74 -0
  216. package/dist/prebuilt/Android-x86_64/include/geos/index/strtree/TemplateSTRtree.h +807 -0
  217. package/dist/prebuilt/Android-x86_64/include/geos/index/strtree/TemplateSTRtreeDistance.h +233 -0
  218. package/dist/prebuilt/Android-x86_64/include/geos/index/sweepline/SweepLineEvent.h +95 -0
  219. package/dist/prebuilt/Android-x86_64/include/geos/index/sweepline/SweepLineIndex.h +87 -0
  220. package/dist/prebuilt/Android-x86_64/include/geos/index/sweepline/SweepLineInterval.h +37 -0
  221. package/dist/prebuilt/Android-x86_64/include/geos/index/sweepline/SweepLineOverlapAction.h +44 -0
  222. package/dist/prebuilt/Android-x86_64/include/geos/io/ByteOrderDataInStream.h +125 -0
  223. package/dist/prebuilt/Android-x86_64/include/geos/io/ByteOrderValues.h +61 -0
  224. package/dist/prebuilt/Android-x86_64/include/geos/io/CLocalizer.h +53 -0
  225. package/dist/prebuilt/Android-x86_64/include/geos/io/CheckOrdinatesFilter.h +68 -0
  226. package/dist/prebuilt/Android-x86_64/include/geos/io/GeoJSON.h +154 -0
  227. package/dist/prebuilt/Android-x86_64/include/geos/io/GeoJSONReader.h +125 -0
  228. package/dist/prebuilt/Android-x86_64/include/geos/io/GeoJSONWriter.h +139 -0
  229. package/dist/prebuilt/Android-x86_64/include/geos/io/OrdinateSet.h +119 -0
  230. package/dist/prebuilt/Android-x86_64/include/geos/io/ParseException.h +53 -0
  231. package/dist/prebuilt/Android-x86_64/include/geos/io/StringTokenizer.h +66 -0
  232. package/dist/prebuilt/Android-x86_64/include/geos/io/WKBConstants.h +57 -0
  233. package/dist/prebuilt/Android-x86_64/include/geos/io/WKBReader.h +204 -0
  234. package/dist/prebuilt/Android-x86_64/include/geos/io/WKBStreamReader.h +49 -0
  235. package/dist/prebuilt/Android-x86_64/include/geos/io/WKBWriter.h +260 -0
  236. package/dist/prebuilt/Android-x86_64/include/geos/io/WKTFileReader.h +46 -0
  237. package/dist/prebuilt/Android-x86_64/include/geos/io/WKTReader.h +165 -0
  238. package/dist/prebuilt/Android-x86_64/include/geos/io/WKTStreamReader.h +48 -0
  239. package/dist/prebuilt/Android-x86_64/include/geos/io/WKTWriter.h +342 -0
  240. package/dist/prebuilt/Android-x86_64/include/geos/io/Writer.h +51 -0
  241. package/dist/prebuilt/Android-x86_64/include/geos/linearref/ExtractLineByLocation.h +88 -0
  242. package/dist/prebuilt/Android-x86_64/include/geos/linearref/LengthIndexOfPoint.h +87 -0
  243. package/dist/prebuilt/Android-x86_64/include/geos/linearref/LengthIndexedLine.h +211 -0
  244. package/dist/prebuilt/Android-x86_64/include/geos/linearref/LengthLocationMap.h +134 -0
  245. package/dist/prebuilt/Android-x86_64/include/geos/linearref/LinearGeometryBuilder.h +106 -0
  246. package/dist/prebuilt/Android-x86_64/include/geos/linearref/LinearIterator.h +156 -0
  247. package/dist/prebuilt/Android-x86_64/include/geos/linearref/LinearLocation.h +248 -0
  248. package/dist/prebuilt/Android-x86_64/include/geos/linearref/LocationIndexOfLine.h +72 -0
  249. package/dist/prebuilt/Android-x86_64/include/geos/linearref/LocationIndexOfPoint.h +77 -0
  250. package/dist/prebuilt/Android-x86_64/include/geos/linearref/LocationIndexedLine.h +276 -0
  251. package/dist/prebuilt/Android-x86_64/include/geos/math/DD.h +200 -0
  252. package/dist/prebuilt/Android-x86_64/include/geos/namespaces.h +317 -0
  253. package/dist/prebuilt/Android-x86_64/include/geos/noding/BasicSegmentString.h +89 -0
  254. package/dist/prebuilt/Android-x86_64/include/geos/noding/BoundaryChainNoder.h +171 -0
  255. package/dist/prebuilt/Android-x86_64/include/geos/noding/FastNodingValidator.h +129 -0
  256. package/dist/prebuilt/Android-x86_64/include/geos/noding/FastSegmentSetIntersectionFinder.h +80 -0
  257. package/dist/prebuilt/Android-x86_64/include/geos/noding/GeometryNoder.h +69 -0
  258. package/dist/prebuilt/Android-x86_64/include/geos/noding/IntersectionAdder.h +202 -0
  259. package/dist/prebuilt/Android-x86_64/include/geos/noding/IntersectionFinderAdder.h +110 -0
  260. package/dist/prebuilt/Android-x86_64/include/geos/noding/IteratedNoder.h +120 -0
  261. package/dist/prebuilt/Android-x86_64/include/geos/noding/MCIndexNoder.h +141 -0
  262. package/dist/prebuilt/Android-x86_64/include/geos/noding/MCIndexSegmentSetMutualIntersector.h +146 -0
  263. package/dist/prebuilt/Android-x86_64/include/geos/noding/NodableSegmentString.h +56 -0
  264. package/dist/prebuilt/Android-x86_64/include/geos/noding/NodedSegmentString.h +218 -0
  265. package/dist/prebuilt/Android-x86_64/include/geos/noding/Noder.h +79 -0
  266. package/dist/prebuilt/Android-x86_64/include/geos/noding/NodingIntersectionFinder.h +262 -0
  267. package/dist/prebuilt/Android-x86_64/include/geos/noding/NodingValidator.h +109 -0
  268. package/dist/prebuilt/Android-x86_64/include/geos/noding/Octant.h +73 -0
  269. package/dist/prebuilt/Android-x86_64/include/geos/noding/OrientedCoordinateArray.h +113 -0
  270. package/dist/prebuilt/Android-x86_64/include/geos/noding/ScaledNoder.h +132 -0
  271. package/dist/prebuilt/Android-x86_64/include/geos/noding/SegmentExtractingNoder.h +88 -0
  272. package/dist/prebuilt/Android-x86_64/include/geos/noding/SegmentIntersectionDetector.h +177 -0
  273. package/dist/prebuilt/Android-x86_64/include/geos/noding/SegmentIntersector.h +89 -0
  274. package/dist/prebuilt/Android-x86_64/include/geos/noding/SegmentNode.h +161 -0
  275. package/dist/prebuilt/Android-x86_64/include/geos/noding/SegmentNodeList.h +253 -0
  276. package/dist/prebuilt/Android-x86_64/include/geos/noding/SegmentPointComparator.h +120 -0
  277. package/dist/prebuilt/Android-x86_64/include/geos/noding/SegmentSetMutualIntersector.h +80 -0
  278. package/dist/prebuilt/Android-x86_64/include/geos/noding/SegmentString.h +199 -0
  279. package/dist/prebuilt/Android-x86_64/include/geos/noding/SegmentStringUtil.h +67 -0
  280. package/dist/prebuilt/Android-x86_64/include/geos/noding/SimpleNoder.h +70 -0
  281. package/dist/prebuilt/Android-x86_64/include/geos/noding/SinglePassNoder.h +96 -0
  282. package/dist/prebuilt/Android-x86_64/include/geos/noding/ValidatingNoder.h +74 -0
  283. package/dist/prebuilt/Android-x86_64/include/geos/noding/snap/SnappingIntersectionAdder.h +109 -0
  284. package/dist/prebuilt/Android-x86_64/include/geos/noding/snap/SnappingNoder.h +121 -0
  285. package/dist/prebuilt/Android-x86_64/include/geos/noding/snap/SnappingPointIndex.h +62 -0
  286. package/dist/prebuilt/Android-x86_64/include/geos/noding/snapround/HotPixel.h +171 -0
  287. package/dist/prebuilt/Android-x86_64/include/geos/noding/snapround/HotPixelIndex.h +116 -0
  288. package/dist/prebuilt/Android-x86_64/include/geos/noding/snapround/MCIndexPointSnapper.h +98 -0
  289. package/dist/prebuilt/Android-x86_64/include/geos/noding/snapround/MCIndexSnapRounder.h +157 -0
  290. package/dist/prebuilt/Android-x86_64/include/geos/noding/snapround/SnapRoundingIntersectionAdder.h +126 -0
  291. package/dist/prebuilt/Android-x86_64/include/geos/noding/snapround/SnapRoundingNoder.h +167 -0
  292. package/dist/prebuilt/Android-x86_64/include/geos/operation/BoundaryOp.h +120 -0
  293. package/dist/prebuilt/Android-x86_64/include/geos/operation/GeometryGraphOperation.h +92 -0
  294. package/dist/prebuilt/Android-x86_64/include/geos/operation/buffer/BufferBuilder.h +270 -0
  295. package/dist/prebuilt/Android-x86_64/include/geos/operation/buffer/BufferCurveSetBuilder.h +296 -0
  296. package/dist/prebuilt/Android-x86_64/include/geos/operation/buffer/BufferInputLineSimplifier.h +180 -0
  297. package/dist/prebuilt/Android-x86_64/include/geos/operation/buffer/BufferOp.h +307 -0
  298. package/dist/prebuilt/Android-x86_64/include/geos/operation/buffer/BufferParameters.h +319 -0
  299. package/dist/prebuilt/Android-x86_64/include/geos/operation/buffer/BufferSubgraph.h +202 -0
  300. package/dist/prebuilt/Android-x86_64/include/geos/operation/buffer/OffsetCurve.h +328 -0
  301. package/dist/prebuilt/Android-x86_64/include/geos/operation/buffer/OffsetCurveBuilder.h +257 -0
  302. package/dist/prebuilt/Android-x86_64/include/geos/operation/buffer/OffsetCurveSection.h +111 -0
  303. package/dist/prebuilt/Android-x86_64/include/geos/operation/buffer/OffsetSegmentGenerator.h +390 -0
  304. package/dist/prebuilt/Android-x86_64/include/geos/operation/buffer/OffsetSegmentString.h +215 -0
  305. package/dist/prebuilt/Android-x86_64/include/geos/operation/buffer/RightmostEdgeFinder.h +105 -0
  306. package/dist/prebuilt/Android-x86_64/include/geos/operation/buffer/SegmentMCIndex.h +56 -0
  307. package/dist/prebuilt/Android-x86_64/include/geos/operation/buffer/SubgraphDepthLocater.h +120 -0
  308. package/dist/prebuilt/Android-x86_64/include/geos/operation/cluster/AbstractClusterFinder.h +136 -0
  309. package/dist/prebuilt/Android-x86_64/include/geos/operation/cluster/Clusters.h +72 -0
  310. package/dist/prebuilt/Android-x86_64/include/geos/operation/cluster/DBSCANClusterFinder.h +59 -0
  311. package/dist/prebuilt/Android-x86_64/include/geos/operation/cluster/DisjointOperation.h +73 -0
  312. package/dist/prebuilt/Android-x86_64/include/geos/operation/cluster/EnvelopeDistanceClusterFinder.h +53 -0
  313. package/dist/prebuilt/Android-x86_64/include/geos/operation/cluster/EnvelopeIntersectsClusterFinder.h +44 -0
  314. package/dist/prebuilt/Android-x86_64/include/geos/operation/cluster/GeometryDistanceClusterFinder.h +59 -0
  315. package/dist/prebuilt/Android-x86_64/include/geos/operation/cluster/GeometryFlattener.h +46 -0
  316. package/dist/prebuilt/Android-x86_64/include/geos/operation/cluster/GeometryIntersectsClusterFinder.h +53 -0
  317. package/dist/prebuilt/Android-x86_64/include/geos/operation/cluster/UnionFind.h +137 -0
  318. package/dist/prebuilt/Android-x86_64/include/geos/operation/distance/ConnectedElementLocationFilter.h +76 -0
  319. package/dist/prebuilt/Android-x86_64/include/geos/operation/distance/ConnectedElementPointFilter.h +73 -0
  320. package/dist/prebuilt/Android-x86_64/include/geos/operation/distance/DistanceOp.h +228 -0
  321. package/dist/prebuilt/Android-x86_64/include/geos/operation/distance/FacetSequence.h +84 -0
  322. package/dist/prebuilt/Android-x86_64/include/geos/operation/distance/FacetSequenceTreeBuilder.h +69 -0
  323. package/dist/prebuilt/Android-x86_64/include/geos/operation/distance/GeometryLocation.h +126 -0
  324. package/dist/prebuilt/Android-x86_64/include/geos/operation/distance/IndexedFacetDistance.h +124 -0
  325. package/dist/prebuilt/Android-x86_64/include/geos/operation/intersection/Rectangle.h +236 -0
  326. package/dist/prebuilt/Android-x86_64/include/geos/operation/intersection/RectangleIntersection.h +174 -0
  327. package/dist/prebuilt/Android-x86_64/include/geos/operation/intersection/RectangleIntersectionBuilder.h +159 -0
  328. package/dist/prebuilt/Android-x86_64/include/geos/operation/linemerge/EdgeString.h +88 -0
  329. package/dist/prebuilt/Android-x86_64/include/geos/operation/linemerge/LineMergeDirectedEdge.h +78 -0
  330. package/dist/prebuilt/Android-x86_64/include/geos/operation/linemerge/LineMergeEdge.h +62 -0
  331. package/dist/prebuilt/Android-x86_64/include/geos/operation/linemerge/LineMergeGraph.h +91 -0
  332. package/dist/prebuilt/Android-x86_64/include/geos/operation/linemerge/LineMerger.h +149 -0
  333. package/dist/prebuilt/Android-x86_64/include/geos/operation/linemerge/LineSequencer.h +295 -0
  334. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlay/MaximalEdgeRing.h +105 -0
  335. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlay/MinimalEdgeRing.h +80 -0
  336. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlay/OverlayNodeFactory.h +56 -0
  337. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlay/PolygonBuilder.h +210 -0
  338. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlay/snap/GeometrySnapper.h +154 -0
  339. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlay/snap/LineStringSnapper.h +165 -0
  340. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlay/snap/SnapOverlayOp.h +134 -0
  341. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlay/validate/FuzzyPointLocator.h +97 -0
  342. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlay/validate/OffsetPointGenerator.h +87 -0
  343. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlay/validate/OverlayResultValidator.h +131 -0
  344. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/CoverageUnion.h +100 -0
  345. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/Edge.h +345 -0
  346. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/EdgeKey.h +120 -0
  347. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/EdgeMerger.h +81 -0
  348. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/EdgeNodingBuilder.h +255 -0
  349. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/EdgeSourceInfo.h +65 -0
  350. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/ElevationModel.h +170 -0
  351. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/IndexedPointOnLineLocator.h +64 -0
  352. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/InputGeometry.h +103 -0
  353. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/IntersectionPointBuilder.h +113 -0
  354. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/LineBuilder.h +189 -0
  355. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/LineLimiter.h +91 -0
  356. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/MaximalEdgeRing.h +134 -0
  357. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/OverlayEdge.h +279 -0
  358. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/OverlayEdgeRing.h +153 -0
  359. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/OverlayGraph.h +143 -0
  360. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/OverlayLabel.h +404 -0
  361. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/OverlayLabeller.h +207 -0
  362. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/OverlayMixedPoints.h +142 -0
  363. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/OverlayNG.h +410 -0
  364. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/OverlayNGRobust.h +174 -0
  365. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/OverlayPoints.h +120 -0
  366. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/OverlayUtil.h +213 -0
  367. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/PolygonBuilder.h +151 -0
  368. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/PrecisionReducer.h +75 -0
  369. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/PrecisionUtil.h +245 -0
  370. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/RingClipper.h +112 -0
  371. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/RobustClipEnvelopeComputer.h +84 -0
  372. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/UnaryUnionNG.h +95 -0
  373. package/dist/prebuilt/Android-x86_64/include/geos/operation/polygonize/BuildArea.h +75 -0
  374. package/dist/prebuilt/Android-x86_64/include/geos/operation/polygonize/EdgeRing.h +350 -0
  375. package/dist/prebuilt/Android-x86_64/include/geos/operation/polygonize/HoleAssigner.h +65 -0
  376. package/dist/prebuilt/Android-x86_64/include/geos/operation/polygonize/PolygonizeDirectedEdge.h +127 -0
  377. package/dist/prebuilt/Android-x86_64/include/geos/operation/polygonize/PolygonizeEdge.h +58 -0
  378. package/dist/prebuilt/Android-x86_64/include/geos/operation/polygonize/PolygonizeGraph.h +214 -0
  379. package/dist/prebuilt/Android-x86_64/include/geos/operation/polygonize/Polygonizer.h +260 -0
  380. package/dist/prebuilt/Android-x86_64/include/geos/operation/predicate/RectangleContains.h +119 -0
  381. package/dist/prebuilt/Android-x86_64/include/geos/operation/predicate/RectangleIntersects.h +98 -0
  382. package/dist/prebuilt/Android-x86_64/include/geos/operation/predicate/SegmentIntersectionTester.h +91 -0
  383. package/dist/prebuilt/Android-x86_64/include/geos/operation/relate/EdgeEndBuilder.h +70 -0
  384. package/dist/prebuilt/Android-x86_64/include/geos/operation/relate/EdgeEndBundle.h +104 -0
  385. package/dist/prebuilt/Android-x86_64/include/geos/operation/relate/EdgeEndBundleStar.h +65 -0
  386. package/dist/prebuilt/Android-x86_64/include/geos/operation/relate/RelateComputer.h +185 -0
  387. package/dist/prebuilt/Android-x86_64/include/geos/operation/relate/RelateNode.h +67 -0
  388. package/dist/prebuilt/Android-x86_64/include/geos/operation/relate/RelateNodeFactory.h +55 -0
  389. package/dist/prebuilt/Android-x86_64/include/geos/operation/relate/RelateNodeGraph.h +98 -0
  390. package/dist/prebuilt/Android-x86_64/include/geos/operation/relate/RelateOp.h +134 -0
  391. package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/AdjacentEdgeLocator.h +124 -0
  392. package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/BasicPredicate.h +105 -0
  393. package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/DimensionLocation.h +60 -0
  394. package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/EdgeSegmentIntersector.h +80 -0
  395. package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/EdgeSegmentOverlapAction.h +75 -0
  396. package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/EdgeSetIntersector.h +94 -0
  397. package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/IMPatternMatcher.h +87 -0
  398. package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/IMPredicate.h +131 -0
  399. package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/IntersectionMatrixPattern.h +65 -0
  400. package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/LineStringExtracter.h +77 -0
  401. package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/LinearBoundary.h +88 -0
  402. package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/NodeSection.h +166 -0
  403. package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/NodeSections.h +102 -0
  404. package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/PolygonNodeConverter.h +112 -0
  405. package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/RelateEdge.h +176 -0
  406. package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/RelateGeometry.h +272 -0
  407. package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/RelateMatrixPredicate.h +85 -0
  408. package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/RelateNG.h +295 -0
  409. package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/RelateNode.h +146 -0
  410. package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/RelatePointLocator.h +213 -0
  411. package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/RelatePredicate.h +652 -0
  412. package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/RelateSegmentString.h +161 -0
  413. package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/TopologyComputer.h +236 -0
  414. package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/TopologyPredicate.h +206 -0
  415. package/dist/prebuilt/Android-x86_64/include/geos/operation/sharedpaths/SharedPathsOp.h +161 -0
  416. package/dist/prebuilt/Android-x86_64/include/geos/operation/union/CascadedPolygonUnion.h +246 -0
  417. package/dist/prebuilt/Android-x86_64/include/geos/operation/union/CoverageUnion.h +65 -0
  418. package/dist/prebuilt/Android-x86_64/include/geos/operation/union/DisjointSubsetUnion.h +49 -0
  419. package/dist/prebuilt/Android-x86_64/include/geos/operation/union/OverlapUnion.h +139 -0
  420. package/dist/prebuilt/Android-x86_64/include/geos/operation/union/PointGeometryUnion.h +72 -0
  421. package/dist/prebuilt/Android-x86_64/include/geos/operation/union/UnaryUnionOp.h +243 -0
  422. package/dist/prebuilt/Android-x86_64/include/geos/operation/union/UnionStrategy.h +73 -0
  423. package/dist/prebuilt/Android-x86_64/include/geos/operation/valid/ConsistentAreaTester.h +137 -0
  424. package/dist/prebuilt/Android-x86_64/include/geos/operation/valid/IndexedNestedHoleTester.h +83 -0
  425. package/dist/prebuilt/Android-x86_64/include/geos/operation/valid/IndexedNestedPolygonTester.h +111 -0
  426. package/dist/prebuilt/Android-x86_64/include/geos/operation/valid/IsSimpleOp.h +299 -0
  427. package/dist/prebuilt/Android-x86_64/include/geos/operation/valid/IsValidOp.h +307 -0
  428. package/dist/prebuilt/Android-x86_64/include/geos/operation/valid/MakeValid.h +76 -0
  429. package/dist/prebuilt/Android-x86_64/include/geos/operation/valid/PolygonIntersectionAnalyzer.h +125 -0
  430. package/dist/prebuilt/Android-x86_64/include/geos/operation/valid/PolygonRing.h +231 -0
  431. package/dist/prebuilt/Android-x86_64/include/geos/operation/valid/PolygonRingSelfNode.h +84 -0
  432. package/dist/prebuilt/Android-x86_64/include/geos/operation/valid/PolygonRingTouch.h +65 -0
  433. package/dist/prebuilt/Android-x86_64/include/geos/operation/valid/PolygonTopologyAnalyzer.h +211 -0
  434. package/dist/prebuilt/Android-x86_64/include/geos/operation/valid/RepeatedPointRemover.h +60 -0
  435. package/dist/prebuilt/Android-x86_64/include/geos/operation/valid/RepeatedPointTester.h +66 -0
  436. package/dist/prebuilt/Android-x86_64/include/geos/operation/valid/TopologyValidationError.h +76 -0
  437. package/dist/prebuilt/Android-x86_64/include/geos/planargraph/DirectedEdge.h +237 -0
  438. package/dist/prebuilt/Android-x86_64/include/geos/planargraph/DirectedEdgeStar.h +149 -0
  439. package/dist/prebuilt/Android-x86_64/include/geos/planargraph/Edge.h +141 -0
  440. package/dist/prebuilt/Android-x86_64/include/geos/planargraph/GraphComponent.h +182 -0
  441. package/dist/prebuilt/Android-x86_64/include/geos/planargraph/Node.h +158 -0
  442. package/dist/prebuilt/Android-x86_64/include/geos/planargraph/NodeMap.h +135 -0
  443. package/dist/prebuilt/Android-x86_64/include/geos/planargraph/PlanarGraph.h +293 -0
  444. package/dist/prebuilt/Android-x86_64/include/geos/planargraph/Subgraph.h +181 -0
  445. package/dist/prebuilt/Android-x86_64/include/geos/planargraph/algorithm/ConnectedSubgraphFinder.h +92 -0
  446. package/dist/prebuilt/Android-x86_64/include/geos/precision/CommonBits.h +97 -0
  447. package/dist/prebuilt/Android-x86_64/include/geos/precision/CommonBitsOp.h +172 -0
  448. package/dist/prebuilt/Android-x86_64/include/geos/precision/CommonBitsRemover.h +92 -0
  449. package/dist/prebuilt/Android-x86_64/include/geos/precision/EnhancedPrecisionOp.h +105 -0
  450. package/dist/prebuilt/Android-x86_64/include/geos/precision/GeometryPrecisionReducer.h +202 -0
  451. package/dist/prebuilt/Android-x86_64/include/geos/precision/MinimumClearance.h +57 -0
  452. package/dist/prebuilt/Android-x86_64/include/geos/precision/PointwisePrecisionReducerTransformer.h +74 -0
  453. package/dist/prebuilt/Android-x86_64/include/geos/precision/PrecisionReducerCoordinateOperation.h +65 -0
  454. package/dist/prebuilt/Android-x86_64/include/geos/precision/PrecisionReducerTransformer.h +95 -0
  455. package/dist/prebuilt/Android-x86_64/include/geos/precision/SimpleGeometryPrecisionReducer.h +88 -0
  456. package/dist/prebuilt/Android-x86_64/include/geos/profiler.h +185 -0
  457. package/dist/prebuilt/Android-x86_64/include/geos/shape/fractal/HilbertCode.h +128 -0
  458. package/dist/prebuilt/Android-x86_64/include/geos/shape/fractal/HilbertEncoder.h +96 -0
  459. package/dist/prebuilt/Android-x86_64/include/geos/shape/fractal/MortonCode.h +140 -0
  460. package/dist/prebuilt/Android-x86_64/include/geos/simplify/ComponentJumpChecker.h +120 -0
  461. package/dist/prebuilt/Android-x86_64/include/geos/simplify/DouglasPeuckerLineSimplifier.h +103 -0
  462. package/dist/prebuilt/Android-x86_64/include/geos/simplify/DouglasPeuckerSimplifier.h +84 -0
  463. package/dist/prebuilt/Android-x86_64/include/geos/simplify/LineSegmentIndex.h +87 -0
  464. package/dist/prebuilt/Android-x86_64/include/geos/simplify/LinkedLine.h +84 -0
  465. package/dist/prebuilt/Android-x86_64/include/geos/simplify/LinkedRing.h +69 -0
  466. package/dist/prebuilt/Android-x86_64/include/geos/simplify/PolygonHullSimplifier.h +232 -0
  467. package/dist/prebuilt/Android-x86_64/include/geos/simplify/RingHull.h +209 -0
  468. package/dist/prebuilt/Android-x86_64/include/geos/simplify/RingHullIndex.h +55 -0
  469. package/dist/prebuilt/Android-x86_64/include/geos/simplify/TaggedLineSegment.h +83 -0
  470. package/dist/prebuilt/Android-x86_64/include/geos/simplify/TaggedLineString.h +145 -0
  471. package/dist/prebuilt/Android-x86_64/include/geos/simplify/TaggedLineStringSimplifier.h +178 -0
  472. package/dist/prebuilt/Android-x86_64/include/geos/simplify/TaggedLinesSimplifier.h +88 -0
  473. package/dist/prebuilt/Android-x86_64/include/geos/simplify/TopologyPreservingSimplifier.h +93 -0
  474. package/dist/prebuilt/Android-x86_64/include/geos/triangulate/DelaunayTriangulationBuilder.h +166 -0
  475. package/dist/prebuilt/Android-x86_64/include/geos/triangulate/IncrementalDelaunayTriangulator.h +106 -0
  476. package/dist/prebuilt/Android-x86_64/include/geos/triangulate/VoronoiDiagramBuilder.h +157 -0
  477. package/dist/prebuilt/Android-x86_64/include/geos/triangulate/polygon/ConstrainedDelaunayTriangulator.h +101 -0
  478. package/dist/prebuilt/Android-x86_64/include/geos/triangulate/polygon/PolygonEarClipper.h +218 -0
  479. package/dist/prebuilt/Android-x86_64/include/geos/triangulate/polygon/PolygonHoleJoiner.h +267 -0
  480. package/dist/prebuilt/Android-x86_64/include/geos/triangulate/polygon/PolygonNoder.h +101 -0
  481. package/dist/prebuilt/Android-x86_64/include/geos/triangulate/polygon/PolygonTriangulator.h +105 -0
  482. package/dist/prebuilt/Android-x86_64/include/geos/triangulate/polygon/TriDelaunayImprover.h +147 -0
  483. package/dist/prebuilt/Android-x86_64/include/geos/triangulate/quadedge/LastFoundQuadEdgeLocator.h +63 -0
  484. package/dist/prebuilt/Android-x86_64/include/geos/triangulate/quadedge/LocateFailureException.h +37 -0
  485. package/dist/prebuilt/Android-x86_64/include/geos/triangulate/quadedge/QuadEdge.h +443 -0
  486. package/dist/prebuilt/Android-x86_64/include/geos/triangulate/quadedge/QuadEdgeLocator.h +48 -0
  487. package/dist/prebuilt/Android-x86_64/include/geos/triangulate/quadedge/QuadEdgeQuartet.h +64 -0
  488. package/dist/prebuilt/Android-x86_64/include/geos/triangulate/quadedge/QuadEdgeSubdivision.h +514 -0
  489. package/dist/prebuilt/Android-x86_64/include/geos/triangulate/quadedge/TrianglePredicate.h +124 -0
  490. package/dist/prebuilt/Android-x86_64/include/geos/triangulate/quadedge/TriangleVisitor.h +48 -0
  491. package/dist/prebuilt/Android-x86_64/include/geos/triangulate/quadedge/Vertex.h +312 -0
  492. package/dist/prebuilt/Android-x86_64/include/geos/triangulate/tri/Tri.h +186 -0
  493. package/dist/prebuilt/Android-x86_64/include/geos/triangulate/tri/TriEdge.h +80 -0
  494. package/dist/prebuilt/Android-x86_64/include/geos/triangulate/tri/TriList.h +182 -0
  495. package/dist/prebuilt/Android-x86_64/include/geos/triangulate/tri/TriangulationBuilder.h +86 -0
  496. package/dist/prebuilt/Android-x86_64/include/geos/unload.h +33 -0
  497. package/dist/prebuilt/Android-x86_64/include/geos/util/Assert.h +66 -0
  498. package/dist/prebuilt/Android-x86_64/include/geos/util/AssertionFailedException.h +48 -0
  499. package/dist/prebuilt/Android-x86_64/include/geos/util/CoordinateArrayFilter.h +85 -0
  500. package/dist/prebuilt/Android-x86_64/include/geos/util/GEOSException.h +64 -0
  501. package/dist/prebuilt/Android-x86_64/include/geos/util/GeometricShapeFactory.h +198 -0
  502. package/dist/prebuilt/Android-x86_64/include/geos/util/IllegalArgumentException.h +50 -0
  503. package/dist/prebuilt/Android-x86_64/include/geos/util/IllegalStateException.h +42 -0
  504. package/dist/prebuilt/Android-x86_64/include/geos/util/Interrupt.h +71 -0
  505. package/dist/prebuilt/Android-x86_64/include/geos/util/Machine.h +26 -0
  506. package/dist/prebuilt/Android-x86_64/include/geos/util/TopologyException.h +64 -0
  507. package/dist/prebuilt/Android-x86_64/include/geos/util/UniqueCoordinateArrayFilter.h +114 -0
  508. package/dist/prebuilt/Android-x86_64/include/geos/util/UnsupportedOperationException.h +52 -0
  509. package/dist/prebuilt/Android-x86_64/include/geos/util/math.h +45 -0
  510. package/dist/prebuilt/Android-x86_64/include/geos/util/string.h +31 -0
  511. package/dist/prebuilt/Android-x86_64/include/geos/util.h +86 -0
  512. package/dist/prebuilt/Android-x86_64/include/geos/vend/include_nlohmann_json.hpp +24 -0
  513. package/dist/prebuilt/Android-x86_64/include/geos/vend/json.hpp +25597 -0
  514. package/dist/prebuilt/Android-x86_64/include/geos/version.h +37 -0
  515. package/dist/prebuilt/Android-x86_64/include/geos.h +40 -0
  516. package/dist/prebuilt/Android-x86_64/include/geos_c.h +6121 -0
  517. package/dist/prebuilt/Android-x86_64/lib/cmake/GEOS/geos-config-version.cmake +43 -0
  518. package/dist/prebuilt/Android-x86_64/lib/cmake/GEOS/geos-config.cmake +11 -0
  519. package/dist/prebuilt/Android-x86_64/lib/cmake/GEOS/geos-targets-release.cmake +30 -0
  520. package/dist/prebuilt/Android-x86_64/lib/cmake/GEOS/geos-targets.cmake +124 -0
  521. package/dist/prebuilt/Android-x86_64/lib/libgeos.so +0 -0
  522. package/dist/prebuilt/Android-x86_64/lib/libgeos_c.so +0 -0
  523. package/dist/prebuilt/Android-x86_64/lib/pkgconfig/geos.pc +12 -0
  524. package/dist/prebuilt/iOS-iphoneos/bin/geosop.app/Info.plist +0 -0
  525. package/dist/prebuilt/iOS-iphoneos/bin/geosop.app/_CodeSignature/CodeResources +1 -1
  526. package/dist/prebuilt/iOS-iphoneos/bin/geosop.app/geosop +0 -0
  527. package/dist/prebuilt/iOS-iphoneos/lib/libgeos.a +0 -0
  528. package/dist/prebuilt/iOS-iphoneos/lib/libgeos_c.a +0 -0
  529. package/dist/prebuilt/iOS-iphonesimulator/bin/geosop.app/Info.plist +0 -0
  530. package/dist/prebuilt/iOS-iphonesimulator/bin/geosop.app/_CodeSignature/CodeResources +1 -1
  531. package/dist/prebuilt/iOS-iphonesimulator/bin/geosop.app/geosop +0 -0
  532. package/dist/prebuilt/iOS-iphonesimulator/lib/libgeos.a +0 -0
  533. package/dist/prebuilt/iOS-iphonesimulator/lib/libgeos_c.a +0 -0
  534. package/geos.xcframework/Info.plist +5 -5
  535. package/geos.xcframework/ios-arm64_arm64e/libgeos.a +0 -0
  536. package/geos.xcframework/ios-arm64_arm64e_x86_64-simulator/libgeos.a +0 -0
  537. package/geos_c.xcframework/ios-arm64_arm64e/libgeos_c.a +0 -0
  538. package/geos_c.xcframework/ios-arm64_arm64e_x86_64-simulator/libgeos_c.a +0 -0
  539. package/package.json +2 -2
@@ -0,0 +1,75 @@
1
+ /**********************************************************************
2
+ *
3
+ * GEOS - Geometry Engine Open Source
4
+ * http://geos.osgeo.org
5
+ *
6
+ * Copyright (C) 2020 Paul Ramsey <pramsey@cleverelephant.ca>
7
+ *
8
+ * This is free software; you can redistribute and/or modify it under
9
+ * the terms of the GNU Lesser General Public Licence as published
10
+ * by the Free Software Foundation.
11
+ * See the COPYING file for more information.
12
+ *
13
+ **********************************************************************/
14
+
15
+ #pragma once
16
+
17
+ #include <geos/export.h>
18
+
19
+ #include <vector>
20
+ #include <memory>
21
+ #include <map>
22
+
23
+
24
+ // Forward declarations
25
+ namespace geos {
26
+ namespace geom {
27
+ class PrecisionModel;
28
+ class Geometry;
29
+ }
30
+ namespace operation {
31
+ }
32
+ }
33
+
34
+ namespace geos { // geos.
35
+ namespace operation { // geos.operation
36
+ namespace overlayng { // geos.operation.overlayng
37
+
38
+ using namespace geos::geom;
39
+
40
+ /**
41
+ * Reduces the precision of a geometry by rounding it to the
42
+ * supplied {@link geom::PrecisionModel}.
43
+ *
44
+ * The output is always a valid geometry. This implies that input components
45
+ * may be merged if they are closer than the grid precision.
46
+ * if merging is not desired, then the individual geometry components
47
+ * should be processed separately.
48
+ *
49
+ * The output is fully noded.
50
+ * This provides an effective way to node / snap-round a collection of {@link geom::LineString}s.
51
+ */
52
+ class GEOS_DLL PrecisionReducer {
53
+
54
+ private:
55
+
56
+ // Members
57
+
58
+ // Methods
59
+
60
+
61
+ public:
62
+
63
+ PrecisionReducer() {};
64
+
65
+ static std::unique_ptr<Geometry> reducePrecision(const Geometry* geom, const PrecisionModel* pm, bool replacePrecisionModel = false);
66
+
67
+
68
+
69
+ };
70
+
71
+
72
+ } // namespace geos.operation.overlayng
73
+ } // namespace geos.operation
74
+ } // namespace geos
75
+
@@ -0,0 +1,245 @@
1
+ /**********************************************************************
2
+ *
3
+ * GEOS - Geometry Engine Open Source
4
+ * http://geos.osgeo.org
5
+ *
6
+ * Copyright (C) 2020 Paul Ramsey <pramsey@cleverelephant.ca>
7
+ *
8
+ * This is free software; you can redistribute and/or modify it under
9
+ * the terms of the GNU Lesser General Public Licence as published
10
+ * by the Free Software Foundation.
11
+ * See the COPYING file for more information.
12
+ *
13
+ **********************************************************************/
14
+
15
+ #pragma once
16
+
17
+ #include <geos/export.h>
18
+
19
+ #include <geos/geom/CoordinateFilter.h>
20
+ #include <geos/geom/Coordinate.h>
21
+
22
+ #include <vector>
23
+ #include <map>
24
+
25
+
26
+ // Forward declarations
27
+ namespace geos {
28
+ namespace geom {
29
+ class Geometry;
30
+ class Envelope;
31
+ class PrecisionModel;
32
+ }
33
+ namespace operation {
34
+ }
35
+ }
36
+
37
+ namespace geos { // geos.
38
+ namespace operation { // geos.operation
39
+ namespace overlayng { // geos.operation.overlayng
40
+
41
+ using namespace geos::geom;
42
+
43
+ /**
44
+ * Unions a collection of geometries in an
45
+ * efficient way, using {@link OverlayNG}
46
+ * to ensure robust computation.
47
+ * @author Martin Davis
48
+ */
49
+ class GEOS_DLL PrecisionUtil {
50
+
51
+ private:
52
+
53
+ static double robustScale(double inherentScale, double safeScale);
54
+
55
+ /**
56
+ * Determines the maximum magnitude (absolute value) of the bounds of an
57
+ * of an envelope.
58
+ * This is equal to the largest ordinate value
59
+ * which must be accommodated by a scale factor.
60
+ *
61
+ */
62
+ static double maxBoundMagnitude(const Envelope* env);
63
+
64
+ /**
65
+ * Computes the scale factor which will
66
+ * produce a given number of digits of precision (significant digits)
67
+ * when used to round the given number.
68
+ *
69
+ * For example: to provide 5 decimal digits of precision
70
+ * for the number 123.456 the precision scale factor is 100;
71
+ * for 3 digits of precision the scale factor is 1;
72
+ * for 2 digits of precision the scale factor is 0.1.
73
+ *
74
+ * Rounding to the scale factor can be performed with {@link PrecisionModel#round}
75
+ *
76
+ * @see PrecisionModel.round
77
+ */
78
+ static double precisionScale(double value, int precisionDigits);
79
+
80
+
81
+
82
+ public:
83
+
84
+ static constexpr int MAX_ROBUST_DP_DIGITS = 14;
85
+
86
+ PrecisionUtil() {};
87
+
88
+ /**
89
+ * Determines a precision model to
90
+ * use for robust overlay operations.
91
+ * The precision scale factor is chosen to maximize
92
+ * output precision while avoiding round-off issues.
93
+ *
94
+ * NOTE: this is a heuristic determination, so is not guaranteed to
95
+ * eliminate precision issues.
96
+ *
97
+ * WARNING: this is quite slow.
98
+ */
99
+ static PrecisionModel robustPM(const Geometry* a, const Geometry* b);
100
+
101
+ /**
102
+ * Determines a precision model to
103
+ * use for robust overlay operations for one geometry.
104
+ * The precision scale factor is chosen to maximize
105
+ * output precision while avoiding round-off issues.
106
+ *
107
+ * NOTE: this is a heuristic determination, so is not guaranteed to
108
+ * eliminate precision issues.
109
+ *
110
+ * WARNING: this is quite slow.
111
+ */
112
+ static PrecisionModel robustPM(const Geometry* a);
113
+
114
+ /**
115
+ * Determines a scale factor which maximizes
116
+ * the digits of precision and is
117
+ * safe to use for overlay operations.
118
+ * The robust scale is the minimum of the
119
+ * inherent scale and the safe scale factors.
120
+ */
121
+ static double robustScale(const Geometry* a, const Geometry* b);
122
+
123
+ /**
124
+ * Determines a scale factor which maximizes
125
+ * the digits of precision and is
126
+ * safe to use for overlay operations.
127
+ * The robust scale is the minimum of the
128
+ * inherent scale and the safe scale factors.
129
+ */
130
+ static double robustScale(const Geometry* a);
131
+
132
+ /**
133
+ * Computes a safe scale factor for a numeric value.
134
+ * A safe scale factor ensures that rounded
135
+ * number has no more than MAX_PRECISION_DIGITS
136
+ * digits of precision.
137
+ */
138
+ static double safeScale(double value);
139
+
140
+ /**
141
+ * Computes a safe scale factor for a geometry.
142
+ * A safe scale factor ensures that the rounded
143
+ * ordinates have no more than MAX_PRECISION_DIGITS
144
+ * digits of precision.
145
+ */
146
+ static double safeScale(const Geometry* geom);
147
+
148
+ /**
149
+ * Computes a safe scale factor for two geometries.
150
+ * A safe scale factor ensures that the rounded
151
+ * ordinates have no more than MAX_PRECISION_DIGITS
152
+ * digits of precision.
153
+ */
154
+ static double safeScale(const Geometry* a, const Geometry* b);
155
+
156
+ /**
157
+ * Computes the inherent scale of a number.
158
+ * The inherent scale is the scale factor for rounding
159
+ * which preserves all digits of precision
160
+ * (significant digits)
161
+ * present in the numeric value.
162
+ * In other words, it is the scale factor which does not
163
+ * change the numeric value when rounded:
164
+ *
165
+ * num = round( num, inherentScale(num) )
166
+ */
167
+ static double inherentScale(double value);
168
+
169
+ /**
170
+ * Computes the inherent scale of a geometry.
171
+ * The inherent scale is the scale factor for rounding
172
+ * which preserves <b>all</b> digits of precision
173
+ * (significant digits)
174
+ * present in the geometry ordinates.
175
+ *
176
+ * This is the maximum inherent scale
177
+ * of all ordinate values in the geometry.
178
+ */
179
+ static double inherentScale(const Geometry* geom);
180
+
181
+ /**
182
+ * Computes the inherent scale of two geometries.
183
+ * The inherent scale is the scale factor for rounding
184
+ * which preserves <b>all</b> digits of precision
185
+ * (significant digits)
186
+ * present in the geometry ordinates.
187
+ *
188
+ * This is the maximum inherent scale
189
+ * of all ordinate values in the geometries.
190
+ */
191
+ static double inherentScale(const Geometry* a, const Geometry* b);
192
+
193
+ /**
194
+ * Determines the
195
+ * number of decimal places represented in a double-precision
196
+ * number (as determined by Java).
197
+ * This uses the Java double-precision print routine
198
+ * to determine the number of decimal places,
199
+ * This is likely not optimal for performance,
200
+ * but should be accurate and portable.
201
+ */
202
+ static int numberOfDecimals(double value);
203
+
204
+ /**
205
+ * Applies the inherent scale calculation
206
+ * to every ordinate in a geometry.
207
+ */
208
+ class GEOS_DLL InherentScaleFilter: public CoordinateFilter {
209
+
210
+ private:
211
+
212
+ double scale;
213
+
214
+ void updateScaleMax(double value) {
215
+ double scaleVal = PrecisionUtil::inherentScale(value);
216
+ if (scaleVal > scale) {
217
+ scale = scaleVal;
218
+ }
219
+ }
220
+
221
+ public:
222
+
223
+ InherentScaleFilter()
224
+ : scale(0.0)
225
+ {}
226
+
227
+ void filter_ro(const geom::Coordinate* coord) override
228
+ {
229
+ updateScaleMax(coord->x);
230
+ updateScaleMax(coord->y);
231
+ }
232
+
233
+ double getScale() const {
234
+ return scale;
235
+ }
236
+ };
237
+
238
+
239
+ };
240
+
241
+
242
+ } // namespace geos.operation.overlayng
243
+ } // namespace geos.operation
244
+ } // namespace geos
245
+
@@ -0,0 +1,112 @@
1
+ /**********************************************************************
2
+ *
3
+ * GEOS - Geometry Engine Open Source
4
+ * http://geos.osgeo.org
5
+ *
6
+ * Copyright (C) 2020 Paul Ramsey <pramsey@cleverelephant.ca>
7
+ *
8
+ * This is free software; you can redistribute and/or modify it under
9
+ * the terms of the GNU Lesser General Public Licence as published
10
+ * by the Free Software Foundation.
11
+ * See the COPYING file for more information.
12
+ *
13
+ **********************************************************************/
14
+
15
+ #pragma once
16
+
17
+ #include <geos/export.h>
18
+
19
+ #include <geos/geom/Envelope.h>
20
+ #include <geos/geom/CoordinateSequence.h>
21
+
22
+ // Forward declarations
23
+ namespace geos {
24
+ namespace geom {
25
+ class Coordinate;
26
+ class CoordinateSequence;
27
+ }
28
+ }
29
+
30
+ using namespace geos::geom;
31
+
32
+ namespace geos { // geos.
33
+ namespace operation { // geos.operation
34
+ namespace overlayng { // geos.operation.overlayng
35
+
36
+ /**
37
+ * Clips rings of points to a rectangle.
38
+ * Uses a variant of Cohen-Sutherland clipping.
39
+ *
40
+ * In general the output is not topologically valid.
41
+ * In particular, the output may contain coincident non-noded line segments
42
+ * along the clip rectangle sides.
43
+ * However, the output is sufficiently well-structured
44
+ * that it can be used as input to the {@link OverlayNG} algorithm
45
+ * (which is able to process coincident linework due
46
+ * to the need to handle topology collapse under precision reduction).
47
+ *
48
+ * Because of the likelihood of creating
49
+ * extraneous line segments along the clipping rectangle sides,
50
+ * this class is not suitable for clipping linestrings.
51
+ *
52
+ * The clipping envelope should be generated using {@link RobustClipEnvelopeComputer},
53
+ * to ensure that intersecting line segments are not perturbed
54
+ * by clipping.
55
+ * This is required to ensure that the overlay of the
56
+ * clipped geometry is robust and correct (i.e. the same as
57
+ * if clipping was not used).
58
+ *
59
+ * @see LineLimiter
60
+ *
61
+ * @author Martin Davis
62
+ *
63
+ */
64
+ class GEOS_DLL RingClipper {
65
+
66
+ private:
67
+
68
+ // Constants
69
+ static constexpr int BOX_LEFT = 3;
70
+ static constexpr int BOX_TOP = 2;
71
+ static constexpr int BOX_RIGHT = 1;
72
+ static constexpr int BOX_BOTTOM = 0;
73
+
74
+ // Members
75
+ const Envelope clipEnv;
76
+
77
+ // Methods
78
+
79
+ /**
80
+ * Clips line to the axis-parallel line defined by a single box edge.
81
+ */
82
+ std::unique_ptr<CoordinateSequence> clipToBoxEdge(const CoordinateSequence* pts, int edgeIndex, bool closeRing) const;
83
+
84
+ /**
85
+ * Computes the intersection point of a segment
86
+ * with an edge of the clip box.
87
+ * The segment must be known to intersect the edge.
88
+ */
89
+ void intersection(const Coordinate& a, const Coordinate& b, int edgeIndex, Coordinate& rsltPt) const;
90
+ double intersectionLineY(const Coordinate& a, const Coordinate& b, double y) const;
91
+ double intersectionLineX(const Coordinate& a, const Coordinate& b, double x) const;
92
+ bool isInsideEdge(const Coordinate& p, int edgeIndex) const;
93
+
94
+
95
+ public:
96
+
97
+ RingClipper(const Envelope* env)
98
+ : clipEnv(*env)
99
+ {};
100
+
101
+ /**
102
+ * Clips a list of points to the clipping rectangle box.
103
+ */
104
+ std::unique_ptr<CoordinateSequence> clip(const CoordinateSequence* cs) const;
105
+
106
+ };
107
+
108
+
109
+ } // namespace geos.operation.overlayng
110
+ } // namespace geos.operation
111
+ } // namespace geos
112
+
@@ -0,0 +1,84 @@
1
+ /**********************************************************************
2
+ *
3
+ * GEOS - Geometry Engine Open Source
4
+ * http://geos.osgeo.org
5
+ *
6
+ * Copyright (C) 2020 Paul Ramsey <pramsey@cleverelephant.ca>
7
+ *
8
+ * This is free software; you can redistribute and/or modify it under
9
+ * the terms of the GNU Lesser General Public Licence as published
10
+ * by the Free Software Foundation.
11
+ * See the COPYING file for more information.
12
+ *
13
+ **********************************************************************/
14
+
15
+ #pragma once
16
+
17
+ #include <geos/export.h>
18
+ #include <geos/geom/Envelope.h>
19
+
20
+ #include <vector>
21
+ #include <map>
22
+
23
+
24
+ // Forward declarations
25
+ namespace geos {
26
+ namespace geom {
27
+ class Coordinate;
28
+ class Geometry;
29
+ class GeometryCollection;
30
+ class Polygon;
31
+ class LinearRing;
32
+ }
33
+ namespace operation {
34
+ }
35
+ }
36
+
37
+ namespace geos { // geos.
38
+ namespace operation { // geos.operation
39
+ namespace overlayng { // geos.operation.overlayng
40
+
41
+ using namespace geos::geom;
42
+
43
+ /**
44
+ * Computes a robust clipping envelope for a pair of polygonal geometries.
45
+ * The envelope is computed to be large enough to include the full
46
+ * length of all geometry line segments which intersect
47
+ * a given target envelope.
48
+ * This ensures that line segments which might intersect are
49
+ * not perturbed when clipped using {@link RingClipper}.
50
+ * @author mdavis
51
+ */
52
+ class GEOS_DLL RobustClipEnvelopeComputer {
53
+
54
+ private:
55
+
56
+ // Members
57
+ const Envelope* targetEnv;
58
+ Envelope clipEnv;
59
+
60
+ // Methods
61
+ void add(const Geometry* g);
62
+ void addCollection(const GeometryCollection* gc);
63
+ void addPolygon(const Polygon* poly);
64
+ void addPolygonRing(const LinearRing* ring);
65
+ void addSegment(const Coordinate& p1, const Coordinate& p2);
66
+ bool intersectsSegment(const Envelope* env, const Coordinate& p1, const Coordinate& p2);
67
+
68
+
69
+
70
+ public:
71
+
72
+ RobustClipEnvelopeComputer(const Envelope* p_targetEnv);
73
+
74
+ static Envelope getEnvelope(const Geometry* a, const Geometry* b, const Envelope* targetEnv);
75
+
76
+ Envelope getEnvelope();
77
+
78
+ };
79
+
80
+
81
+ } // namespace geos.operation.overlayng
82
+ } // namespace geos.operation
83
+ } // namespace geos
84
+
@@ -0,0 +1,95 @@
1
+ /**********************************************************************
2
+ *
3
+ * GEOS - Geometry Engine Open Source
4
+ * http://geos.osgeo.org
5
+ *
6
+ * Copyright (C) 2020 Paul Ramsey <pramsey@cleverelephant.ca>
7
+ *
8
+ * This is free software; you can redistribute and/or modify it under
9
+ * the terms of the GNU Lesser General Public Licence as published
10
+ * by the Free Software Foundation.
11
+ * See the COPYING file for more information.
12
+ *
13
+ **********************************************************************/
14
+
15
+ #pragma once
16
+
17
+ #include <geos/export.h>
18
+ #include <geos/geom/PrecisionModel.h>
19
+ #include <geos/operation/union/UnionStrategy.h>
20
+ #include <geos/operation/overlayng/OverlayNG.h>
21
+ #include <geos/operation/overlayng/OverlayUtil.h>
22
+
23
+
24
+
25
+ // Forward declarations
26
+ namespace geos {
27
+ namespace geom {
28
+ class Geometry;
29
+ }
30
+ }
31
+
32
+ namespace geos { // geos.
33
+ namespace operation { // geos.operation
34
+ namespace overlayng { // geos.operation.overlayng
35
+
36
+ /**
37
+ * Unions a collection of geometries in an
38
+ * efficient way, using {@link OverlayNG}
39
+ * to ensure robust computation.
40
+ *
41
+ * @author Martin Davis
42
+ *
43
+ */
44
+ class GEOS_DLL UnaryUnionNG {
45
+
46
+ private:
47
+
48
+ // Members
49
+
50
+
51
+
52
+ public:
53
+
54
+ /**
55
+ * Strategy class for NG unions.
56
+ */
57
+ class NGUnionStrategy : public operation::geounion::UnionStrategy {
58
+
59
+ public:
60
+
61
+ NGUnionStrategy(const PrecisionModel& p_pm)
62
+ : pm(p_pm)
63
+ {};
64
+
65
+ std::unique_ptr<geom::Geometry>
66
+ Union(const geom::Geometry* g0, const geom::Geometry* g1) override
67
+ {
68
+ return OverlayNG::overlay(g0, g1, OverlayNG::UNION, &pm);
69
+ }
70
+
71
+ bool
72
+ isFloatingPrecision() const override
73
+ {
74
+ return OverlayUtil::isFloating(&pm);
75
+ }
76
+
77
+ private:
78
+
79
+ const geom::PrecisionModel& pm;
80
+
81
+ };
82
+
83
+
84
+ // static methods
85
+ static std::unique_ptr<Geometry> Union(const Geometry* geom, const PrecisionModel& pm);
86
+ static std::unique_ptr<Geometry> Union(const Geometry* geom);
87
+
88
+
89
+ };
90
+
91
+
92
+ } // namespace geos.operation.overlayng
93
+ } // namespace geos.operation
94
+ } // namespace geos
95
+
@@ -0,0 +1,75 @@
1
+ /**********************************************************************
2
+ *
3
+ * GEOS - Geometry Engine Open Source
4
+ * http://geos.osgeo.org
5
+ *
6
+ * Copyright 2011-2014 Sandro Santilli <strk@kbt.io>
7
+ * Copyright (C) 2019 Even Rouault <even.rouault@spatialys.com>
8
+ *
9
+ * This is free software; you can redistribute and/or modify it under
10
+ * the terms of the GNU Lesser General Public Licence as published
11
+ * by the Free Software Foundation.
12
+ * See the COPYING file for more information.
13
+ **********************************************************************
14
+ *
15
+ * Ported from rtgeom_geos.c from
16
+ * rttopo - topology library
17
+ * http://git.osgeo.org/gitea/rttopo/librttopo
18
+ * with relicensing from GPL to LGPL with Copyright holder permission.
19
+ *
20
+ **********************************************************************/
21
+
22
+ #pragma once
23
+
24
+ #include <geos/export.h>
25
+
26
+ #include <memory>
27
+
28
+ #ifdef _MSC_VER
29
+ #pragma warning(push)
30
+ #pragma warning(disable: 4251) // warning C4251: needs to have dll-interface to be used by clients of class
31
+ #endif
32
+
33
+ // Forward declarations
34
+ namespace geos {
35
+ namespace geom {
36
+ class Geometry;
37
+ }
38
+ }
39
+
40
+ namespace geos {
41
+ namespace operation { // geos::operation
42
+ namespace polygonize { // geos::operation::polygonize
43
+
44
+ /** \brief Creates an areal geometry formed by the constituent linework of given geometry.
45
+ *
46
+ * The return type can be a Polygon or MultiPolygon, depending on input.
47
+ * If the input lineworks do not form polygons NULL is returned.
48
+ * The inputs can be LINESTRINGS, MULTILINESTRINGS, POLYGONS, MULTIPOLYGONS, and GeometryCollections.
49
+ *
50
+ * This algorithm will assume all inner geometries represent holes
51
+ *
52
+ * This is the equivalent of the PostGIS ST_BuildArea() function.
53
+ */
54
+ class GEOS_DLL BuildArea {
55
+
56
+ public:
57
+
58
+ /** \brief
59
+ * Create a BuildArea object.
60
+ */
61
+ BuildArea() = default;
62
+
63
+ ~BuildArea() = default;
64
+
65
+ /** \brief Return the area built from the constituent linework of the input geometry. */
66
+ std::unique_ptr<geom::Geometry> build(const geom::Geometry* geom);
67
+ };
68
+
69
+ } // namespace geos::operation::polygonize
70
+ } // namespace geos::operation
71
+ } // namespace geos
72
+
73
+ #ifdef _MSC_VER
74
+ #pragma warning(pop)
75
+ #endif