@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,46 @@
1
+ /**********************************************************************
2
+ *
3
+ * GEOS - Geometry Engine Open Source
4
+ * http://geos.osgeo.org
5
+ *
6
+ * Copyright (C) 2022 ISciences LLC
7
+ *
8
+ * This is free software; you can redistribute and/or modify it under
9
+ * the terms of the GNU Lesser General Public Licence as published
10
+ * by the Free Software Foundation.
11
+ * See the COPYING file for more information.
12
+ *
13
+ **********************************************************************/
14
+
15
+ #pragma once
16
+
17
+ #include <geos/export.h>
18
+ #include <geos/geom/Geometry.h>
19
+ #include <geos/geom/GeometryFactory.h>
20
+ #include <geos/geom/GeometryCollection.h>
21
+
22
+ namespace geos {
23
+ namespace operation {
24
+ namespace cluster {
25
+
26
+
27
+ class GEOS_DLL GeometryFlattener {
28
+ public:
29
+ /** Flatten a geometry such that it contains no nested components (e.g., MultiPolygons within
30
+ * GeometryCollections, etc.). The flattened geometry will use the most narrow representation
31
+ * possible (Polygon preferred to MultiPolygon, MultiPolygon preferred to GeometryCollection.)
32
+ *
33
+ * @brief flatten
34
+ * @param g a geometry to be flattened; consumed by the function
35
+ * @return a geometry with no nested components
36
+ */
37
+ static std::unique_ptr<geom::Geometry> flatten(std::unique_ptr<geom::Geometry>&& g);
38
+
39
+ private:
40
+ static void flatten(std::unique_ptr<geom::Geometry>&& g, std::vector<std::unique_ptr<geom::Geometry>>& components);
41
+ };
42
+
43
+
44
+ }
45
+ }
46
+ }
@@ -0,0 +1,53 @@
1
+ /**********************************************************************
2
+ *
3
+ * GEOS - Geometry Engine Open Source
4
+ * http://geos.osgeo.org
5
+ *
6
+ * Copyright (C) 2020-2021 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
+ #ifndef GEOS_OPERATION_CLUSTER_GEOMETRYINTERSECTSCLUSTERFINDER
16
+ #define GEOS_OPERATION_CLUSTER_GEOMETRYINTERSECTSCLUSTERFINDER
17
+
18
+ #include <geos/operation/cluster/AbstractClusterFinder.h>
19
+ #include <geos/geom/Geometry.h>
20
+ #include <geos/geom/prep/PreparedGeometry.h>
21
+ #include <geos/geom/prep/PreparedGeometryFactory.h>
22
+
23
+ namespace geos {
24
+ namespace operation {
25
+ namespace cluster {
26
+
27
+ /** GeometryIntersectsClusterFinder clusters geometries by intersection.
28
+ * Any two geometries that intersect will be included in the same cluster.
29
+ */
30
+ class GEOS_DLL GeometryIntersectsClusterFinder : public AbstractClusterFinder {
31
+ protected:
32
+ const geom::Envelope& queryEnvelope(const geom::Geometry* a) override {
33
+ return *(a->getEnvelopeInternal());
34
+ }
35
+
36
+ bool shouldJoin(const geom::Geometry* a, const geom::Geometry *b) override {
37
+ if (m_prep == nullptr || &(m_prep->getGeometry()) != a) {
38
+ m_prep = geom::prep::PreparedGeometryFactory::prepare(a);
39
+ }
40
+
41
+ return m_prep->intersects(b);
42
+ }
43
+
44
+ private:
45
+ std::unique_ptr<geom::prep::PreparedGeometry> m_prep;
46
+ };
47
+
48
+
49
+ }
50
+ }
51
+ }
52
+
53
+ #endif
@@ -0,0 +1,137 @@
1
+ /**********************************************************************
2
+ *
3
+ * GEOS - Geometry Engine Open Source
4
+ * http://geos.osgeo.org
5
+ *
6
+ * Copyright (C) 2020-2021 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
+ #ifndef GEOS_OPERATION_CLUSTER_UNIONFIND
16
+ #define GEOS_OPERATION_CLUSTER_UNIONFIND
17
+
18
+ #include <algorithm>
19
+ #include <numeric>
20
+ #include <vector>
21
+
22
+ #include <geos/export.h>
23
+ #include <geos/operation/cluster/Clusters.h>
24
+
25
+ namespace geos {
26
+ namespace operation {
27
+ namespace cluster {
28
+
29
+ /** UnionFind provides an implementation of a disjoint set data structure that
30
+ * is useful in clustering. Elements to be clustered are referred to according
31
+ * to a numeric index.
32
+ */
33
+ class GEOS_DLL UnionFind {
34
+
35
+ public:
36
+ /** Create a UnionFind object
37
+ *
38
+ * @param n the number of elements to be clustered (fixed size)
39
+ */
40
+ explicit UnionFind(size_t n) :
41
+ clusters(n),
42
+ sizes(n),
43
+ num_clusters(n) {
44
+ std::iota(clusters.begin(), clusters.end(), 0);
45
+ std::fill(sizes.begin(), sizes.end(), 1);
46
+ }
47
+
48
+ // Are two elements in the same cluster?
49
+ bool same(size_t i, size_t j) {
50
+ return i == j || (find(i) == find(j));
51
+ }
52
+
53
+ // Are two elements in a different cluster?
54
+ bool different(size_t i, size_t j) {
55
+ return !same(i, j);
56
+ }
57
+
58
+ /**
59
+ * Return the ID of the cluster associated with an item
60
+ * @param i index of the item to lookup
61
+ * @return a numeric cluster ID
62
+ */
63
+ size_t find(size_t i) {
64
+ size_t root = i;
65
+
66
+ while(clusters[root] != root) {
67
+ root = clusters[root];
68
+ }
69
+
70
+ while (i != root) {
71
+ size_t next = clusters[i];
72
+ clusters[i] = root;
73
+ i = next;
74
+ }
75
+
76
+ return i;
77
+ }
78
+
79
+ /**
80
+ * Merge the clusters associated with two items
81
+ * @param i ID of an item associated with the first cluster
82
+ * @param j ID of an item associated with the second cluster
83
+ */
84
+ void join(size_t i, size_t j) {
85
+ auto a = find(i);
86
+ auto b = find(j);
87
+
88
+ if (a == b) {
89
+ return;
90
+ }
91
+
92
+ if ((sizes[b] > sizes[a]) || (sizes[a] == sizes[b] && b <= a)) {
93
+ std::swap(a, b);
94
+ }
95
+
96
+ clusters[a] = clusters[b];
97
+ sizes[b] += sizes[a];
98
+ sizes[a] = 0;
99
+
100
+ num_clusters--;
101
+ }
102
+
103
+ size_t getNumClusters() const {
104
+ return num_clusters;
105
+ }
106
+
107
+ template<typename T>
108
+ void sortByCluster(T begin, T end) {
109
+ std::sort(begin, end, [this](size_t a, size_t b) {
110
+ return find(a) < find(b);
111
+ });
112
+ }
113
+
114
+ /**
115
+ * Return the clusters associated with all elements
116
+ * @return an object that allows iteration over the elements of each cluster
117
+ */
118
+ Clusters getClusters();
119
+
120
+ /**
121
+ * Return the clusters associated with the given elements
122
+ * @param elems a vector of element ids
123
+ * @return an object that allows iteration over the elements of each cluster
124
+ */
125
+ Clusters getClusters(std::vector<size_t> elems);
126
+
127
+ private:
128
+ std::vector<size_t> clusters;
129
+ std::vector<size_t> sizes;
130
+ size_t num_clusters;
131
+ };
132
+
133
+ }
134
+ }
135
+ }
136
+
137
+ #endif
@@ -0,0 +1,76 @@
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
+ * Last port: operation/distance/ConnectedElementLocationFilter.java b98e8234
16
+ *
17
+ **********************************************************************/
18
+
19
+ #pragma once
20
+
21
+ #include <geos/export.h>
22
+
23
+ #include <geos/geom/GeometryFilter.h> // for inheritance
24
+ #include <geos/operation/distance/GeometryLocation.h>
25
+
26
+ #include <memory>
27
+ #include <vector>
28
+
29
+ // Forward declarations
30
+ namespace geos {
31
+ namespace geom {
32
+ class Geometry;
33
+ }
34
+ }
35
+
36
+
37
+ namespace geos {
38
+ namespace operation { // geos::operation
39
+ namespace distance { // geos::operation::distance
40
+
41
+ /** \brief
42
+ * A ConnectedElementPointFilter extracts a single point from each connected
43
+ * element in a Geometry (e.g. a polygon, linestring or point) and returns
44
+ * them in a list. Empty geometries do not provide a location item.
45
+ *
46
+ * The elements of the list are GeometryLocation.
47
+ *
48
+ * Empty geometries do not provide a location item.
49
+ */
50
+ class GEOS_DLL ConnectedElementLocationFilter: public geom::GeometryFilter {
51
+ private:
52
+
53
+ std::vector<GeometryLocation> locations;
54
+ ConnectedElementLocationFilter() = default;
55
+ ConnectedElementLocationFilter(const ConnectedElementLocationFilter&) = delete;
56
+ ConnectedElementLocationFilter& operator=(const ConnectedElementLocationFilter&) = delete;
57
+ public:
58
+ /** \brief
59
+ * Returns a list containing a point from each Polygon, LineString, and
60
+ * Point found inside the specified geometry.
61
+ *
62
+ * Thus, if the specified geometry is not a GeometryCollection,
63
+ * an empty list will be returned. The elements of the list
64
+ * are [GeometryLocations](@ref operation::distance::GeometryLocation).
65
+ */
66
+ static std::vector<GeometryLocation> getLocations(const geom::Geometry* geom);
67
+
68
+ void filter_ro(const geom::Geometry* geom) override;
69
+ void filter_rw(geom::Geometry* geom) override;
70
+ };
71
+
72
+
73
+ } // namespace geos::operation::distance
74
+ } // namespace geos::operation
75
+ } // namespace geos
76
+
@@ -0,0 +1,73 @@
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
+ * Last port: operation/distance/ConnectedElementPointFilter.java rev. 1.7 (JTS-1.10)
16
+ *
17
+ **********************************************************************/
18
+
19
+ #pragma once
20
+
21
+ #include <geos/export.h>
22
+
23
+ #include <geos/geom/GeometryFilter.h> // for inheritance
24
+
25
+ #include <vector>
26
+
27
+ // Forward declarations
28
+ namespace geos {
29
+ namespace geom {
30
+ class CoordinateXY;
31
+ class Geometry;
32
+ }
33
+ }
34
+
35
+
36
+ namespace geos {
37
+ namespace operation { // geos::operation
38
+ namespace distance { // geos::operation::distance
39
+
40
+ /** \brief
41
+ * Extracts a single point
42
+ * from each connected element in a Geometry
43
+ * (e.g. a polygon, linestring or point)
44
+ * and returns them in a list
45
+ */
46
+ class GEOS_DLL ConnectedElementPointFilter: public geom::GeometryFilter {
47
+
48
+ private:
49
+ std::vector<const geom::CoordinateXY*>* pts;
50
+
51
+ public:
52
+ /**
53
+ * Returns a list containing a Coordinate from each Polygon, LineString, and Point
54
+ * found inside the specified geometry. Thus, if the specified geometry is
55
+ * not a GeometryCollection, an empty list will be returned.
56
+ */
57
+ static std::vector<const geom::CoordinateXY*>* getCoordinates(const geom::Geometry* geom);
58
+
59
+ ConnectedElementPointFilter(std::vector<const geom::CoordinateXY*>* newPts)
60
+ :
61
+ pts(newPts)
62
+ {}
63
+
64
+ void filter_ro(const geom::Geometry* geom) override;
65
+
66
+ //void filter_rw(geom::Geometry * /*geom*/) {};
67
+ };
68
+
69
+
70
+ } // namespace geos::operation::distance
71
+ } // namespace geos::operation
72
+ } // namespace geos
73
+
@@ -0,0 +1,228 @@
1
+ /**********************************************************************
2
+ *
3
+ * GEOS - Geometry Engine Open Source
4
+ * http://geos.osgeo.org
5
+ *
6
+ * Copyright (C) 2011 Sandro Santilli <strk@kbt.io>
7
+ * Copyright (C) 2006 Refractions Research Inc.
8
+ *
9
+ * This is free software; you can redistribute and/or modify it under
10
+ * the terms of the GNU Lesser General Public Licence as published
11
+ * by the Free Software Foundation.
12
+ * See the COPYING file for more information.
13
+ *
14
+ **********************************************************************
15
+ *
16
+ * Last port: operation/distance/DistanceOp.java r335 (JTS-1.12-)
17
+ *
18
+ **********************************************************************/
19
+
20
+ #pragma once
21
+
22
+ #include <geos/export.h>
23
+
24
+ #include <geos/algorithm/PointLocator.h> // for composition
25
+ #include <geos/operation/distance/GeometryLocation.h>
26
+ #include <geos/geom/CoordinateSequence.h>
27
+
28
+ #include <array>
29
+ #include <vector>
30
+ #include <memory>
31
+
32
+ #ifdef _MSC_VER
33
+ #pragma warning(push)
34
+ #pragma warning(disable: 4251) // warning C4251: needs to have dll-interface to be used by clients of class
35
+ #endif
36
+
37
+ // Forward declarations
38
+ namespace geos {
39
+ namespace geom {
40
+ class Coordinate;
41
+ class Polygon;
42
+ class LineString;
43
+ class Point;
44
+ class Geometry;
45
+ }
46
+ }
47
+
48
+
49
+ namespace geos {
50
+ namespace operation { // geos::operation
51
+ namespace distance { // geos::operation::distance
52
+
53
+ /**
54
+ * \brief
55
+ * Find two points on two {@link geom::Geometry}s which lie
56
+ * within a given distance, or else are the nearest points
57
+ * on the geometries (in which case this also
58
+ * provides the distance between the geometries).
59
+ *
60
+ * The distance computation also finds a pair of points in the
61
+ * input geometries which have the minimum distance between them.
62
+ * If a point lies in the interior of a line segment,
63
+ * the coordinate computed is a close
64
+ * approximation to the exact point.
65
+ *
66
+ * Empty geometry collection components are ignored.
67
+ *
68
+ * The algorithms used are straightforward O(n^2)
69
+ * comparisons. This worst-case performance could be improved on
70
+ * by using Voronoi techniques or spatial indexes.
71
+ *
72
+ */
73
+ class GEOS_DLL DistanceOp {
74
+ public:
75
+ /**
76
+ * \brief
77
+ * Compute the distance between the nearest points of two geometries.
78
+ *
79
+ * @param g0 a {@link geom::Geometry}
80
+ * @param g1 another {@link geom::Geometry}
81
+ * @return the distance between the geometries
82
+ * @return 0 if either input geometry is empty
83
+ * @throws IllegalArgumentException if either input geometry is null
84
+ */
85
+ static double distance(const geom::Geometry& g0,
86
+ const geom::Geometry& g1);
87
+
88
+ /// @deprecated, use the version taking references
89
+ static double distance(const geom::Geometry* g0,
90
+ const geom::Geometry* g1);
91
+
92
+ /**
93
+ * \brief
94
+ * Test whether two geometries lie within a given distance of
95
+ * each other.
96
+ *
97
+ * @param g0 a {@link geom::Geometry}
98
+ * @param g1 another {@link geom::Geometry}
99
+ * @param distance the distance to test
100
+ * @return true if g0.distance(g1) <= distance
101
+ */
102
+ static bool isWithinDistance(const geom::Geometry& g0,
103
+ const geom::Geometry& g1,
104
+ double distance);
105
+
106
+ /**
107
+ * Compute the the nearest points of two geometries.
108
+ *
109
+ * The points are presented in the same order as the input Geometries.
110
+ *
111
+ * @param g0 a {@link geom::Geometry}
112
+ * @param g1 another {@link geom::Geometry}
113
+ *
114
+ * @return the nearest points in the geometries, ownership to caller.
115
+ * A NULL return means one of the geometries is empty.
116
+ *
117
+ */
118
+ static std::unique_ptr<geom::CoordinateSequence> nearestPoints(
119
+ const geom::Geometry* g0,
120
+ const geom::Geometry* g1);
121
+
122
+ /// @deprecated use the one taking references
123
+ DistanceOp(const geom::Geometry* g0, const geom::Geometry* g1);
124
+
125
+ /**
126
+ * \brief
127
+ * Constructs a DistanceOp that computes the distance and
128
+ * nearest points between the two specified geometries.
129
+ *
130
+ * @param g0 a Geometry
131
+ * @param g1 a Geometry
132
+ */
133
+ DistanceOp(const geom::Geometry& g0, const geom::Geometry& g1);
134
+
135
+ /**
136
+ * \brief
137
+ * Constructs a DistanceOp that computes the distance and nearest
138
+ * points between the two specified geometries.
139
+ *
140
+ * @param g0 a Geometry
141
+ * @param g1 a Geometry
142
+ * @param terminateDistance the distance on which to terminate
143
+ * the search
144
+ */
145
+ DistanceOp(const geom::Geometry& g0, const geom::Geometry& g1,
146
+ double terminateDistance);
147
+
148
+ ~DistanceOp() = default;
149
+
150
+ /**
151
+ * Report the distance between the closest points on the input geometries.
152
+ *
153
+ * @return the distance between the geometries
154
+ */
155
+ double distance();
156
+
157
+ /**
158
+ * Report the coordinates of the nearest points in the input geometries.
159
+ * The points are presented in the same order as the input Geometries.
160
+ *
161
+ * @return a pair of {@link geom::Coordinate}s of the nearest points
162
+ * as a newly allocated object (ownership to caller)
163
+ *
164
+ */
165
+ std::unique_ptr<geom::CoordinateSequence> nearestPoints();
166
+
167
+ private:
168
+
169
+ // input
170
+ std::array<geom::Geometry const*, 2> geom;
171
+ double terminateDistance;
172
+
173
+ // working
174
+ algorithm::PointLocator ptLocator;
175
+ std::array<GeometryLocation, 2> minDistanceLocation;
176
+ double minDistance;
177
+ bool computed = false;
178
+
179
+ void updateMinDistance(std::array<GeometryLocation, 2> & locGeom, bool flip);
180
+
181
+ void computeMinDistance();
182
+
183
+ void computeContainmentDistance();
184
+
185
+ void computeInside(std::vector<GeometryLocation> & locs,
186
+ const std::vector<const geom::Polygon*>& polys,
187
+ std::array<GeometryLocation, 2> & locPtPoly);
188
+
189
+
190
+ /**
191
+ * Computes distance between facets (lines and points)
192
+ * of input geometries.
193
+ */
194
+ void computeFacetDistance();
195
+
196
+ void computeMinDistanceLines(
197
+ const std::vector<const geom::LineString*>& lines0,
198
+ const std::vector<const geom::LineString*>& lines1,
199
+ std::array<GeometryLocation, 2> & locGeom);
200
+
201
+ void computeMinDistancePoints(
202
+ const std::vector<const geom::Point*>& points0,
203
+ const std::vector<const geom::Point*>& points1,
204
+ std::array<GeometryLocation, 2> & locGeom);
205
+
206
+ void computeMinDistanceLinesPoints(
207
+ const std::vector<const geom::LineString*>& lines0,
208
+ const std::vector<const geom::Point*>& points1,
209
+ std::array<GeometryLocation, 2> & locGeom);
210
+
211
+ void computeMinDistance(const geom::LineString* line0,
212
+ const geom::LineString* line1,
213
+ std::array<GeometryLocation, 2> & locGeom);
214
+
215
+ void computeMinDistance(const geom::LineString* line,
216
+ const geom::Point* pt,
217
+ std::array<GeometryLocation, 2> & locGeom);
218
+ };
219
+
220
+
221
+ } // namespace geos::operation::distance
222
+ } // namespace geos::operation
223
+ } // namespace geos
224
+
225
+ #ifdef _MSC_VER
226
+ #pragma warning(pop)
227
+ #endif
228
+
@@ -0,0 +1,84 @@
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: operation/distance/FacetSequence.java (f6187ee2 JTS-1.14)
16
+ *
17
+ **********************************************************************/
18
+
19
+ #pragma once
20
+
21
+ #include <geos/geom/CoordinateSequence.h>
22
+ #include <geos/geom/Envelope.h>
23
+ #include <geos/geom/Coordinate.h>
24
+ #include <geos/geom/LineSegment.h>
25
+ #include <geos/operation/distance/GeometryLocation.h>
26
+
27
+ namespace geos {
28
+ namespace operation {
29
+ namespace distance {
30
+ class FacetSequence {
31
+ private:
32
+ const geom::CoordinateSequence* pts;
33
+ const std::size_t start;
34
+ const std::size_t end;
35
+ const geom::Geometry* geom;
36
+ /*
37
+ * Unlike JTS, we store the envelope in the FacetSequence so
38
+ * that it has a clear owner. This is helpful when making a
39
+ * tree of FacetSequence objects (FacetSequenceTreeBuilder)
40
+ */
41
+ geom::Envelope env;
42
+
43
+ double computeDistanceLineLine(const FacetSequence& facetSeq,
44
+ std::vector<GeometryLocation> *locs) const;
45
+
46
+ double computeDistancePointLine(const geom::Coordinate& pt,
47
+ const FacetSequence& facetSeq,
48
+ std::vector<GeometryLocation> *locs) const;
49
+
50
+ void updateNearestLocationsPointLine(const geom::Coordinate& pt,
51
+ const FacetSequence& facetSeq, std::size_t i,
52
+ const geom::Coordinate& q0, const geom::Coordinate &q1,
53
+ std::vector<GeometryLocation> *locs) const;
54
+
55
+ void updateNearestLocationsLineLine(std::size_t i, const geom::Coordinate& p0, const geom::Coordinate& p1,
56
+ const FacetSequence& facetSeq,
57
+ std::size_t j, const geom::Coordinate& q0, const geom::Coordinate &q1,
58
+ std::vector<GeometryLocation> *locs) const;
59
+
60
+ void computeEnvelope();
61
+
62
+ public:
63
+ const geom::Envelope* getEnvelope() const;
64
+
65
+ const geom::Coordinate* getCoordinate(std::size_t index) const;
66
+
67
+ std::size_t size() const;
68
+
69
+ bool isPoint() const;
70
+
71
+ double distance(const FacetSequence& facetSeq) const;
72
+
73
+ FacetSequence(const geom::CoordinateSequence* pts, std::size_t start, std::size_t end);
74
+
75
+ FacetSequence(const geom::Geometry* geom, const geom::CoordinateSequence* pts, std::size_t start, std::size_t end);
76
+
77
+ std::vector<GeometryLocation> nearestLocations(const FacetSequence& facetSeq) const;
78
+
79
+ };
80
+
81
+ }
82
+ }
83
+ }
84
+