@cpp.js/package-geos 1.0.0-beta.22 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (539) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/README.md +1 -1
  3. package/dist/prebuilt/Android-x86_64/bin/geos-config +79 -0
  4. package/dist/prebuilt/Android-x86_64/bin/geosop +0 -0
  5. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/Angle.h +247 -0
  6. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/Area.h +82 -0
  7. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/BoundaryNodeRule.h +146 -0
  8. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/CGAlgorithmsDD.h +193 -0
  9. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/CentralEndpointIntersector.h +161 -0
  10. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/Centroid.h +157 -0
  11. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/CircularArcs.h +37 -0
  12. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/ConvexHull.h +211 -0
  13. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/Distance.h +116 -0
  14. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/HCoordinate.h +100 -0
  15. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/InteriorPointArea.h +110 -0
  16. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/InteriorPointLine.h +79 -0
  17. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/InteriorPointPoint.h +73 -0
  18. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/Interpolate.h +182 -0
  19. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/Intersection.h +84 -0
  20. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/Length.h +50 -0
  21. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/LineIntersector.h +667 -0
  22. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/MinimumAreaRectangle.h +159 -0
  23. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/MinimumBoundingCircle.h +137 -0
  24. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/MinimumDiameter.h +185 -0
  25. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/NotRepresentableException.h +43 -0
  26. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/Orientation.h +122 -0
  27. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/PointInRing.h +40 -0
  28. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/PointLocation.h +107 -0
  29. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/PointLocator.h +108 -0
  30. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/PolygonNodeTopology.h +149 -0
  31. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/RayCrossingCounter.h +173 -0
  32. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/Rectangle.h +96 -0
  33. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/RobustDeterminant.h +66 -0
  34. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/SimplePointInRing.h +44 -0
  35. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/construct/IndexedDistanceToPoint.h +88 -0
  36. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/construct/IndexedPointInPolygonsLocator.h +79 -0
  37. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/construct/LargestEmptyCircle.h +240 -0
  38. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/construct/MaximumInscribedCircle.h +221 -0
  39. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/distance/DiscreteFrechetDistance.h +175 -0
  40. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/distance/DiscreteHausdorffDistance.h +252 -0
  41. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/distance/DistanceToPoint.h +72 -0
  42. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/distance/PointPairDistance.h +151 -0
  43. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/hull/ConcaveHull.h +309 -0
  44. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/hull/ConcaveHullOfPolygons.h +377 -0
  45. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/hull/HullTri.h +156 -0
  46. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/hull/HullTriangulation.h +139 -0
  47. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/locate/IndexedPointInAreaLocator.h +139 -0
  48. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/locate/PointOnGeometryLocator.h +56 -0
  49. package/dist/prebuilt/Android-x86_64/include/geos/algorithm/locate/SimplePointInAreaLocator.h +117 -0
  50. package/dist/prebuilt/Android-x86_64/include/geos/constants.h +49 -0
  51. package/dist/prebuilt/Android-x86_64/include/geos/coverage/Corner.h +137 -0
  52. package/dist/prebuilt/Android-x86_64/include/geos/coverage/CoverageBoundarySegmentFinder.h +83 -0
  53. package/dist/prebuilt/Android-x86_64/include/geos/coverage/CoverageEdge.h +171 -0
  54. package/dist/prebuilt/Android-x86_64/include/geos/coverage/CoverageGapFinder.h +106 -0
  55. package/dist/prebuilt/Android-x86_64/include/geos/coverage/CoveragePolygon.h +57 -0
  56. package/dist/prebuilt/Android-x86_64/include/geos/coverage/CoveragePolygonValidator.h +381 -0
  57. package/dist/prebuilt/Android-x86_64/include/geos/coverage/CoverageRing.h +205 -0
  58. package/dist/prebuilt/Android-x86_64/include/geos/coverage/CoverageRingEdges.h +170 -0
  59. package/dist/prebuilt/Android-x86_64/include/geos/coverage/CoverageSimplifier.h +166 -0
  60. package/dist/prebuilt/Android-x86_64/include/geos/coverage/CoverageUnion.h +77 -0
  61. package/dist/prebuilt/Android-x86_64/include/geos/coverage/CoverageValidator.h +159 -0
  62. package/dist/prebuilt/Android-x86_64/include/geos/coverage/InvalidSegmentDetector.h +133 -0
  63. package/dist/prebuilt/Android-x86_64/include/geos/coverage/TPVWSimplifier.h +225 -0
  64. package/dist/prebuilt/Android-x86_64/include/geos/coverage/VertexRingCounter.h +71 -0
  65. package/dist/prebuilt/Android-x86_64/include/geos/edgegraph/EdgeGraph.h +137 -0
  66. package/dist/prebuilt/Android-x86_64/include/geos/edgegraph/EdgeGraphBuilder.h +91 -0
  67. package/dist/prebuilt/Android-x86_64/include/geos/edgegraph/HalfEdge.h +315 -0
  68. package/dist/prebuilt/Android-x86_64/include/geos/edgegraph/MarkHalfEdge.h +110 -0
  69. package/dist/prebuilt/Android-x86_64/include/geos/export.h +51 -0
  70. package/dist/prebuilt/Android-x86_64/include/geos/geom/CircularArc.h +273 -0
  71. package/dist/prebuilt/Android-x86_64/include/geos/geom/CircularString.h +85 -0
  72. package/dist/prebuilt/Android-x86_64/include/geos/geom/CompoundCurve.h +121 -0
  73. package/dist/prebuilt/Android-x86_64/include/geos/geom/Coordinate.h +627 -0
  74. package/dist/prebuilt/Android-x86_64/include/geos/geom/CoordinateFilter.h +134 -0
  75. package/dist/prebuilt/Android-x86_64/include/geos/geom/CoordinateList.h +244 -0
  76. package/dist/prebuilt/Android-x86_64/include/geos/geom/CoordinateSequence.h +807 -0
  77. package/dist/prebuilt/Android-x86_64/include/geos/geom/CoordinateSequenceFilter.h +116 -0
  78. package/dist/prebuilt/Android-x86_64/include/geos/geom/CoordinateSequenceIterator.h +126 -0
  79. package/dist/prebuilt/Android-x86_64/include/geos/geom/CoordinateSequences.h +76 -0
  80. package/dist/prebuilt/Android-x86_64/include/geos/geom/Curve.h +71 -0
  81. package/dist/prebuilt/Android-x86_64/include/geos/geom/CurvePolygon.h +58 -0
  82. package/dist/prebuilt/Android-x86_64/include/geos/geom/Dimension.h +64 -0
  83. package/dist/prebuilt/Android-x86_64/include/geos/geom/Envelope.h +826 -0
  84. package/dist/prebuilt/Android-x86_64/include/geos/geom/Geometry.h +1051 -0
  85. package/dist/prebuilt/Android-x86_64/include/geos/geom/GeometryCollection.h +256 -0
  86. package/dist/prebuilt/Android-x86_64/include/geos/geom/GeometryComponentFilter.h +61 -0
  87. package/dist/prebuilt/Android-x86_64/include/geos/geom/GeometryFactory.h +542 -0
  88. package/dist/prebuilt/Android-x86_64/include/geos/geom/GeometryFilter.h +74 -0
  89. package/dist/prebuilt/Android-x86_64/include/geos/geom/GeometryTypeName.h +110 -0
  90. package/dist/prebuilt/Android-x86_64/include/geos/geom/HeuristicOverlay.h +99 -0
  91. package/dist/prebuilt/Android-x86_64/include/geos/geom/IntersectionMatrix.h +383 -0
  92. package/dist/prebuilt/Android-x86_64/include/geos/geom/LineSegment.h +576 -0
  93. package/dist/prebuilt/Android-x86_64/include/geos/geom/LineString.h +151 -0
  94. package/dist/prebuilt/Android-x86_64/include/geos/geom/LinearRing.h +128 -0
  95. package/dist/prebuilt/Android-x86_64/include/geos/geom/Location.h +64 -0
  96. package/dist/prebuilt/Android-x86_64/include/geos/geom/MultiCurve.h +126 -0
  97. package/dist/prebuilt/Android-x86_64/include/geos/geom/MultiLineString.h +160 -0
  98. package/dist/prebuilt/Android-x86_64/include/geos/geom/MultiPoint.h +150 -0
  99. package/dist/prebuilt/Android-x86_64/include/geos/geom/MultiPolygon.h +155 -0
  100. package/dist/prebuilt/Android-x86_64/include/geos/geom/MultiSurface.h +94 -0
  101. package/dist/prebuilt/Android-x86_64/include/geos/geom/Point.h +221 -0
  102. package/dist/prebuilt/Android-x86_64/include/geos/geom/Polygon.h +138 -0
  103. package/dist/prebuilt/Android-x86_64/include/geos/geom/Position.h +68 -0
  104. package/dist/prebuilt/Android-x86_64/include/geos/geom/PrecisionModel.h +374 -0
  105. package/dist/prebuilt/Android-x86_64/include/geos/geom/Quadrant.h +164 -0
  106. package/dist/prebuilt/Android-x86_64/include/geos/geom/SimpleCurve.h +142 -0
  107. package/dist/prebuilt/Android-x86_64/include/geos/geom/Surface.h +115 -0
  108. package/dist/prebuilt/Android-x86_64/include/geos/geom/SurfaceImpl.h +159 -0
  109. package/dist/prebuilt/Android-x86_64/include/geos/geom/Triangle.h +230 -0
  110. package/dist/prebuilt/Android-x86_64/include/geos/geom/prep/AbstractPreparedPolygonContains.h +144 -0
  111. package/dist/prebuilt/Android-x86_64/include/geos/geom/prep/BasicPreparedGeometry.h +214 -0
  112. package/dist/prebuilt/Android-x86_64/include/geos/geom/prep/PreparedGeometry.h +260 -0
  113. package/dist/prebuilt/Android-x86_64/include/geos/geom/prep/PreparedGeometryFactory.h +93 -0
  114. package/dist/prebuilt/Android-x86_64/include/geos/geom/prep/PreparedLineString.h +70 -0
  115. package/dist/prebuilt/Android-x86_64/include/geos/geom/prep/PreparedLineStringDistance.h +57 -0
  116. package/dist/prebuilt/Android-x86_64/include/geos/geom/prep/PreparedLineStringIntersects.h +97 -0
  117. package/dist/prebuilt/Android-x86_64/include/geos/geom/prep/PreparedLineStringNearestPoints.h +54 -0
  118. package/dist/prebuilt/Android-x86_64/include/geos/geom/prep/PreparedPoint.h +56 -0
  119. package/dist/prebuilt/Android-x86_64/include/geos/geom/prep/PreparedPolygon.h +81 -0
  120. package/dist/prebuilt/Android-x86_64/include/geos/geom/prep/PreparedPolygonContains.h +105 -0
  121. package/dist/prebuilt/Android-x86_64/include/geos/geom/prep/PreparedPolygonContainsProperly.h +101 -0
  122. package/dist/prebuilt/Android-x86_64/include/geos/geom/prep/PreparedPolygonCovers.h +108 -0
  123. package/dist/prebuilt/Android-x86_64/include/geos/geom/prep/PreparedPolygonDistance.h +67 -0
  124. package/dist/prebuilt/Android-x86_64/include/geos/geom/prep/PreparedPolygonIntersects.h +90 -0
  125. package/dist/prebuilt/Android-x86_64/include/geos/geom/prep/PreparedPolygonPredicate.h +141 -0
  126. package/dist/prebuilt/Android-x86_64/include/geos/geom/util/ComponentCoordinateExtracter.h +69 -0
  127. package/dist/prebuilt/Android-x86_64/include/geos/geom/util/CoordinateOperation.h +70 -0
  128. package/dist/prebuilt/Android-x86_64/include/geos/geom/util/Densifier.h +90 -0
  129. package/dist/prebuilt/Android-x86_64/include/geos/geom/util/GeometryCombiner.h +151 -0
  130. package/dist/prebuilt/Android-x86_64/include/geos/geom/util/GeometryEditor.h +127 -0
  131. package/dist/prebuilt/Android-x86_64/include/geos/geom/util/GeometryEditorOperation.h +65 -0
  132. package/dist/prebuilt/Android-x86_64/include/geos/geom/util/GeometryExtracter.h +95 -0
  133. package/dist/prebuilt/Android-x86_64/include/geos/geom/util/GeometryFixer.h +169 -0
  134. package/dist/prebuilt/Android-x86_64/include/geos/geom/util/GeometryLister.h +92 -0
  135. package/dist/prebuilt/Android-x86_64/include/geos/geom/util/GeometryMapper.h +115 -0
  136. package/dist/prebuilt/Android-x86_64/include/geos/geom/util/GeometryTransformer.h +181 -0
  137. package/dist/prebuilt/Android-x86_64/include/geos/geom/util/LinearComponentExtracter.h +65 -0
  138. package/dist/prebuilt/Android-x86_64/include/geos/geom/util/NoOpGeometryOperation.h +52 -0
  139. package/dist/prebuilt/Android-x86_64/include/geos/geom/util/PointExtracter.h +63 -0
  140. package/dist/prebuilt/Android-x86_64/include/geos/geom/util/PolygonExtracter.h +66 -0
  141. package/dist/prebuilt/Android-x86_64/include/geos/geom/util/PolygonalExtracter.h +54 -0
  142. package/dist/prebuilt/Android-x86_64/include/geos/geom/util/ShortCircuitedGeometryVisitor.h +66 -0
  143. package/dist/prebuilt/Android-x86_64/include/geos/geom/util/SineStarFactory.h +122 -0
  144. package/dist/prebuilt/Android-x86_64/include/geos/geom.h +146 -0
  145. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/Depth.h +143 -0
  146. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/DirectedEdge.h +236 -0
  147. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/DirectedEdgeStar.h +164 -0
  148. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/Edge.h +285 -0
  149. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/EdgeEnd.h +187 -0
  150. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/EdgeEndStar.h +217 -0
  151. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/EdgeIntersection.h +149 -0
  152. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/EdgeIntersectionList.h +129 -0
  153. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/EdgeList.h +124 -0
  154. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/EdgeNodingValidator.h +113 -0
  155. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/EdgeRing.h +201 -0
  156. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/GeometryGraph.h +251 -0
  157. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/GraphComponent.h +117 -0
  158. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/Label.h +290 -0
  159. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/Node.h +192 -0
  160. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/NodeFactory.h +51 -0
  161. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/NodeMap.h +143 -0
  162. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/PlanarGraph.h +203 -0
  163. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/TopologyLocation.h +238 -0
  164. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/index/EdgeSetIntersector.h +68 -0
  165. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/index/MonotoneChain.h +72 -0
  166. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/index/MonotoneChainEdge.h +85 -0
  167. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/index/MonotoneChainIndexer.h +71 -0
  168. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/index/SegmentIntersector.h +176 -0
  169. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/index/SimpleEdgeSetIntersector.h +64 -0
  170. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/index/SimpleMCSweepLineIntersector.h +108 -0
  171. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/index/SimpleSweepLineIntersector.h +94 -0
  172. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/index/SweepLineEvent.h +136 -0
  173. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/index/SweepLineEventObj.h +38 -0
  174. package/dist/prebuilt/Android-x86_64/include/geos/geomgraph/index/SweepLineSegment.h +57 -0
  175. package/dist/prebuilt/Android-x86_64/include/geos/index/ItemVisitor.h +38 -0
  176. package/dist/prebuilt/Android-x86_64/include/geos/index/SpatialIndex.h +103 -0
  177. package/dist/prebuilt/Android-x86_64/include/geos/index/VertexSequencePackedRtree.h +153 -0
  178. package/dist/prebuilt/Android-x86_64/include/geos/index/bintree/Bintree.h +129 -0
  179. package/dist/prebuilt/Android-x86_64/include/geos/index/bintree/Interval.h +61 -0
  180. package/dist/prebuilt/Android-x86_64/include/geos/index/bintree/Key.h +71 -0
  181. package/dist/prebuilt/Android-x86_64/include/geos/index/bintree/Node.h +74 -0
  182. package/dist/prebuilt/Android-x86_64/include/geos/index/bintree/NodeBase.h +83 -0
  183. package/dist/prebuilt/Android-x86_64/include/geos/index/bintree/Root.h +77 -0
  184. package/dist/prebuilt/Android-x86_64/include/geos/index/chain/MonotoneChain.h +206 -0
  185. package/dist/prebuilt/Android-x86_64/include/geos/index/chain/MonotoneChainBuilder.h +74 -0
  186. package/dist/prebuilt/Android-x86_64/include/geos/index/chain/MonotoneChainOverlapAction.h +86 -0
  187. package/dist/prebuilt/Android-x86_64/include/geos/index/chain/MonotoneChainSelectAction.h +74 -0
  188. package/dist/prebuilt/Android-x86_64/include/geos/index/intervalrtree/IntervalRTreeBranchNode.h +53 -0
  189. package/dist/prebuilt/Android-x86_64/include/geos/index/intervalrtree/IntervalRTreeLeafNode.h +58 -0
  190. package/dist/prebuilt/Android-x86_64/include/geos/index/intervalrtree/IntervalRTreeNode.h +105 -0
  191. package/dist/prebuilt/Android-x86_64/include/geos/index/intervalrtree/SortedPackedIntervalRTree.h +110 -0
  192. package/dist/prebuilt/Android-x86_64/include/geos/index/kdtree/KdNode.h +64 -0
  193. package/dist/prebuilt/Android-x86_64/include/geos/index/kdtree/KdNodeVisitor.h +45 -0
  194. package/dist/prebuilt/Android-x86_64/include/geos/index/kdtree/KdTree.h +191 -0
  195. package/dist/prebuilt/Android-x86_64/include/geos/index/quadtree/IntervalSize.h +62 -0
  196. package/dist/prebuilt/Android-x86_64/include/geos/index/quadtree/Key.h +87 -0
  197. package/dist/prebuilt/Android-x86_64/include/geos/index/quadtree/Node.h +141 -0
  198. package/dist/prebuilt/Android-x86_64/include/geos/index/quadtree/NodeBase.h +161 -0
  199. package/dist/prebuilt/Android-x86_64/include/geos/index/quadtree/Quadtree.h +200 -0
  200. package/dist/prebuilt/Android-x86_64/include/geos/index/quadtree/Root.h +87 -0
  201. package/dist/prebuilt/Android-x86_64/include/geos/index/strtree/AbstractNode.h +131 -0
  202. package/dist/prebuilt/Android-x86_64/include/geos/index/strtree/AbstractSTRtree.h +324 -0
  203. package/dist/prebuilt/Android-x86_64/include/geos/index/strtree/Boundable.h +49 -0
  204. package/dist/prebuilt/Android-x86_64/include/geos/index/strtree/BoundablePair.h +122 -0
  205. package/dist/prebuilt/Android-x86_64/include/geos/index/strtree/EnvelopeUtil.h +33 -0
  206. package/dist/prebuilt/Android-x86_64/include/geos/index/strtree/GeometryItemDistance.h +44 -0
  207. package/dist/prebuilt/Android-x86_64/include/geos/index/strtree/Interval.h +60 -0
  208. package/dist/prebuilt/Android-x86_64/include/geos/index/strtree/ItemBoundable.h +59 -0
  209. package/dist/prebuilt/Android-x86_64/include/geos/index/strtree/ItemDistance.h +49 -0
  210. package/dist/prebuilt/Android-x86_64/include/geos/index/strtree/SIRtree.h +124 -0
  211. package/dist/prebuilt/Android-x86_64/include/geos/index/strtree/STRtree.h +177 -0
  212. package/dist/prebuilt/Android-x86_64/include/geos/index/strtree/SimpleSTRdistance.h +166 -0
  213. package/dist/prebuilt/Android-x86_64/include/geos/index/strtree/SimpleSTRnode.h +141 -0
  214. package/dist/prebuilt/Android-x86_64/include/geos/index/strtree/SimpleSTRtree.h +189 -0
  215. package/dist/prebuilt/Android-x86_64/include/geos/index/strtree/TemplateSTRNode.h +156 -0
  216. package/dist/prebuilt/Android-x86_64/include/geos/index/strtree/TemplateSTRNodePair.h +74 -0
  217. package/dist/prebuilt/Android-x86_64/include/geos/index/strtree/TemplateSTRtree.h +807 -0
  218. package/dist/prebuilt/Android-x86_64/include/geos/index/strtree/TemplateSTRtreeDistance.h +233 -0
  219. package/dist/prebuilt/Android-x86_64/include/geos/index/sweepline/SweepLineEvent.h +95 -0
  220. package/dist/prebuilt/Android-x86_64/include/geos/index/sweepline/SweepLineIndex.h +87 -0
  221. package/dist/prebuilt/Android-x86_64/include/geos/index/sweepline/SweepLineInterval.h +37 -0
  222. package/dist/prebuilt/Android-x86_64/include/geos/index/sweepline/SweepLineOverlapAction.h +44 -0
  223. package/dist/prebuilt/Android-x86_64/include/geos/io/ByteOrderDataInStream.h +125 -0
  224. package/dist/prebuilt/Android-x86_64/include/geos/io/ByteOrderValues.h +61 -0
  225. package/dist/prebuilt/Android-x86_64/include/geos/io/CLocalizer.h +53 -0
  226. package/dist/prebuilt/Android-x86_64/include/geos/io/CheckOrdinatesFilter.h +68 -0
  227. package/dist/prebuilt/Android-x86_64/include/geos/io/GeoJSON.h +154 -0
  228. package/dist/prebuilt/Android-x86_64/include/geos/io/GeoJSONReader.h +125 -0
  229. package/dist/prebuilt/Android-x86_64/include/geos/io/GeoJSONWriter.h +139 -0
  230. package/dist/prebuilt/Android-x86_64/include/geos/io/OrdinateSet.h +119 -0
  231. package/dist/prebuilt/Android-x86_64/include/geos/io/ParseException.h +53 -0
  232. package/dist/prebuilt/Android-x86_64/include/geos/io/StringTokenizer.h +66 -0
  233. package/dist/prebuilt/Android-x86_64/include/geos/io/WKBConstants.h +57 -0
  234. package/dist/prebuilt/Android-x86_64/include/geos/io/WKBReader.h +204 -0
  235. package/dist/prebuilt/Android-x86_64/include/geos/io/WKBStreamReader.h +49 -0
  236. package/dist/prebuilt/Android-x86_64/include/geos/io/WKBWriter.h +260 -0
  237. package/dist/prebuilt/Android-x86_64/include/geos/io/WKTFileReader.h +46 -0
  238. package/dist/prebuilt/Android-x86_64/include/geos/io/WKTReader.h +165 -0
  239. package/dist/prebuilt/Android-x86_64/include/geos/io/WKTStreamReader.h +48 -0
  240. package/dist/prebuilt/Android-x86_64/include/geos/io/WKTWriter.h +342 -0
  241. package/dist/prebuilt/Android-x86_64/include/geos/io/Writer.h +51 -0
  242. package/dist/prebuilt/Android-x86_64/include/geos/linearref/ExtractLineByLocation.h +88 -0
  243. package/dist/prebuilt/Android-x86_64/include/geos/linearref/LengthIndexOfPoint.h +87 -0
  244. package/dist/prebuilt/Android-x86_64/include/geos/linearref/LengthIndexedLine.h +211 -0
  245. package/dist/prebuilt/Android-x86_64/include/geos/linearref/LengthLocationMap.h +134 -0
  246. package/dist/prebuilt/Android-x86_64/include/geos/linearref/LinearGeometryBuilder.h +106 -0
  247. package/dist/prebuilt/Android-x86_64/include/geos/linearref/LinearIterator.h +156 -0
  248. package/dist/prebuilt/Android-x86_64/include/geos/linearref/LinearLocation.h +248 -0
  249. package/dist/prebuilt/Android-x86_64/include/geos/linearref/LocationIndexOfLine.h +72 -0
  250. package/dist/prebuilt/Android-x86_64/include/geos/linearref/LocationIndexOfPoint.h +77 -0
  251. package/dist/prebuilt/Android-x86_64/include/geos/linearref/LocationIndexedLine.h +276 -0
  252. package/dist/prebuilt/Android-x86_64/include/geos/math/DD.h +200 -0
  253. package/dist/prebuilt/Android-x86_64/include/geos/namespaces.h +317 -0
  254. package/dist/prebuilt/Android-x86_64/include/geos/noding/BasicSegmentString.h +89 -0
  255. package/dist/prebuilt/Android-x86_64/include/geos/noding/BoundaryChainNoder.h +171 -0
  256. package/dist/prebuilt/Android-x86_64/include/geos/noding/FastNodingValidator.h +129 -0
  257. package/dist/prebuilt/Android-x86_64/include/geos/noding/FastSegmentSetIntersectionFinder.h +80 -0
  258. package/dist/prebuilt/Android-x86_64/include/geos/noding/GeometryNoder.h +69 -0
  259. package/dist/prebuilt/Android-x86_64/include/geos/noding/IntersectionAdder.h +202 -0
  260. package/dist/prebuilt/Android-x86_64/include/geos/noding/IntersectionFinderAdder.h +110 -0
  261. package/dist/prebuilt/Android-x86_64/include/geos/noding/IteratedNoder.h +120 -0
  262. package/dist/prebuilt/Android-x86_64/include/geos/noding/MCIndexNoder.h +141 -0
  263. package/dist/prebuilt/Android-x86_64/include/geos/noding/MCIndexSegmentSetMutualIntersector.h +146 -0
  264. package/dist/prebuilt/Android-x86_64/include/geos/noding/NodableSegmentString.h +56 -0
  265. package/dist/prebuilt/Android-x86_64/include/geos/noding/NodedSegmentString.h +218 -0
  266. package/dist/prebuilt/Android-x86_64/include/geos/noding/Noder.h +79 -0
  267. package/dist/prebuilt/Android-x86_64/include/geos/noding/NodingIntersectionFinder.h +262 -0
  268. package/dist/prebuilt/Android-x86_64/include/geos/noding/NodingValidator.h +109 -0
  269. package/dist/prebuilt/Android-x86_64/include/geos/noding/Octant.h +73 -0
  270. package/dist/prebuilt/Android-x86_64/include/geos/noding/OrientedCoordinateArray.h +113 -0
  271. package/dist/prebuilt/Android-x86_64/include/geos/noding/ScaledNoder.h +132 -0
  272. package/dist/prebuilt/Android-x86_64/include/geos/noding/SegmentExtractingNoder.h +88 -0
  273. package/dist/prebuilt/Android-x86_64/include/geos/noding/SegmentIntersectionDetector.h +177 -0
  274. package/dist/prebuilt/Android-x86_64/include/geos/noding/SegmentIntersector.h +89 -0
  275. package/dist/prebuilt/Android-x86_64/include/geos/noding/SegmentNode.h +161 -0
  276. package/dist/prebuilt/Android-x86_64/include/geos/noding/SegmentNodeList.h +253 -0
  277. package/dist/prebuilt/Android-x86_64/include/geos/noding/SegmentPointComparator.h +120 -0
  278. package/dist/prebuilt/Android-x86_64/include/geos/noding/SegmentSetMutualIntersector.h +80 -0
  279. package/dist/prebuilt/Android-x86_64/include/geos/noding/SegmentString.h +199 -0
  280. package/dist/prebuilt/Android-x86_64/include/geos/noding/SegmentStringUtil.h +67 -0
  281. package/dist/prebuilt/Android-x86_64/include/geos/noding/SimpleNoder.h +70 -0
  282. package/dist/prebuilt/Android-x86_64/include/geos/noding/SinglePassNoder.h +96 -0
  283. package/dist/prebuilt/Android-x86_64/include/geos/noding/ValidatingNoder.h +74 -0
  284. package/dist/prebuilt/Android-x86_64/include/geos/noding/snap/SnappingIntersectionAdder.h +109 -0
  285. package/dist/prebuilt/Android-x86_64/include/geos/noding/snap/SnappingNoder.h +121 -0
  286. package/dist/prebuilt/Android-x86_64/include/geos/noding/snap/SnappingPointIndex.h +62 -0
  287. package/dist/prebuilt/Android-x86_64/include/geos/noding/snapround/HotPixel.h +171 -0
  288. package/dist/prebuilt/Android-x86_64/include/geos/noding/snapround/HotPixelIndex.h +116 -0
  289. package/dist/prebuilt/Android-x86_64/include/geos/noding/snapround/MCIndexPointSnapper.h +98 -0
  290. package/dist/prebuilt/Android-x86_64/include/geos/noding/snapround/MCIndexSnapRounder.h +157 -0
  291. package/dist/prebuilt/Android-x86_64/include/geos/noding/snapround/SnapRoundingIntersectionAdder.h +126 -0
  292. package/dist/prebuilt/Android-x86_64/include/geos/noding/snapround/SnapRoundingNoder.h +167 -0
  293. package/dist/prebuilt/Android-x86_64/include/geos/operation/BoundaryOp.h +120 -0
  294. package/dist/prebuilt/Android-x86_64/include/geos/operation/GeometryGraphOperation.h +92 -0
  295. package/dist/prebuilt/Android-x86_64/include/geos/operation/buffer/BufferBuilder.h +270 -0
  296. package/dist/prebuilt/Android-x86_64/include/geos/operation/buffer/BufferCurveSetBuilder.h +296 -0
  297. package/dist/prebuilt/Android-x86_64/include/geos/operation/buffer/BufferInputLineSimplifier.h +180 -0
  298. package/dist/prebuilt/Android-x86_64/include/geos/operation/buffer/BufferOp.h +307 -0
  299. package/dist/prebuilt/Android-x86_64/include/geos/operation/buffer/BufferParameters.h +319 -0
  300. package/dist/prebuilt/Android-x86_64/include/geos/operation/buffer/BufferSubgraph.h +202 -0
  301. package/dist/prebuilt/Android-x86_64/include/geos/operation/buffer/OffsetCurve.h +328 -0
  302. package/dist/prebuilt/Android-x86_64/include/geos/operation/buffer/OffsetCurveBuilder.h +257 -0
  303. package/dist/prebuilt/Android-x86_64/include/geos/operation/buffer/OffsetCurveSection.h +111 -0
  304. package/dist/prebuilt/Android-x86_64/include/geos/operation/buffer/OffsetSegmentGenerator.h +390 -0
  305. package/dist/prebuilt/Android-x86_64/include/geos/operation/buffer/OffsetSegmentString.h +215 -0
  306. package/dist/prebuilt/Android-x86_64/include/geos/operation/buffer/RightmostEdgeFinder.h +105 -0
  307. package/dist/prebuilt/Android-x86_64/include/geos/operation/buffer/SegmentMCIndex.h +56 -0
  308. package/dist/prebuilt/Android-x86_64/include/geos/operation/buffer/SubgraphDepthLocater.h +120 -0
  309. package/dist/prebuilt/Android-x86_64/include/geos/operation/cluster/AbstractClusterFinder.h +136 -0
  310. package/dist/prebuilt/Android-x86_64/include/geos/operation/cluster/Clusters.h +72 -0
  311. package/dist/prebuilt/Android-x86_64/include/geos/operation/cluster/DBSCANClusterFinder.h +59 -0
  312. package/dist/prebuilt/Android-x86_64/include/geos/operation/cluster/DisjointOperation.h +73 -0
  313. package/dist/prebuilt/Android-x86_64/include/geos/operation/cluster/EnvelopeDistanceClusterFinder.h +53 -0
  314. package/dist/prebuilt/Android-x86_64/include/geos/operation/cluster/EnvelopeIntersectsClusterFinder.h +44 -0
  315. package/dist/prebuilt/Android-x86_64/include/geos/operation/cluster/GeometryDistanceClusterFinder.h +59 -0
  316. package/dist/prebuilt/Android-x86_64/include/geos/operation/cluster/GeometryFlattener.h +46 -0
  317. package/dist/prebuilt/Android-x86_64/include/geos/operation/cluster/GeometryIntersectsClusterFinder.h +53 -0
  318. package/dist/prebuilt/Android-x86_64/include/geos/operation/cluster/UnionFind.h +137 -0
  319. package/dist/prebuilt/Android-x86_64/include/geos/operation/distance/ConnectedElementLocationFilter.h +76 -0
  320. package/dist/prebuilt/Android-x86_64/include/geos/operation/distance/ConnectedElementPointFilter.h +73 -0
  321. package/dist/prebuilt/Android-x86_64/include/geos/operation/distance/DistanceOp.h +228 -0
  322. package/dist/prebuilt/Android-x86_64/include/geos/operation/distance/FacetSequence.h +84 -0
  323. package/dist/prebuilt/Android-x86_64/include/geos/operation/distance/FacetSequenceTreeBuilder.h +69 -0
  324. package/dist/prebuilt/Android-x86_64/include/geos/operation/distance/GeometryLocation.h +126 -0
  325. package/dist/prebuilt/Android-x86_64/include/geos/operation/distance/IndexedFacetDistance.h +124 -0
  326. package/dist/prebuilt/Android-x86_64/include/geos/operation/intersection/Rectangle.h +236 -0
  327. package/dist/prebuilt/Android-x86_64/include/geos/operation/intersection/RectangleIntersection.h +174 -0
  328. package/dist/prebuilt/Android-x86_64/include/geos/operation/intersection/RectangleIntersectionBuilder.h +159 -0
  329. package/dist/prebuilt/Android-x86_64/include/geos/operation/linemerge/EdgeString.h +88 -0
  330. package/dist/prebuilt/Android-x86_64/include/geos/operation/linemerge/LineMergeDirectedEdge.h +78 -0
  331. package/dist/prebuilt/Android-x86_64/include/geos/operation/linemerge/LineMergeEdge.h +62 -0
  332. package/dist/prebuilt/Android-x86_64/include/geos/operation/linemerge/LineMergeGraph.h +91 -0
  333. package/dist/prebuilt/Android-x86_64/include/geos/operation/linemerge/LineMerger.h +149 -0
  334. package/dist/prebuilt/Android-x86_64/include/geos/operation/linemerge/LineSequencer.h +295 -0
  335. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlay/MaximalEdgeRing.h +105 -0
  336. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlay/MinimalEdgeRing.h +80 -0
  337. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlay/OverlayNodeFactory.h +56 -0
  338. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlay/PolygonBuilder.h +210 -0
  339. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlay/snap/GeometrySnapper.h +154 -0
  340. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlay/snap/LineStringSnapper.h +165 -0
  341. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlay/snap/SnapOverlayOp.h +134 -0
  342. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlay/validate/FuzzyPointLocator.h +97 -0
  343. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlay/validate/OffsetPointGenerator.h +87 -0
  344. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlay/validate/OverlayResultValidator.h +131 -0
  345. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/CoverageUnion.h +100 -0
  346. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/Edge.h +345 -0
  347. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/EdgeKey.h +120 -0
  348. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/EdgeMerger.h +81 -0
  349. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/EdgeNodingBuilder.h +255 -0
  350. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/EdgeSourceInfo.h +65 -0
  351. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/ElevationModel.h +170 -0
  352. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/IndexedPointOnLineLocator.h +64 -0
  353. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/InputGeometry.h +103 -0
  354. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/IntersectionPointBuilder.h +113 -0
  355. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/LineBuilder.h +189 -0
  356. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/LineLimiter.h +91 -0
  357. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/MaximalEdgeRing.h +134 -0
  358. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/OverlayEdge.h +279 -0
  359. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/OverlayEdgeRing.h +153 -0
  360. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/OverlayGraph.h +143 -0
  361. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/OverlayLabel.h +404 -0
  362. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/OverlayLabeller.h +207 -0
  363. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/OverlayMixedPoints.h +142 -0
  364. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/OverlayNG.h +410 -0
  365. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/OverlayNGRobust.h +174 -0
  366. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/OverlayPoints.h +120 -0
  367. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/OverlayUtil.h +213 -0
  368. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/PolygonBuilder.h +151 -0
  369. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/PrecisionReducer.h +75 -0
  370. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/PrecisionUtil.h +245 -0
  371. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/RingClipper.h +112 -0
  372. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/RobustClipEnvelopeComputer.h +84 -0
  373. package/dist/prebuilt/Android-x86_64/include/geos/operation/overlayng/UnaryUnionNG.h +95 -0
  374. package/dist/prebuilt/Android-x86_64/include/geos/operation/polygonize/BuildArea.h +75 -0
  375. package/dist/prebuilt/Android-x86_64/include/geos/operation/polygonize/EdgeRing.h +350 -0
  376. package/dist/prebuilt/Android-x86_64/include/geos/operation/polygonize/HoleAssigner.h +65 -0
  377. package/dist/prebuilt/Android-x86_64/include/geos/operation/polygonize/PolygonizeDirectedEdge.h +127 -0
  378. package/dist/prebuilt/Android-x86_64/include/geos/operation/polygonize/PolygonizeEdge.h +58 -0
  379. package/dist/prebuilt/Android-x86_64/include/geos/operation/polygonize/PolygonizeGraph.h +214 -0
  380. package/dist/prebuilt/Android-x86_64/include/geos/operation/polygonize/Polygonizer.h +260 -0
  381. package/dist/prebuilt/Android-x86_64/include/geos/operation/predicate/RectangleContains.h +119 -0
  382. package/dist/prebuilt/Android-x86_64/include/geos/operation/predicate/RectangleIntersects.h +98 -0
  383. package/dist/prebuilt/Android-x86_64/include/geos/operation/predicate/SegmentIntersectionTester.h +91 -0
  384. package/dist/prebuilt/Android-x86_64/include/geos/operation/relate/EdgeEndBuilder.h +70 -0
  385. package/dist/prebuilt/Android-x86_64/include/geos/operation/relate/EdgeEndBundle.h +104 -0
  386. package/dist/prebuilt/Android-x86_64/include/geos/operation/relate/EdgeEndBundleStar.h +65 -0
  387. package/dist/prebuilt/Android-x86_64/include/geos/operation/relate/RelateComputer.h +185 -0
  388. package/dist/prebuilt/Android-x86_64/include/geos/operation/relate/RelateNode.h +67 -0
  389. package/dist/prebuilt/Android-x86_64/include/geos/operation/relate/RelateNodeFactory.h +55 -0
  390. package/dist/prebuilt/Android-x86_64/include/geos/operation/relate/RelateNodeGraph.h +98 -0
  391. package/dist/prebuilt/Android-x86_64/include/geos/operation/relate/RelateOp.h +134 -0
  392. package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/AdjacentEdgeLocator.h +124 -0
  393. package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/BasicPredicate.h +105 -0
  394. package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/DimensionLocation.h +60 -0
  395. package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/EdgeSegmentIntersector.h +80 -0
  396. package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/EdgeSegmentOverlapAction.h +75 -0
  397. package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/EdgeSetIntersector.h +94 -0
  398. package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/IMPatternMatcher.h +87 -0
  399. package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/IMPredicate.h +131 -0
  400. package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/IntersectionMatrixPattern.h +65 -0
  401. package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/LineStringExtracter.h +77 -0
  402. package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/LinearBoundary.h +88 -0
  403. package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/NodeSection.h +166 -0
  404. package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/NodeSections.h +102 -0
  405. package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/PolygonNodeConverter.h +112 -0
  406. package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/RelateEdge.h +176 -0
  407. package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/RelateGeometry.h +272 -0
  408. package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/RelateMatrixPredicate.h +85 -0
  409. package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/RelateNG.h +295 -0
  410. package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/RelateNode.h +146 -0
  411. package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/RelatePointLocator.h +213 -0
  412. package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/RelatePredicate.h +652 -0
  413. package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/RelateSegmentString.h +161 -0
  414. package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/TopologyComputer.h +236 -0
  415. package/dist/prebuilt/Android-x86_64/include/geos/operation/relateng/TopologyPredicate.h +206 -0
  416. package/dist/prebuilt/Android-x86_64/include/geos/operation/sharedpaths/SharedPathsOp.h +161 -0
  417. package/dist/prebuilt/Android-x86_64/include/geos/operation/union/CascadedPolygonUnion.h +246 -0
  418. package/dist/prebuilt/Android-x86_64/include/geos/operation/union/CoverageUnion.h +65 -0
  419. package/dist/prebuilt/Android-x86_64/include/geos/operation/union/DisjointSubsetUnion.h +49 -0
  420. package/dist/prebuilt/Android-x86_64/include/geos/operation/union/OverlapUnion.h +139 -0
  421. package/dist/prebuilt/Android-x86_64/include/geos/operation/union/PointGeometryUnion.h +72 -0
  422. package/dist/prebuilt/Android-x86_64/include/geos/operation/union/UnaryUnionOp.h +243 -0
  423. package/dist/prebuilt/Android-x86_64/include/geos/operation/union/UnionStrategy.h +73 -0
  424. package/dist/prebuilt/Android-x86_64/include/geos/operation/valid/ConsistentAreaTester.h +137 -0
  425. package/dist/prebuilt/Android-x86_64/include/geos/operation/valid/IndexedNestedHoleTester.h +83 -0
  426. package/dist/prebuilt/Android-x86_64/include/geos/operation/valid/IndexedNestedPolygonTester.h +111 -0
  427. package/dist/prebuilt/Android-x86_64/include/geos/operation/valid/IsSimpleOp.h +299 -0
  428. package/dist/prebuilt/Android-x86_64/include/geos/operation/valid/IsValidOp.h +307 -0
  429. package/dist/prebuilt/Android-x86_64/include/geos/operation/valid/MakeValid.h +76 -0
  430. package/dist/prebuilt/Android-x86_64/include/geos/operation/valid/PolygonIntersectionAnalyzer.h +125 -0
  431. package/dist/prebuilt/Android-x86_64/include/geos/operation/valid/PolygonRing.h +231 -0
  432. package/dist/prebuilt/Android-x86_64/include/geos/operation/valid/PolygonRingSelfNode.h +84 -0
  433. package/dist/prebuilt/Android-x86_64/include/geos/operation/valid/PolygonRingTouch.h +65 -0
  434. package/dist/prebuilt/Android-x86_64/include/geos/operation/valid/PolygonTopologyAnalyzer.h +211 -0
  435. package/dist/prebuilt/Android-x86_64/include/geos/operation/valid/RepeatedPointRemover.h +60 -0
  436. package/dist/prebuilt/Android-x86_64/include/geos/operation/valid/RepeatedPointTester.h +66 -0
  437. package/dist/prebuilt/Android-x86_64/include/geos/operation/valid/TopologyValidationError.h +76 -0
  438. package/dist/prebuilt/Android-x86_64/include/geos/planargraph/DirectedEdge.h +237 -0
  439. package/dist/prebuilt/Android-x86_64/include/geos/planargraph/DirectedEdgeStar.h +149 -0
  440. package/dist/prebuilt/Android-x86_64/include/geos/planargraph/Edge.h +141 -0
  441. package/dist/prebuilt/Android-x86_64/include/geos/planargraph/GraphComponent.h +182 -0
  442. package/dist/prebuilt/Android-x86_64/include/geos/planargraph/Node.h +158 -0
  443. package/dist/prebuilt/Android-x86_64/include/geos/planargraph/NodeMap.h +135 -0
  444. package/dist/prebuilt/Android-x86_64/include/geos/planargraph/PlanarGraph.h +293 -0
  445. package/dist/prebuilt/Android-x86_64/include/geos/planargraph/Subgraph.h +181 -0
  446. package/dist/prebuilt/Android-x86_64/include/geos/planargraph/algorithm/ConnectedSubgraphFinder.h +92 -0
  447. package/dist/prebuilt/Android-x86_64/include/geos/precision/CommonBits.h +97 -0
  448. package/dist/prebuilt/Android-x86_64/include/geos/precision/CommonBitsOp.h +172 -0
  449. package/dist/prebuilt/Android-x86_64/include/geos/precision/CommonBitsRemover.h +92 -0
  450. package/dist/prebuilt/Android-x86_64/include/geos/precision/EnhancedPrecisionOp.h +105 -0
  451. package/dist/prebuilt/Android-x86_64/include/geos/precision/GeometryPrecisionReducer.h +202 -0
  452. package/dist/prebuilt/Android-x86_64/include/geos/precision/MinimumClearance.h +57 -0
  453. package/dist/prebuilt/Android-x86_64/include/geos/precision/PointwisePrecisionReducerTransformer.h +74 -0
  454. package/dist/prebuilt/Android-x86_64/include/geos/precision/PrecisionReducerCoordinateOperation.h +65 -0
  455. package/dist/prebuilt/Android-x86_64/include/geos/precision/PrecisionReducerTransformer.h +95 -0
  456. package/dist/prebuilt/Android-x86_64/include/geos/precision/SimpleGeometryPrecisionReducer.h +88 -0
  457. package/dist/prebuilt/Android-x86_64/include/geos/profiler.h +185 -0
  458. package/dist/prebuilt/Android-x86_64/include/geos/shape/fractal/HilbertCode.h +128 -0
  459. package/dist/prebuilt/Android-x86_64/include/geos/shape/fractal/HilbertEncoder.h +96 -0
  460. package/dist/prebuilt/Android-x86_64/include/geos/shape/fractal/MortonCode.h +140 -0
  461. package/dist/prebuilt/Android-x86_64/include/geos/simplify/ComponentJumpChecker.h +120 -0
  462. package/dist/prebuilt/Android-x86_64/include/geos/simplify/DouglasPeuckerLineSimplifier.h +103 -0
  463. package/dist/prebuilt/Android-x86_64/include/geos/simplify/DouglasPeuckerSimplifier.h +84 -0
  464. package/dist/prebuilt/Android-x86_64/include/geos/simplify/LineSegmentIndex.h +87 -0
  465. package/dist/prebuilt/Android-x86_64/include/geos/simplify/LinkedLine.h +84 -0
  466. package/dist/prebuilt/Android-x86_64/include/geos/simplify/LinkedRing.h +69 -0
  467. package/dist/prebuilt/Android-x86_64/include/geos/simplify/PolygonHullSimplifier.h +232 -0
  468. package/dist/prebuilt/Android-x86_64/include/geos/simplify/RingHull.h +209 -0
  469. package/dist/prebuilt/Android-x86_64/include/geos/simplify/RingHullIndex.h +55 -0
  470. package/dist/prebuilt/Android-x86_64/include/geos/simplify/TaggedLineSegment.h +83 -0
  471. package/dist/prebuilt/Android-x86_64/include/geos/simplify/TaggedLineString.h +145 -0
  472. package/dist/prebuilt/Android-x86_64/include/geos/simplify/TaggedLineStringSimplifier.h +178 -0
  473. package/dist/prebuilt/Android-x86_64/include/geos/simplify/TaggedLinesSimplifier.h +88 -0
  474. package/dist/prebuilt/Android-x86_64/include/geos/simplify/TopologyPreservingSimplifier.h +93 -0
  475. package/dist/prebuilt/Android-x86_64/include/geos/triangulate/DelaunayTriangulationBuilder.h +166 -0
  476. package/dist/prebuilt/Android-x86_64/include/geos/triangulate/IncrementalDelaunayTriangulator.h +106 -0
  477. package/dist/prebuilt/Android-x86_64/include/geos/triangulate/VoronoiDiagramBuilder.h +157 -0
  478. package/dist/prebuilt/Android-x86_64/include/geos/triangulate/polygon/ConstrainedDelaunayTriangulator.h +101 -0
  479. package/dist/prebuilt/Android-x86_64/include/geos/triangulate/polygon/PolygonEarClipper.h +218 -0
  480. package/dist/prebuilt/Android-x86_64/include/geos/triangulate/polygon/PolygonHoleJoiner.h +267 -0
  481. package/dist/prebuilt/Android-x86_64/include/geos/triangulate/polygon/PolygonNoder.h +101 -0
  482. package/dist/prebuilt/Android-x86_64/include/geos/triangulate/polygon/PolygonTriangulator.h +105 -0
  483. package/dist/prebuilt/Android-x86_64/include/geos/triangulate/polygon/TriDelaunayImprover.h +147 -0
  484. package/dist/prebuilt/Android-x86_64/include/geos/triangulate/quadedge/LastFoundQuadEdgeLocator.h +63 -0
  485. package/dist/prebuilt/Android-x86_64/include/geos/triangulate/quadedge/LocateFailureException.h +37 -0
  486. package/dist/prebuilt/Android-x86_64/include/geos/triangulate/quadedge/QuadEdge.h +443 -0
  487. package/dist/prebuilt/Android-x86_64/include/geos/triangulate/quadedge/QuadEdgeLocator.h +48 -0
  488. package/dist/prebuilt/Android-x86_64/include/geos/triangulate/quadedge/QuadEdgeQuartet.h +64 -0
  489. package/dist/prebuilt/Android-x86_64/include/geos/triangulate/quadedge/QuadEdgeSubdivision.h +514 -0
  490. package/dist/prebuilt/Android-x86_64/include/geos/triangulate/quadedge/TrianglePredicate.h +124 -0
  491. package/dist/prebuilt/Android-x86_64/include/geos/triangulate/quadedge/TriangleVisitor.h +48 -0
  492. package/dist/prebuilt/Android-x86_64/include/geos/triangulate/quadedge/Vertex.h +312 -0
  493. package/dist/prebuilt/Android-x86_64/include/geos/triangulate/tri/Tri.h +186 -0
  494. package/dist/prebuilt/Android-x86_64/include/geos/triangulate/tri/TriEdge.h +80 -0
  495. package/dist/prebuilt/Android-x86_64/include/geos/triangulate/tri/TriList.h +182 -0
  496. package/dist/prebuilt/Android-x86_64/include/geos/triangulate/tri/TriangulationBuilder.h +86 -0
  497. package/dist/prebuilt/Android-x86_64/include/geos/unload.h +33 -0
  498. package/dist/prebuilt/Android-x86_64/include/geos/util/Assert.h +66 -0
  499. package/dist/prebuilt/Android-x86_64/include/geos/util/AssertionFailedException.h +48 -0
  500. package/dist/prebuilt/Android-x86_64/include/geos/util/CoordinateArrayFilter.h +85 -0
  501. package/dist/prebuilt/Android-x86_64/include/geos/util/GEOSException.h +64 -0
  502. package/dist/prebuilt/Android-x86_64/include/geos/util/GeometricShapeFactory.h +198 -0
  503. package/dist/prebuilt/Android-x86_64/include/geos/util/IllegalArgumentException.h +50 -0
  504. package/dist/prebuilt/Android-x86_64/include/geos/util/IllegalStateException.h +42 -0
  505. package/dist/prebuilt/Android-x86_64/include/geos/util/Interrupt.h +71 -0
  506. package/dist/prebuilt/Android-x86_64/include/geos/util/Machine.h +26 -0
  507. package/dist/prebuilt/Android-x86_64/include/geos/util/TopologyException.h +64 -0
  508. package/dist/prebuilt/Android-x86_64/include/geos/util/UniqueCoordinateArrayFilter.h +114 -0
  509. package/dist/prebuilt/Android-x86_64/include/geos/util/UnsupportedOperationException.h +52 -0
  510. package/dist/prebuilt/Android-x86_64/include/geos/util/math.h +45 -0
  511. package/dist/prebuilt/Android-x86_64/include/geos/util/string.h +31 -0
  512. package/dist/prebuilt/Android-x86_64/include/geos/util.h +86 -0
  513. package/dist/prebuilt/Android-x86_64/include/geos/vend/include_nlohmann_json.hpp +24 -0
  514. package/dist/prebuilt/Android-x86_64/include/geos/vend/json.hpp +25597 -0
  515. package/dist/prebuilt/Android-x86_64/include/geos/version.h +37 -0
  516. package/dist/prebuilt/Android-x86_64/include/geos.h +40 -0
  517. package/dist/prebuilt/Android-x86_64/include/geos_c.h +6121 -0
  518. package/dist/prebuilt/Android-x86_64/lib/cmake/GEOS/geos-config-version.cmake +43 -0
  519. package/dist/prebuilt/Android-x86_64/lib/cmake/GEOS/geos-config.cmake +11 -0
  520. package/dist/prebuilt/Android-x86_64/lib/cmake/GEOS/geos-targets-release.cmake +30 -0
  521. package/dist/prebuilt/Android-x86_64/lib/cmake/GEOS/geos-targets.cmake +124 -0
  522. package/dist/prebuilt/Android-x86_64/lib/libgeos.so +0 -0
  523. package/dist/prebuilt/Android-x86_64/lib/libgeos_c.so +0 -0
  524. package/dist/prebuilt/Android-x86_64/lib/pkgconfig/geos.pc +12 -0
  525. package/dist/prebuilt/iOS-iphoneos/bin/geosop.app/Info.plist +0 -0
  526. package/dist/prebuilt/iOS-iphoneos/bin/geosop.app/_CodeSignature/CodeResources +1 -1
  527. package/dist/prebuilt/iOS-iphoneos/bin/geosop.app/geosop +0 -0
  528. package/dist/prebuilt/iOS-iphoneos/lib/libgeos.a +0 -0
  529. package/dist/prebuilt/iOS-iphoneos/lib/libgeos_c.a +0 -0
  530. package/dist/prebuilt/iOS-iphonesimulator/bin/geosop.app/Info.plist +0 -0
  531. package/dist/prebuilt/iOS-iphonesimulator/bin/geosop.app/_CodeSignature/CodeResources +1 -1
  532. package/dist/prebuilt/iOS-iphonesimulator/bin/geosop.app/geosop +0 -0
  533. package/dist/prebuilt/iOS-iphonesimulator/lib/libgeos.a +0 -0
  534. package/dist/prebuilt/iOS-iphonesimulator/lib/libgeos_c.a +0 -0
  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,193 @@
