@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,324 @@
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
+ #include <geos/index/strtree/AbstractNode.h> // for inlines
20
+
21
+ #include <vector>
22
+ #include <list>
23
+ #include <memory> // for unique_ptr
24
+ #include <cassert> // for inlines
25
+ #include <algorithm>
26
+
27
+ // Forward declarations
28
+ namespace geos {
29
+ namespace index {
30
+ class ItemVisitor;
31
+ namespace strtree {
32
+ class Boundable;
33
+ class AbstractNode;
34
+ }
35
+ }
36
+ }
37
+
38
+ namespace geos {
39
+ namespace index { // geos::index
40
+ namespace strtree { // geos::index::strtree
41
+
42
+ /// A list of boundables. TODO: use a list
43
+ typedef std::vector<Boundable*> BoundableList;
44
+
45
+ /// list contains boundables or lists of boundables. The lists are owned by
46
+ /// this class, the plain boundables are held by reference only.
47
+ class ItemsList;
48
+
49
+ class ItemsListItem {
50
+ public:
51
+ enum type {
52
+ item_is_geometry,
53
+ item_is_list
54
+ };
55
+
56
+ ItemsListItem(void* item_)
57
+ : t(item_is_geometry)
58
+ {
59
+ item.g = item_;
60
+ }
61
+ ItemsListItem(ItemsList* item_)
62
+ : t(item_is_list)
63
+ {
64
+ item.l = item_;
65
+ }
66
+
67
+ type
68
+ get_type() const
69
+ {
70
+ return t;
71
+ }
72
+
73
+ void*
74
+ get_geometry() const
75
+ {
76
+ assert(t == item_is_geometry);
77
+ return item.g;
78
+ }
79
+ ItemsList*
80
+ get_itemslist() const
81
+ {
82
+ assert(t == item_is_list);
83
+ return item.l;
84
+ }
85
+
86
+ type t;
87
+ union {
88
+ void* g;
89
+ ItemsList* l;
90
+ } item;
91
+ };
92
+
93
+ class ItemsList : public std::vector<ItemsListItem> {
94
+ private:
95
+ typedef std::vector<ItemsListItem> base_type;
96
+
97
+ static void
98
+ delete_item(ItemsListItem& item)
99
+ {
100
+ if(ItemsListItem::item_is_list == item.t) {
101
+ delete item.item.l;
102
+ }
103
+ }
104
+
105
+ public:
106
+ ~ItemsList()
107
+ {
108
+ std::for_each(begin(), end(), &ItemsList::delete_item);
109
+ }
110
+
111
+ // lists of items need to be deleted in the end
112
+ void
113
+ push_back(void* item)
114
+ {
115
+ this->base_type::push_back(ItemsListItem(item));
116
+ }
117
+
118
+ // lists of items need to be deleted in the end
119
+ void
120
+ push_back_owned(ItemsList* itemList)
121
+ {
122
+ this->base_type::push_back(ItemsListItem(itemList));
123
+ }
124
+ };
125
+
126
+ /** \brief
127
+ * Base class for STRtree and SIRtree.
128
+ *
129
+ * STR-packed R-trees are described in:
130
+ * P. Rigaux, Michel Scholl and Agnes Voisard. Spatial Databases With
131
+ * Application To GIS. Morgan Kaufmann, San Francisco, 2002.
132
+ *
133
+ * This implementation is based on Boundables rather than just AbstractNodes,
134
+ * because the STR algorithm operates on both nodes and
135
+ * data, both of which are treated here as Boundables.
136
+ *
137
+ */
138
+ class GEOS_DLL AbstractSTRtree {
139
+
140
+ private:
141
+ bool built;
142
+ BoundableList* itemBoundables;
143
+
144
+ /**
145
+ * Creates the levels higher than the given level
146
+ *
147
+ * @param boundablesOfALevel
148
+ * the level to build on
149
+ * @param level
150
+ * the level of the Boundables, or -1 if the boundables are item
151
+ * boundables (that is, below level 0)
152
+ * @return the root, which may be a ParentNode or a LeafNode
153
+ */
154
+ virtual AbstractNode* createHigherLevels(
155
+ BoundableList* boundablesOfALevel,
156
+ int level);
157
+
158
+ std::unique_ptr<BoundableList> sortBoundablesY(const BoundableList* input);
159
+
160
+ bool remove(const void* searchBounds, AbstractNode& node, void* item);
161
+ bool removeItem(AbstractNode& node, void* item);
162
+
163
+ ItemsList* itemsTree(AbstractNode* node);
164
+
165
+ AbstractSTRtree(const AbstractSTRtree&) = delete;
166
+ AbstractSTRtree& operator=(const AbstractSTRtree&) = delete;
167
+
168
+ protected:
169
+
170
+ /** \brief
171
+ * A test for intersection between two bounds, necessary because
172
+ * subclasses of AbstractSTRtree have different implementations of
173
+ * bounds.
174
+ */
175
+ class GEOS_DLL IntersectsOp {
176
+ public:
177
+ /**
178
+ * For STRtrees, the bounds will be Envelopes; for
179
+ * SIRtrees, Intervals; for other subclasses of
180
+ * AbstractSTRtree, some other class.
181
+ * @param aBounds the bounds of one spatial object
182
+ * @param bBounds the bounds of another spatial object
183
+ * @return whether the two bounds intersect
184
+ */
185
+ virtual bool intersects(const void* aBounds,
186
+ const void* bBounds) = 0;
187
+
188
+ virtual
189
+ ~IntersectsOp() {}
190
+ };
191
+
192
+ AbstractNode* root;
193
+
194
+ std::vector <AbstractNode*>* nodes;
195
+
196
+ // Ownership to caller (TODO: return by unique_ptr)
197
+ virtual AbstractNode* createNode(int level) = 0;
198
+
199
+ /** \brief
200
+ * Sorts the childBoundables then divides them into groups of size M, where
201
+ * M is the node capacity.
202
+ */
203
+ virtual std::unique_ptr<BoundableList> createParentBoundables(
204
+ BoundableList* childBoundables, int newLevel);
205
+
206
+ virtual AbstractNode*
207
+ lastNode(BoundableList* nodeList)
208
+ {
209
+ assert(!nodeList->empty());
210
+ // Cast from Boundable to AbstractNode
211
+ return static_cast<AbstractNode*>(nodeList->back());
212
+ }
213
+
214
+ virtual AbstractNode*
215
+ getRoot()
216
+ {
217
+ assert(built);
218
+ return root;
219
+ }
220
+
221
+ /// Also builds the tree, if necessary.
222
+ virtual void insert(const void* bounds, void* item);
223
+
224
+ /// Also builds the tree, if necessary.
225
+ void query(const void* searchBounds, std::vector<void*>& foundItems);
226
+
227
+ /// Also builds the tree, if necessary.
228
+ void query(const void* searchBounds, ItemVisitor& visitor);
229
+
230
+ void query(const void* searchBounds, const AbstractNode& node, ItemVisitor& visitor);
231
+
232
+ /// Also builds the tree, if necessary.
233
+ bool remove(const void* itemEnv, void* item);
234
+
235
+ std::unique_ptr<BoundableList> boundablesAtLevel(int level);
236
+
237
+ // @@ should be size_t, probably
238
+ std::size_t nodeCapacity;
239
+
240
+ /**
241
+ * @return a test for intersection between two bounds,
242
+ * necessary because subclasses
243
+ * of AbstractSTRtree have different implementations of bounds.
244
+ * @see IntersectsOp
245
+ */
246
+ virtual IntersectsOp* getIntersectsOp() = 0;
247
+
248
+
249
+ public:
250
+
251
+ /** \brief
252
+ * Constructs an AbstractSTRtree with the specified maximum number of child
253
+ * nodes that a node may have.
254
+ */
255
+ AbstractSTRtree(std::size_t newNodeCapacity)
256
+ :
257
+ built(false),
258
+ itemBoundables(new BoundableList()),
259
+ nodes(new std::vector<AbstractNode *>()),
260
+ nodeCapacity(newNodeCapacity)
261
+ {
262
+ assert(newNodeCapacity > 1);
263
+ }
264
+
265
+ virtual ~AbstractSTRtree();
266
+
267
+ /** \brief
268
+ * Creates parent nodes, grandparent nodes, and so forth up to the root
269
+ * node, for the data that has been inserted into the tree.
270
+ *
271
+ * Can only be
272
+ * called once, and thus can be called only after all of the data has been
273
+ * inserted into the tree.
274
+ */
275
+ virtual void build();
276
+
277
+ /** \brief
278
+ * Returns the maximum number of child nodes that a node may have.
279
+ */
280
+ virtual std::size_t
281
+ getNodeCapacity()
282
+ {
283
+ return nodeCapacity;
284
+ }
285
+
286
+ virtual void query(const void* searchBounds, const AbstractNode* node, std::vector<void*>* matches);
287
+
288
+ /**
289
+ * Iterate over all items added thus far. Explicitly does not build
290
+ * the tree.
291
+ */
292
+ void iterate(ItemVisitor& visitor);
293
+
294
+
295
+ /**
296
+ * @param level -1 to get items
297
+ * @param top an AbstractNode
298
+ * @param boundables a BoundableList
299
+ */
300
+ virtual void boundablesAtLevel(int level, AbstractNode* top,
301
+ BoundableList* boundables);
302
+
303
+ /** \brief
304
+ * Gets a tree structure (as a nested list) corresponding to the structure
305
+ * of the items and nodes in this tree.
306
+ *
307
+ * The returned Lists contain either Object items, or Lists which
308
+ * correspond to subtrees of the tree Subtrees which do not contain
309
+ * any items are not included.
310
+ *
311
+ * Builds the tree if necessary.
312
+ *
313
+ * @note The caller is responsible for releasing the list
314
+ *
315
+ * @return a List of items and/or Lists
316
+ */
317
+ ItemsList* itemsTree();
318
+ };
319
+
320
+
321
+ } // namespace geos::index::strtree
322
+ } // namespace geos::index
323
+ } // namespace geos
324
+
@@ -0,0 +1,49 @@
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 strtree { // geos::index::strtree
22
+
23
+ /// A spatial object in an AbstractSTRtree.
24
+ class GEOS_DLL Boundable {
25
+ public:
26
+ /**
27
+ * Returns a representation of space that encloses this Boundable,
28
+ * preferably not much bigger than this Boundable's boundary yet
29
+ * fast to test for intersection with the bounds of other Boundables.
30
+ *
31
+ * The class of object returned depends
32
+ * on the subclass of AbstractSTRtree.
33
+ *
34
+ * @return an Envelope (for STRtrees), an Interval (for SIRtrees),
35
+ * or other object (for other subclasses of AbstractSTRtree)
36
+ *
37
+ * @see AbstractSTRtree::IntersectsOp
38
+ */
39
+ virtual const void* getBounds() const = 0;
40
+
41
+ virtual bool isLeaf() const = 0;
42
+ virtual ~Boundable() {}
43
+ };
44
+
45
+
46
+ } // namespace geos::index::strtree
47
+ } // namespace geos::index
48
+ } // namespace geos
49
+
@@ -0,0 +1,122 @@
1
+ /**********************************************************************
2
+ *
3
+ * GEOS - Geometry Engine Open Source
4
+ * http://geos.osgeo.org
5
+ *
6
+ * Copyright (C) 2016 Daniel Baston
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/strtree/BoundablePair.java (JTS-1.14)
16
+ *
17
+ **********************************************************************/
18
+
19
+ #pragma once
20
+
21
+ #include <geos/index/strtree/Boundable.h>
22
+ #include <geos/index/strtree/ItemDistance.h>
23
+ #include <queue>
24
+
25
+ namespace geos {
26
+ namespace index {
27
+ namespace strtree {
28
+
29
+ /**
30
+ * @brief A pair of [Boundables](@ref Boundable), whose
31
+ * leaf items support a distance metric between them.
32
+ *
33
+ * Used to compute the distance between the members,
34
+ * and to expand a member relative to the other
35
+ * in order to produce new branches of the
36
+ * Branch-and-Bound evaluation tree.
37
+ * Provides an ordering based on the distance between the members,
38
+ * which allows building a priority queue by minimum distance.
39
+ *
40
+ * @author Martin Davis
41
+ *
42
+ */
43
+ class BoundablePair {
44
+ private:
45
+ const Boundable* boundable1;
46
+ const Boundable* boundable2;
47
+ ItemDistance* itemDistance;
48
+ double mDistance;
49
+
50
+ public:
51
+ struct BoundablePairQueueCompare {
52
+ bool
53
+ operator()(const BoundablePair* a, const BoundablePair* b)
54
+ {
55
+ return a->getDistance() > b->getDistance();
56
+ }
57
+ };
58
+
59
+ typedef std::priority_queue<BoundablePair*, std::vector<BoundablePair*>, BoundablePairQueueCompare> BoundablePairQueue;
60
+ BoundablePair(const Boundable* boundable1, const Boundable* boundable2, ItemDistance* itemDistance);
61
+
62
+ /**
63
+ * Gets one of the member {@link Boundable}s in the pair
64
+ * (indexed by [0, 1]).
65
+ *
66
+ * @param i the index of the member to return (0 or 1)
67
+ * @return the chosen member
68
+ */
69
+ const Boundable* getBoundable(int i) const;
70
+
71
+ /** \brief
72
+ * Computes the distance between the {@link Boundable}s in this pair.
73
+ * The boundables are either composites or leaves.
74
+ *
75
+ * If either is composite, the distance is computed as the minimum distance
76
+ * between the bounds.
77
+ * If both are leaves, the distance is computed by
78
+ * ItemDistance::distance(const ItemBoundable* item1, const ItemBoundable* item2).
79
+ *
80
+ * @return the distance between the items
81
+ */
82
+ double distance() const;
83
+
84
+ /** \brief
85
+ * Gets the minimum possible distance between the Boundables in this pair.
86
+ *
87
+ * If the members are both items, this will be the
88
+ * exact distance between them.
89
+ * Otherwise, this distance will be a lower bound on
90
+ * the distances between the items in the members.
91
+ *
92
+ * @return the exact or lower bound distance for this pair
93
+ */
94
+ double getDistance() const;
95
+
96
+ /**
97
+ * Tests if both elements of the pair are leaf nodes
98
+ *
99
+ * @return true if both pair elements are leaf nodes
100
+ */
101
+ bool isLeaves() const;
102
+
103
+ /** \brief
104
+ * Computes the maximum distance between any
105
+ * two items in the pair of nodes.
106
+ *
107
+ * @return the maximum distance between items in the pair
108
+ */
109
+ double maximumDistance();
110
+
111
+ static bool isComposite(const Boundable* item);
112
+
113
+ static double area(const Boundable* b);
114
+
115
+ void expandToQueue(BoundablePairQueue&, double minDistance);
116
+ void expand(const Boundable* bndComposite, const Boundable* bndOther, bool isFlipped, BoundablePairQueue& priQ,
117
+ double minDistance);
118
+ };
119
+
120
+ }
121
+ }
122
+ }
@@ -0,0 +1,33 @@
1
+ /**********************************************************************
2
+ *
3
+ * GEOS - Geometry Engine Open Source
4
+ * http://geos.osgeo.org
5
+ *
6
+ * Copyright (C) 2019 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
+ #pragma once
15
+
16
+ #include <geos/geom/Envelope.h>
17
+
18
+ namespace geos {
19
+ namespace index { // geos::index
20
+ namespace strtree { // geos::index::strtree
21
+
22
+ class GEOS_DLL EnvelopeUtil {
23
+ public:
24
+ // EnvelopeUtil(const void* newBounds, void* newItem);
25
+ // ~EnvelopeUtil() override = default;
26
+
27
+ static double maximumDistance(const geom::Envelope* env1, const geom::Envelope* env2);
28
+
29
+ };
30
+
31
+ } // namespace geos::index::strtree
32
+ } // namespace geos::index
33
+ } // namespace geos
@@ -0,0 +1,44 @@
1
+ /**********************************************************************
2
+ *
3
+ * GEOS - Geometry Engine Open Source
4
+ * http://geos.osgeo.org
5
+ *
6
+ * Copyright (C) 2016 Daniel Baston
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/strtree/GeometryItemDistance.java (JTS-1.14)
16
+ *
17
+ **********************************************************************/
18
+
19
+ #pragma once
20
+
21
+ #include <geos/geom/Geometry.h>
22
+ #include <geos/index/strtree/ItemDistance.h>
23
+
24
+ namespace geos {
25
+ namespace index {
26
+ namespace strtree {
27
+ class GEOS_DLL GeometryItemDistance : public ItemDistance {
28
+ public:
29
+ /**
30
+ * Computes the distance between two {@link Geometry} items,
31
+ * using the {@link Geometry#distance(Geometry)} method.
32
+ *
33
+ * @param item1 an item which is a Geometry
34
+ * @param item2 an item which is a Geometry
35
+ * @return the distance between the geometries
36
+ * @throws ClassCastException if either item is not a Geometry
37
+ */
38
+ double distance(const ItemBoundable* item1, const ItemBoundable* item2) override;
39
+ };
40
+
41
+ }
42
+ }
43
+ }
44
+
@@ -0,0 +1,60 @@
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 <algorithm>
19
+ #include <cassert>
20
+ #include <cmath>
21
+
22
+ namespace geos {
23
+ namespace index { // geos::index
24
+ namespace strtree { // geos::index::strtree
25
+
26
+ /// A contiguous portion of 1D-space. Used internally by SIRtree.
27
+ //
28
+ /// @see SIRtree
29
+ ///
30
+ class GEOS_DLL Interval {
31
+ public:
32
+ Interval(double newMin, double newMax) : imin(newMin), imax(newMax) {
33
+ assert(std::isnan(newMin) || std::isnan(newMax) || imin <= imax);
34
+ }
35
+
36
+ double getMin() const { return imin; }
37
+ double getMax() const { return imax; }
38
+ double getWidth() const { return imax - imin; }
39
+ double getCentre() const { return (imin + imax) / 2; }
40
+ Interval* expandToInclude(const Interval* other) {
41
+ imax = std::max(imax, other->imax);
42
+ imin = std::min(imin, other->imin);
43
+ return this;
44
+ }
45
+ bool intersects(const Interval* other) const {
46
+ return !(other->imin > imax || other->imax < imin);
47
+ }
48
+ bool equals(const Interval* other) const {
49
+ return imin == other->imin && imax == other->imax;
50
+ }
51
+ private:
52
+ double imin;
53
+ double imax;
54
+ };
55
+
56
+
57
+ } // namespace geos::index::strtree
58
+ } // namespace geos::index
59
+ } // namespace geos
60
+
@@ -0,0 +1,59 @@
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
+ #include <geos/index/strtree/Boundable.h> // for inheritance
20
+
21
+ namespace geos {
22
+ namespace index { // geos::index
23
+ namespace strtree { // geos::index::strtree
24
+
25
+ /**
26
+ * \brief
27
+ * Boundable wrapper for a non-Boundable spatial object.
28
+ * Used internally by AbstractSTRtree.
29
+ *
30
+ * \todo TODO: It's unclear who takes ownership of passed newBounds and newItem objects.
31
+ */
32
+ class GEOS_DLL ItemBoundable: public Boundable {
33
+ public:
34
+
35
+ ItemBoundable(const void* newBounds, void* newItem) : bounds(newBounds), item(newItem) {}
36
+ ~ItemBoundable() override = default;
37
+
38
+ bool isLeaf() const override {
39
+ return true;
40
+ }
41
+
42
+ const void* getBounds() const override {
43
+ return bounds;
44
+ }
45
+
46
+ void* getItem() const {
47
+ return item;
48
+ }
49
+
50
+ private:
51
+
52
+ const void* bounds;
53
+ void* item;
54
+ };
55
+
56
+ } // namespace geos::index::strtree
57
+ } // namespace geos::index
58
+ } // namespace geos
59
+