@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,61 @@
1
+ /**********************************************************************
2
+ *
3
+ * GEOS - Geometry Engine Open Source
4
+ * http://geos.osgeo.org
5
+ *
6
+ * Copyright (C) 2006 Refractions Research Inc.
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
+ namespace geos {
20
+ namespace index { // geos::index
21
+ namespace bintree { // geos::index::bintree
22
+
23
+ /// Represents an (1-dimensional) closed interval on the Real number line.
24
+ class GEOS_DLL Interval {
25
+
26
+ public:
27
+
28
+ double min, max;
29
+
30
+ Interval();
31
+
32
+ Interval(double nmin, double nmax);
33
+
34
+ /// TODO: drop this, rely on copy ctor
35
+ Interval(const Interval* interval);
36
+
37
+ void init(double nmin, double nmax);
38
+
39
+ double getMin() const;
40
+
41
+ double getMax() const;
42
+
43
+ double getWidth() const;
44
+
45
+ void expandToInclude(Interval* interval);
46
+
47
+ bool overlaps(const Interval* interval) const;
48
+
49
+ bool overlaps(double nmin, double nmax) const;
50
+
51
+ bool contains(const Interval* interval) const;
52
+
53
+ bool contains(double nmin, double nmax) const;
54
+
55
+ bool contains(double p) const;
56
+ };
57
+
58
+ } // namespace geos::index::bintree
59
+ } // namespace geos::index
60
+ } // namespace geos
61
+
@@ -0,0 +1,71 @@
1
+ /**********************************************************************
2
+ *
3
+ * GEOS - Geometry Engine Open Source
4
+ * http://geos.osgeo.org
5
+ *
6
+ * Copyright (C) 2006 Refractions Research Inc.
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
+ // Forward declarations
20
+ namespace geos {
21
+ namespace index {
22
+ namespace bintree {
23
+ class Interval;
24
+ }
25
+ }
26
+ }
27
+
28
+ namespace geos {
29
+ namespace index { // geos::index
30
+ namespace bintree { // geos::index::bintree
31
+
32
+ /** \brief
33
+ * A Key is a unique identifier for a node in a tree.
34
+ *
35
+ * It contains a lower-left point and a level number.
36
+ * The level number is the power of two for the size of the node envelope
37
+ */
38
+ class GEOS_DLL Key {
39
+
40
+ public:
41
+
42
+ static int computeLevel(Interval* newInterval);
43
+
44
+ Key(Interval* newInterval);
45
+
46
+ ~Key();
47
+
48
+ double getPoint();
49
+
50
+ int getLevel();
51
+
52
+ Interval* getInterval();
53
+
54
+ void computeKey(Interval* itemInterval);
55
+
56
+ private:
57
+
58
+ // the fields which make up the key
59
+ double pt;
60
+ int level;
61
+
62
+ // auxiliary data which is derived from the key for use in computation
63
+ Interval* interval;
64
+
65
+ void computeInterval(int level, Interval* itemInterval);
66
+ };
67
+
68
+ } // namespace geos::index::bintree
69
+ } // namespace geos::index
70
+ } // namespace geos
71
+
@@ -0,0 +1,74 @@
1
+ /**********************************************************************
2
+ *
3
+ * GEOS - Geometry Engine Open Source
4
+ * http://geos.osgeo.org
5
+ *
6
+ * Copyright (C) 2006 Refractions Research Inc.
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/index/bintree/NodeBase.h> // for inheritance
19
+
20
+ // Forward declarations
21
+ namespace geos {
22
+ namespace index {
23
+ namespace bintree {
24
+ class Interval;
25
+ }
26
+ }
27
+ }
28
+
29
+ namespace geos {
30
+ namespace index { // geos::index
31
+ namespace bintree { // geos::index::bintree
32
+
33
+ /// A node of a Bintree.
34
+ class GEOS_DLL Node: public NodeBase {
35
+
36
+ public:
37
+
38
+ static Node* createNode(Interval* itemInterval);
39
+
40
+ static Node* createExpanded(Node* node, Interval* addInterval);
41
+
42
+ Node(Interval* newInterval, int newLevel);
43
+
44
+ ~Node() override;
45
+
46
+ Interval* getInterval();
47
+
48
+ Node* getNode(Interval* searchInterval);
49
+
50
+ NodeBase* find(Interval* searchInterval);
51
+
52
+ void insert(Node* node);
53
+
54
+ private:
55
+
56
+ Interval* interval;
57
+
58
+ double centre;
59
+
60
+ int level;
61
+
62
+ Node* getSubnode(int index);
63
+
64
+ Node* createSubnode(int index);
65
+
66
+ protected:
67
+
68
+ bool isSearchMatch(Interval* itemInterval) override;
69
+ };
70
+
71
+ } // namespace geos::index::bintree
72
+ } // namespace geos::index
73
+ } // namespace geos
74
+
@@ -0,0 +1,83 @@
1
+ /**********************************************************************
2
+ *
3
+ * GEOS - Geometry Engine Open Source
4
+ * http://geos.osgeo.org
5
+ *
6
+ * Copyright (C) 2006 Refractions Research Inc.
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 <vector>
19
+
20
+ // Forward declarations
21
+ namespace geos {
22
+ namespace index {
23
+ namespace bintree {
24
+ class Node;
25
+ class Interval;
26
+ }
27
+ }
28
+ }
29
+
30
+ namespace geos {
31
+ namespace index { // geos::index
32
+ namespace bintree { // geos::index::bintree
33
+
34
+ /// The base class for nodes in a Bintree.
35
+ class GEOS_DLL NodeBase {
36
+
37
+ public:
38
+
39
+ static int getSubnodeIndex(Interval* interval, double centre);
40
+
41
+ NodeBase();
42
+
43
+ virtual ~NodeBase();
44
+
45
+ virtual std::vector<void*>* getItems();
46
+
47
+ virtual void add(void* item);
48
+
49
+ virtual std::vector<void*>* addAllItems(std::vector<void*>* newItems);
50
+
51
+ virtual std::vector<void*>* addAllItemsFromOverlapping(Interval* interval,
52
+ std::vector<void*>* resultItems);
53
+
54
+ virtual int depth();
55
+
56
+ virtual int size();
57
+
58
+ virtual int nodeSize();
59
+
60
+ protected:
61
+
62
+ std::vector<void*>* items;
63
+
64
+ /**
65
+ * subnodes are numbered as follows:
66
+ *
67
+ * 0 | 1
68
+ */
69
+ Node* subnode[2];
70
+
71
+ virtual bool isSearchMatch(Interval* interval) = 0;
72
+
73
+ private:
74
+
75
+ NodeBase(const NodeBase&) = delete;
76
+ NodeBase& operator=(const NodeBase&) = delete;
77
+
78
+ };
79
+
80
+ } // namespace geos::index::bintree
81
+ } // namespace geos::index
82
+ } // namespace geos
83
+
@@ -0,0 +1,77 @@
1
+ /**********************************************************************
2
+ *
3
+ * GEOS - Geometry Engine Open Source
4
+ * http://geos.osgeo.org
5
+ *
6
+ * Copyright (C) 2006 Refractions Research Inc.
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/index/bintree/NodeBase.h> // for inheritance
19
+
20
+ // Forward declarations
21
+ namespace geos {
22
+ namespace index {
23
+ namespace bintree {
24
+ class Interval;
25
+ class Node;
26
+ }
27
+ }
28
+ }
29
+
30
+ namespace geos {
31
+ namespace index { // geos::index
32
+ namespace bintree { // geos::index::bintree
33
+
34
+ /** \brief
35
+ * The root node of a single Bintree.
36
+ *
37
+ * It is centred at the origin,
38
+ * and does not have a defined extent.
39
+ */
40
+ class GEOS_DLL Root: public NodeBase {
41
+
42
+ private:
43
+
44
+ // the singleton root node is centred at the origin.
45
+ static double origin;
46
+
47
+ void insertContained(Node* tree,
48
+ Interval* itemInterval,
49
+ void* item);
50
+
51
+ public:
52
+
53
+ Root() {}
54
+
55
+ ~Root() override {}
56
+
57
+ /// @param itemInterval
58
+ /// Ownership left to caller, references kept in this class.
59
+ ///
60
+ /// @param item
61
+ /// Ownership left to caller, references kept in this class.
62
+ ///
63
+ void insert(Interval* itemInterval, void* item);
64
+
65
+ protected:
66
+
67
+ bool
68
+ isSearchMatch(Interval* /*interval*/) override
69
+ {
70
+ return true;
71
+ }
72
+ };
73
+
74
+ } // namespace geos::index::bintree
75
+ } // namespace geos::index
76
+ } // namespace geos
77
+
@@ -0,0 +1,206 @@
1
+ /**********************************************************************
2
+ *
3
+ * GEOS - Geometry Engine Open Source
4
+ * http://geos.osgeo.org
5
+ *
6
+ * Copyright (C) 2001-2002 Vivid Solutions Inc.
7
+ *
8
+ * This is free software; you can redistribute and/or modify it under
9
+ * the terms of the GNU Lesser General Public Licence as published
10
+ * by the Free Software Foundation.
11
+ * See the COPYING file for more information.
12
+ *
13
+ **********************************************************************
14
+ *
15
+ * Last port: index/chain/MonotoneChain.java rev. 1.15 (JTS-1.10)
16
+ *
17
+ **********************************************************************/
18
+
19
+ #pragma once
20
+
21
+ #include <geos/export.h>
22
+ #include <geos/geom/CoordinateSequence.h> // for inline
23
+ #include <geos/geom/Envelope.h> // for inline
24
+ #include <geos/geom/LineSegment.h> // for inline
25
+
26
+ #include <memory> // for unique_ptr
27
+
28
+ // Forward declarations
29
+ namespace geos {
30
+ namespace geom {
31
+ class LineSegment;
32
+ class CoordinateSequence;
33
+ }
34
+ namespace index {
35
+ namespace chain {
36
+ class MonotoneChainSelectAction;
37
+ class MonotoneChainOverlapAction;
38
+ }
39
+ }
40
+ }
41
+
42
+ namespace geos {
43
+ namespace index { // geos::index
44
+ namespace chain { // geos::index::chain
45
+
46
+ /** \brief
47
+ * Monotone Chains are a way of partitioning the segments of a linestring to
48
+ * allow for fast searching of intersections.
49
+ *
50
+ * They have the following properties:
51
+ *
52
+ * - the segments within a monotone chain never intersect each other
53
+ * - the envelope of any contiguous subset of the segments in a monotone
54
+ * chain is equal to the envelope of the endpoints of the subset.
55
+ *
56
+ * Property 1 means that there is no need to test pairs of segments from
57
+ * within the same monotone chain for intersection.
58
+ * Property 2 allows an efficient binary search to be used to find the
59
+ * intersection points of two monotone chains.
60
+ *
61
+ * For many types of real-world data, these properties eliminate
62
+ * a large number of segment comparisons, producing substantial speed gains.
63
+ *
64
+ * One of the goals of this implementation of MonotoneChains is to be
65
+ * as space and time efficient as possible. One design choice that aids this
66
+ * is that a MonotoneChain is based on a subarray of a list of points.
67
+ * This means that new arrays of points (potentially very large) do not
68
+ * have to be allocated.
69
+ *
70
+ * MonotoneChains support the following kinds of queries:
71
+ *
72
+ * - Envelope select: determine all the segments in the chain which
73
+ * intersect a given envelope
74
+ * - Overlap: determine all the pairs of segments in two chains whose
75
+ * envelopes overlap
76
+ *
77
+ * This implementation of MonotoneChains uses the concept of internal iterators
78
+ * to return the resultsets for the above queries.
79
+ * This has time and space advantages, since it
80
+ * is not necessary to build lists of instantiated objects to represent the segments
81
+ * returned by the query.
82
+ * However, it does mean that the queries are not thread-safe.
83
+ *
84
+ */
85
+ class GEOS_DLL MonotoneChain {
86
+ public:
87
+
88
+ /// @param pts
89
+ /// Ownership left to caller, this class holds a reference.
90
+ ///
91
+ /// @param start
92
+ ///
93
+ /// @param end
94
+ ///
95
+ /// @param context
96
+ /// Ownership left to caller, this class holds a reference.
97
+ ///
98
+ MonotoneChain(const geom::CoordinateSequence& pts,
99
+ std::size_t start, std::size_t end, void* context);
100
+
101
+ ~MonotoneChain() = default;
102
+
103
+ /// Returned envelope is owned by this class
104
+ const geom::Envelope& getEnvelope() const;
105
+ const geom::Envelope& getEnvelope(double expansionDistance) const;
106
+
107
+ size_t
108
+ getStartIndex() const
109
+ {
110
+ return start;
111
+ }
112
+
113
+ size_t
114
+ getEndIndex() const
115
+ {
116
+ return end;
117
+ }
118
+
119
+ /** \brief
120
+ * Set given LineSegment with points of the segment starting
121
+ * at the given index.
122
+ */
123
+ void getLineSegment(std::size_t index, geom::LineSegment& ls) const {
124
+ pts->getAt(index, ls.p0);
125
+ pts->getAt(index + 1, ls.p1);
126
+ }
127
+
128
+ /**
129
+ * Return the subsequence of coordinates forming this chain.
130
+ * Allocates a new CoordinateSequence to hold the Coordinates
131
+ *
132
+ */
133
+ std::unique_ptr<geom::CoordinateSequence> getCoordinates() const;
134
+
135
+ /**
136
+ * Determine all the line segments in the chain whose envelopes overlap
137
+ * the searchEnvelope, and process them
138
+ */
139
+ void select(const geom::Envelope& searchEnv,
140
+ MonotoneChainSelectAction& mcs) const;
141
+
142
+ void computeOverlaps(const MonotoneChain* mc,
143
+ MonotoneChainOverlapAction* mco) const;
144
+
145
+ void computeOverlaps(const MonotoneChain* mc, double overlapTolerance,
146
+ MonotoneChainOverlapAction* mco) const;
147
+
148
+ void*
149
+ getContext() const
150
+ {
151
+ return context;
152
+ }
153
+
154
+ private:
155
+
156
+ void computeSelect(const geom::Envelope& searchEnv,
157
+ std::size_t start0,
158
+ std::size_t end0,
159
+ MonotoneChainSelectAction& mcs) const;
160
+
161
+ void computeOverlaps(std::size_t start0, std::size_t end0, const MonotoneChain& mc,
162
+ std::size_t start1, std::size_t end1,
163
+ double overlapTolerance,
164
+ MonotoneChainOverlapAction& mco) const;
165
+
166
+ bool overlaps(std::size_t start0, std::size_t end0,
167
+ const MonotoneChain& mc, std::size_t start1, std::size_t end1,
168
+ double overlapTolerance) const {
169
+ if (overlapTolerance > 0.0) {
170
+ return overlaps(pts->getAt<geom::CoordinateXY>(start0),
171
+ pts->getAt<geom::CoordinateXY>(end0),
172
+ mc.pts->getAt<geom::CoordinateXY>(start1),
173
+ mc.pts->getAt<geom::CoordinateXY>(end1),
174
+ overlapTolerance);
175
+ }
176
+ return geom::Envelope::intersects(pts->getAt<geom::CoordinateXY>(start0),
177
+ pts->getAt<geom::CoordinateXY>(end0),
178
+ mc.pts->getAt<geom::CoordinateXY>(start1),
179
+ mc.pts->getAt<geom::CoordinateXY>(end1));
180
+ }
181
+
182
+ static bool overlaps(const geom::CoordinateXY& p1, const geom::CoordinateXY& p2,
183
+ const geom::CoordinateXY& q1, const geom::CoordinateXY& q2,
184
+ double overlapTolerance);
185
+
186
+ /// Externally owned
187
+ const geom::CoordinateSequence* pts;
188
+
189
+ /// user-defined information
190
+ void* context;
191
+
192
+ /// Index of chain start vertex into the CoordinateSequence, 0 based.
193
+ std::size_t start;
194
+
195
+ /// Index of chain end vertex into the CoordinateSequence, 0 based.
196
+ std::size_t end;
197
+
198
+ /// Owned by this class
199
+ mutable geom::Envelope env;
200
+
201
+ };
202
+
203
+ } // namespace geos::index::chain
204
+ } // namespace geos::index
205
+ } // namespace geos
206
+
@@ -0,0 +1,74 @@
1
+ /**********************************************************************
2
+ *
3
+ * GEOS - Geometry Engine Open Source
4
+ * http://geos.osgeo.org
5
+ *
6
+ * Copyright (C) 2001-2002 Vivid Solutions Inc.
7
+ *
8
+ * This is free software; you can redistribute and/or modify it under
9
+ * the terms of the GNU Lesser General Public Licence as published
10
+ * by the Free Software Foundation.
11
+ * See the COPYING file for more information.
12
+ *
13
+ **********************************************************************
14
+ *
15
+ * Last port: index/chain/MonotoneChainBuilder.java r388 (JTS-1.12)
16
+ *
17
+ **********************************************************************/
18
+
19
+ #pragma once
20
+
21
+ #include <geos/export.h>
22
+ #include <memory>
23
+ #include <vector>
24
+ #include <cstddef>
25
+
26
+ // Forward declarations
27
+ namespace geos {
28
+ namespace geom {
29
+ class CoordinateSequence;
30
+ }
31
+ namespace index {
32
+ namespace chain {
33
+ class MonotoneChain;
34
+ }
35
+ }
36
+ }
37
+
38
+ namespace geos {
39
+ namespace index { // geos::index
40
+ namespace chain { // geos::index::chain
41
+
42
+ /** \brief
43
+ * Constructs [MonotoneChains](@ref index::chain::MonotoneChain)
44
+ * for sequences of [Coordinates](@ref geom::Coordinate).
45
+ *
46
+ * TODO: use vector<const Coordinate*> instead ?
47
+ */
48
+ class GEOS_DLL MonotoneChainBuilder {
49
+
50
+ public:
51
+ /** \brief
52
+ * Computes a list of the {@link MonotoneChain}s for a list of coordinates,
53
+ * attaching a context data object to each.
54
+ *
55
+ * @param pts the list of points to compute chains for
56
+ * @param context a data object to attach to each chain
57
+ * @param[out] mcList a list of the monotone chains for the points
58
+ */
59
+ static void getChains(const geom::CoordinateSequence* pts,
60
+ void* context,
61
+ std::vector<MonotoneChain>& mcList);
62
+
63
+ /**
64
+ * Disable copy construction and assignment. Apparently needed to make this
65
+ * class compile under MSVC. (See https://stackoverflow.com/q/29565299)
66
+ */
67
+ MonotoneChainBuilder(const MonotoneChainBuilder&) = delete;
68
+ MonotoneChainBuilder& operator=(const MonotoneChainBuilder&) = delete;
69
+ };
70
+
71
+ } // namespace geos::index::chain
72
+ } // namespace geos::index
73
+ } // namespace geos
74
+