1
+ /**********************************************************************
2
+ *
3
+ * GEOS - Geometry Engine Open Source
4
+ * http://geos.osgeo.org
5
+ *
6
+ * Copyright (C) 2014 Mateusz Loskot <mateusz@loskot.net>
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: algorithm/CGAlgorithmsDD.java r789 (JTS-1.14)
16
+ *
17
+ **********************************************************************/
18
+
19
+ #pragma once
20
+
21
+ #include <geos/export.h>
22
+ #include <geos/math/DD.h>
23
+
24
+ // Forward declarations
25
+ namespace geos {
26
+ namespace geom {
27
+ class CoordinateXY;
28
+ class CoordinateSequence;
29
+ }
30
+ }
31
+
32
+ using namespace geos::math;
33
+
34
+ namespace geos {
35
+ namespace algorithm { // geos::algorithm
36
+
37
+ /// Implements basic computational geometry algorithms using extended precision float-point arithmetic.
38
+ class GEOS_DLL CGAlgorithmsDD {
39
+
40
+ public:
41
+
42
+ enum {
43
+ CLOCKWISE = -1,
44
+ COLLINEAR = 0,
45
+ COUNTERCLOCKWISE = 1
46
+ };
47
+
48
+ enum {
49
+ RIGHT = -1,
50
+ LEFT = 1,
51
+ STRAIGHT = 0,
52
+ FAILURE = 2
53
+ };
54
+
55
+ /** \brief
56
+ * Returns the index of the direction of the point `q` relative to
57
+ * a vector specified by `p1-p2`.
58
+ *
59
+ * @param p1 the origin point of the vector
60
+ * @param p2 the final point of the vector
61
+ * @param q the point to compute the direction to
62
+ *
63
+ * @return 1 if q is counter-clockwise (left) from p1-p2
64
+ * @return -1 if q is clockwise (right) from p1-p2
65
+ * @return 0 if q is collinear with p1-p2
66
+ */
67
+ static int orientationIndex(const geom::CoordinateXY& p1,
68
+ const geom::CoordinateXY& p2,
69
+ const geom::CoordinateXY& q);
70
+
71
+
72
+ static int orientationIndex(double p1x, double p1y,
73
+ double p2x, double p2y,
74
+ double qx, double qy);
75
+
76
+ /**
77
+ * A filter for computing the orientation index of three coordinates.
78
+ *
79
+ * If the orientation can be computed safely using standard DP arithmetic,
80
+ * this routine returns the orientation index. Otherwise, a value `i > 1` is
81
+ * returned. In this case the orientation index must be computed using some
82
+ * other more robust method.
83
+ *
84
+ * The filter is fast to compute, so can be used to avoid the use of slower
85
+ * robust methods except when they are really needed, thus providing better
86
+ * average performance.
87
+ *
88
+ * Uses an approach due to Jonathan Shewchuk, which is in the public domain.
89
+ */
90
+ static inline int orientationIndexFilter(
91
+ double pax, double pay,
92
+ double pbx, double pby,
93
+ double pcx, double pcy)
94
+ {
95
+ /**
96
+ * A value which is safely greater than the relative round-off
97
+ * error in double-precision numbers
98
+ */
99
+ double constexpr DP_SAFE_EPSILON = 1e-15;
100
+
101
+ double detsum;
102
+ double const detleft = (pax - pcx) * (pby - pcy);
103
+ double const detright = (pay - pcy) * (pbx - pcx);
104
+ double const det = detleft - detright;
105
+
106
+ if(detleft > 0.0) {
107
+ if(detright <= 0.0) {
108
+ return orientation(det);
109
+ }
110
+ else {
111
+ detsum = detleft + detright;
112
+ }
113
+ }
114
+ else if(detleft < 0.0) {
115
+ if(detright >= 0.0) {
116
+ return orientation(det);
117
+ }
118
+ else {
119
+ detsum = -detleft - detright;
120
+ }
121
+ }
122
+ else {
123
+ return orientation(det);
124
+ }
125
+
126
+ double const errbound = DP_SAFE_EPSILON * detsum;
127
+ if((det >= errbound) || (-det >= errbound)) {
128
+ return orientation(det);
129
+ }
130
+ return CGAlgorithmsDD::FAILURE;
131
+ };
132
+
133
+ static int
134
+ orientation(double x)
135
+ {
136
+ if(x < 0) {
137
+ return CGAlgorithmsDD::RIGHT;
138
+ }
139
+ if(x > 0) {
140
+ return CGAlgorithmsDD::LEFT;
141
+ }
142
+ return CGAlgorithmsDD::STRAIGHT;
143
+ };
144
+
145
+ /**
146
+ * If the lines are parallel (either identical
147
+ * or separate) a null value is returned.
148
+ * @param p1 an endpoint of line segment 1
149
+ * @param p2 an endpoint of line segment 1
150
+ * @param q1 an endpoint of line segment 2
151
+ * @param q2 an endpoint of line segment 2
152
+ * @return an intersection point if one exists, or null if the lines are parallel
153
+ */
154
+ static geom::CoordinateXY intersection(const geom::CoordinateXY& p1, const geom::CoordinateXY& p2,
155
+ const geom::CoordinateXY& q1, const geom::CoordinateXY& q2);
156
+
157
+ static int signOfDet2x2(double dx1, double dy1, double dx2, double dy2);
158
+
159
+ static DD detDD(double x1, double y1, double x2, double y2);
160
+ static DD detDD(const DD& x1, const DD& y1, const DD& x2, const DD& y2);
161
+
162
+ /** \brief
163
+ * Computes the circumcentre of a triangle.
164
+ *
165
+ * The circumcentre is the centre of the circumcircle, the smallest circle
166
+ * which encloses the triangle. It is also the common intersection point of
167
+ * the perpendicular bisectors of the sides of the triangle, and is the only
168
+ * point which has equal distance to all three vertices of the triangle.
169
+ *
170
+ * The circumcentre does not necessarily lie within the triangle. For example,
171
+ * the circumcentre of an obtuse isosceles triangle lies outside the triangle.
172
+ *
173
+ * This method uses @ref geos::math::DD extended-precision arithmetic to provide more accurate
174
+ * results than geos::geom::Triangle::circumcentre.
175
+ *
176
+ * @param a a vertex of the triangle
177
+ * @param b a vertex of the triangle
178
+ * @param c a vertex of the triangle
179
+ * @return the circumcentre of the triangle
180
+ */
181
+ static geom::CoordinateXY circumcentreDD(const geom::CoordinateXY& a, const geom::CoordinateXY& b, const geom::CoordinateXY& c);
182
+
183
+ protected:
184
+
185
+ static int signOfDet2x2(const DD& x1, const DD& y1, const DD& x2, const DD& y2);
186
+
187
+ };
188
+
189
+ } // namespace geos::algorithm
190
+ } // namespace geos
191
+
192
+
193
+
@@ -0,0 +1,161 @@
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: algorithm/CentralEndpointIntersector.java rev. 1.1
16
+ *
17
+ **********************************************************************/
18
+
19
+ #pragma once
20
+
21
+ #include <geos/export.h>
22
+ #include <geos/geom/Coordinate.h>
23
+
24
+ #include <string>
25
+ #include <limits>
26
+
27
+ #ifdef _MSC_VER
28
+ #pragma warning(push)
29
+ #pragma warning(disable: 4251) // warning C4251: needs to have dll-interface to be used by clients of class
30
+ #endif
31
+
32
+ // Forward declarations
33
+ namespace geos {
34
+ namespace geom {
35
+ //class PrecisionModel;
36
+ }
37
+ }
38
+
39
+ namespace geos {
40
+ namespace algorithm { // geos::algorithm
41
+
42
+ /** \brief
43
+ * Computes an approximate intersection of two line segments
44
+ * by taking the most central of the endpoints of the segments.
45
+ *
46
+ * This is effective in cases where the segments are nearly parallel
47
+ * and should intersect at an endpoint.
48
+ * It is also a reasonable strategy for cases where the
49
+ * endpoint of one segment lies on or almost on the interior of another one.
50
+ * Taking the most central endpoint ensures that the computed intersection
51
+ * point lies in the envelope of the segments.
52
+ * Also, by always returning one of the input points, this should result
53
+ * in reducing segment fragmentation.
54
+ * Intended to be used as a last resort for
55
+ * computing ill-conditioned intersection situations which
56
+ * cause other methods to fail.
57
+ *
58
+ * @author Martin Davis
59
+ * @version 1.8
60
+ */
61
+ class GEOS_DLL CentralEndpointIntersector {
62
+
63
+ public:
64
+
65
+ static const geom::Coordinate&
66
+ getIntersection(const geom::Coordinate& p00,
67
+ const geom::Coordinate& p01, const geom::Coordinate& p10,
68
+ const geom::Coordinate& p11)
69
+ {
70
+ CentralEndpointIntersector intor(p00, p01, p10, p11);
71
+ return intor.getIntersection();
72
+ }
73
+
74
+ CentralEndpointIntersector(const geom::Coordinate& p00,
75
+ const geom::Coordinate& p01,
76
+ const geom::Coordinate& p10,
77
+ const geom::Coordinate& p11)
78
+ :
79
+ _pts(4)
80
+ {
81
+ _pts[0] = p00;
82
+ _pts[1] = p01;
83
+ _pts[2] = p10;
84
+ _pts[3] = p11;
85
+ compute();
86
+ }
87
+
88
+ const geom::Coordinate&
89
+ getIntersection() const
90
+ {
91
+ return _intPt;
92
+ }
93
+
94
+
95
+ private:
96
+
97
+ // This is likely overkill.. we'll be allocating heap
98
+ // memory at every call !
99
+ std::vector<geom::Coordinate> _pts;
100
+
101
+ geom::Coordinate _intPt;
102
+
103
+ void
104
+ compute()
105
+ {
106
+ geom::Coordinate centroid = average(_pts);
107
+ _intPt = findNearestPoint(centroid, _pts);
108
+ }
109
+
110
+ static geom::Coordinate
111
+ average(
112
+ const std::vector<geom::Coordinate>& pts)
113
+ {
114
+ geom::Coordinate avg(0, 0);
115
+ std::size_t n = pts.size();
116
+ if(! n) {
117
+ return avg;
118
+ }
119
+ for(std::size_t i = 0; i < n; ++i) {
120
+ avg.x += pts[i].x;
121
+ avg.y += pts[i].y;
122
+ }
123
+ avg.x /= n;
124
+ avg.y /= n;
125
+ return avg;
126
+ }
127
+
128
+ /**
129
+ * Determines a point closest to the given point.
130
+ *
131
+ * @param p the point to compare against
132
+ * @param p1 a potential result point
133
+ * @param p2 a potential result point
134
+ * @param q1 a potential result point
135
+ * @param q2 a potential result point
136
+ * @return the point closest to the input point p
137
+ */
138
+ geom::Coordinate
139
+ findNearestPoint(const geom::Coordinate& p,
140
+ const std::vector<geom::Coordinate>& pts) const
141
+ {
142
+ double minDistSq = DoubleInfinity;
143
+ geom::Coordinate result = geom::Coordinate::getNull();
144
+ for(std::size_t i = 0, n = pts.size(); i < n; ++i) {
145
+ double distSq = p.distanceSquared(pts[i]);
146
+ if(distSq < minDistSq) {
147
+ minDistSq = distSq;
148
+ result = pts[i];
149
+ }
150
+ }
151
+ return result;
152
+ }
153
+ };
154
+
155
+ } // namespace geos::algorithm
156
+ } // namespace geos
157
+
158
+ #ifdef _MSC_VER
159
+ #pragma warning(pop)
160
+ #endif
161
+
@@ -0,0 +1,157 @@
1
+ /**********************************************************************
2
+ *
3
+ * GEOS - Geometry Engine Open Source
4
+ * http://geos.osgeo.org
5
+ *
6
+ * Copyright (C) 2013 Sandro Santilli <strk@kbt.io>
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: algorithm/Centroid.java r728 (JTS-0.13+)
16
+ *
17
+ **********************************************************************/
18
+
19
+ #pragma once
20
+
21
+ #include <geos/export.h>
22
+ #include <geos/geom/Coordinate.h> // for composition
23
+ #include <memory> // for std::unique_ptr
24
+
25
+ // Forward declarations
26
+ namespace geos {
27
+ namespace geom {
28
+ class Geometry;
29
+ class Polygon;
30
+ class CoordinateSequence;
31
+ }
32
+ }
33
+
34
+
35
+ namespace geos {
36
+ namespace algorithm { // geos::algorithm
37
+
38
+ /** \brief
39
+ * Computes the centroid of a [Geometry](@ref geom::Geometry) of any dimension.
40
+ *
41
+ * If the geometry is nomimally of higher dimension, but contains only
42
+ * components having a lower effective dimension (i.e. zero length or area),
43
+ * the centroid will be computed appropriately.
44
+ *
45
+ * ### Algorithm #
46
+ *
47
+ * - **Dimension = 2** - Based on the usual algorithm for calculating
48
+ * the centroid as a weighted sum of the centroids
49
+ * of a decomposition of the area into (possibly overlapping) triangles.
50
+ * The algorithm has been extended to handle holes and multi-polygons.
51
+ * See http://www.faqs.org/faqs/graphics/algorithms-faq/
52
+ * for further details of the basic approach.
53
+ * - **Dimension = 1** - Computes the average of the midpoints
54
+ * of all line segments weighted by the segment length.
55
+ * - **Dimension = 0** - Compute the average coordinate over all points.
56
+ *
57
+ * If the input geometries are empty, a `null` Coordinate is returned.
58
+ *
59
+ */
60
+ class GEOS_DLL Centroid {
61
+
62
+ public:
63
+
64
+ /** \brief
65
+ * Computes the centroid point of a geometry.
66
+ *
67
+ * @param geom the geometry to use
68
+ * @param cent will be set to the centroid point, if any
69
+ *
70
+ * @return `true` if a centroid could be computed,
71
+ * `false` otherwise (empty geom)
72
+ */
73
+ static bool getCentroid(const geom::Geometry& geom, geom::CoordinateXY& cent);
74
+
75
+ /** \brief
76
+ * Creates a new instance for computing the centroid of a geometry
77
+ */
78
+ Centroid(const geom::Geometry& geom)
79
+ :
80
+ areasum2(0.0),
81
+ totalLength(0.0),
82
+ ptCount(0)
83
+ {
84
+ add(geom);
85
+ }
86
+
87
+ /** \brief
88
+ * Gets the computed centroid.
89
+ *
90
+ * @param cent will be set to the centroid point, if any
91
+ *
92
+ * @return `true` if a centroid could be computed,
93
+ * `false` otherwise (empty geom)
94
+ */
95
+ bool getCentroid(geom::CoordinateXY& cent) const;
96
+
97
+ private:
98
+
99
+ std::unique_ptr<geom::CoordinateXY> areaBasePt;
100
+ geom::CoordinateXY triangleCent3;
101
+ geom::CoordinateXY cg3;
102
+ geom::CoordinateXY lineCentSum;
103
+ geom::CoordinateXY ptCentSum;
104
+ double areasum2;
105
+ double totalLength;
106
+ int ptCount;
107
+
108
+ /**
109
+ * Adds a Geometry to the centroid total.
110
+ *
111
+ * @param geom the geometry to add
112
+ */
113
+ void add(const geom::Geometry& geom);
114
+
115
+ void setAreaBasePoint(const geom::CoordinateXY& basePt);
116
+
117
+ void add(const geom::Polygon& poly);
118
+
119
+ void addShell(const geom::CoordinateSequence& pts);
120
+
121
+ void addHole(const geom::CoordinateSequence& pts);
122
+
123
+ void addTriangle(const geom::CoordinateXY& p0, const geom::CoordinateXY& p1, const geom::CoordinateXY& p2,
124
+ bool isPositiveArea);
125
+
126
+ /**
127
+ * Computes three times the centroid of the triangle p1-p2-p3.
128
+ * The factor of 3 is
129
+ * left in to permit division to be avoided until later.
130
+ */
131
+ static void centroid3(const geom::CoordinateXY& p1, const geom::CoordinateXY& p2, const geom::CoordinateXY& p3,
132
+ geom::CoordinateXY& c);
133
+
134
+ /**
135
+ * Returns twice the signed area of the triangle p1-p2-p3.
136
+ * The area is positive if the triangle is oriented CCW, and negative if CW.
137
+ */
138
+ static double area2(const geom::CoordinateXY& p1, const geom::CoordinateXY& p2, const geom::CoordinateXY& p3);
139
+
140
+ /**
141
+ * Adds the line segments defined by an array of coordinates
142
+ * to the linear centroid accumulators.
143
+ *
144
+ * @param pts an array of {@link Coordinate}s
145
+ */
146
+ void addLineSegments(const geom::CoordinateSequence& pts);
147
+
148
+ /**
149
+ * Adds a point to the point centroid accumulator.
150
+ * @param pt a {@link Coordinate}
151
+ */
152
+ void addPoint(const geom::CoordinateXY& pt);
153
+ };
154
+
155
+ } // namespace geos::algorithm
156
+ } // namespace geos
157
+
@@ -0,0 +1,37 @@
1
+ /**********************************************************************
2
+ *
3
+ * GEOS - Geometry Engine Open Source
4
+ * http://geos.osgeo.org
5
+ *
6
+ * Copyright (C) 2024 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/Coordinate.h>
19
+ #include <geos/geom/Envelope.h>
20
+
21
+ namespace geos {
22
+ namespace algorithm {
23
+
24
+ class GEOS_DLL CircularArcs {
25
+ public:
26
+
27
+ /// Return the circle center of an arc defined by three points
28
+ static geom::CoordinateXY getCenter(const geom::CoordinateXY& p0, const geom::CoordinateXY& p1,
29
+ const geom::CoordinateXY& p2);
30
+
31
+ /// Expand an envelope to include an arc defined by three points
32
+ static void expandEnvelope(geom::Envelope& e, const geom::CoordinateXY& p0, const geom::CoordinateXY& p1,
33
+ const geom::CoordinateXY& p2);
34
+ };
35
+
36
+ }
37
+ }