@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,214 @@
1
+ /**********************************************************************
2
+ *
3
+ * GEOS - Geometry Engine Open Source
4
+ * http://geos.osgeo.org
5
+ *
6
+ * Copyright (C) 2006 Refractions Research Inc.
7
+ * Copyright (C) 2001-2002 Vivid Solutions 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/polygonize/PolygonizeGraph.java rev. 974
17
+ *
18
+ **********************************************************************/
19
+
20
+ #pragma once
21
+
22
+ #include <geos/export.h>
23
+
24
+ #include <geos/planargraph/PlanarGraph.h> // for inheritance
25
+
26
+ #include <vector>
27
+
28
+ #ifdef _MSC_VER
29
+ #pragma warning(push)
30
+ #pragma warning(disable: 4251) // warning C4251: needs to have dll-interface to be used by clients of class
31
+ #endif
32
+
33
+ // Forward declarations
34
+ namespace geos {
35
+ namespace geom {
36
+ class LineString;
37
+ class GeometryFactory;
38
+ class Coordinate;
39
+ class CoordinateSequence;
40
+ }
41
+ namespace planargraph {
42
+ class Node;
43
+ class Edge;
44
+ class DirectedEdge;
45
+ }
46
+ namespace operation {
47
+ namespace polygonize {
48
+ class EdgeRing;
49
+ class PolygonizeDirectedEdge;
50
+ }
51
+ }
52
+ }
53
+
54
+ namespace geos {
55
+ namespace operation { // geos::operation
56
+ namespace polygonize { // geos::operation::polygonize
57
+
58
+
59
+ /** \brief
60
+ * Represents a planar graph of edges that can be used to compute a
61
+ * polygonization, and implements the algorithms to compute the
62
+ * EdgeRings formed by the graph.
63
+ *
64
+ * The marked flag on DirectedEdge is used to indicate that a directed edge
65
+ * has be logically deleted from the graph.
66
+ *
67
+ */
68
+ class GEOS_DLL PolygonizeGraph: public planargraph::PlanarGraph {
69
+
70
+ public:
71
+
72
+ /**
73
+ * \brief
74
+ * Deletes all edges at a node
75
+ */
76
+ static void deleteAllEdges(planargraph::Node* node);
77
+
78
+ /**
79
+ * \brief
80
+ * Create a new polygonization graph.
81
+ */
82
+ explicit PolygonizeGraph(const geom::GeometryFactory* newFactory);
83
+
84
+ /**
85
+ * \brief
86
+ * Destroy a polygonization graph.
87
+ */
88
+ ~PolygonizeGraph() override;
89
+
90
+ /**
91
+ * \brief
92
+ * Add a LineString forming an edge of the polygon graph.
93
+ * @param line the line to add
94
+ */
95
+ void addEdge(const geom::LineString* line);
96
+
97
+ /**
98
+ * \brief
99
+ * Computes the EdgeRings formed by the edges in this graph.
100
+ *
101
+ * @param edgeRingList : the EdgeRing found by the
102
+ * polygonization process will be pushed here.
103
+ *
104
+ */
105
+ void getEdgeRings(std::vector<EdgeRing*>& edgeRingList);
106
+
107
+ /**
108
+ * \brief
109
+ * Finds and removes all cut edges from the graph.
110
+ *
111
+ * @param cutLines : the list of the LineString forming the removed
112
+ * cut edges will be pushed here.
113
+ *
114
+ * TODO: document ownership of the returned LineStrings
115
+ */
116
+ void deleteCutEdges(std::vector<const geom::LineString*>& cutLines);
117
+
118
+ /** \brief
119
+ * Marks all edges from the graph which are "dangles".
120
+ *
121
+ * Dangles are which are incident on a node with degree 1.
122
+ * This process is recursive, since removing a dangling edge
123
+ * may result in another edge becoming a dangle.
124
+ * In order to handle large recursion depths efficiently,
125
+ * an explicit recursion stack is used
126
+ *
127
+ * @param dangleLines : the LineStrings that formed dangles will
128
+ * be push_back'ed here
129
+ */
130
+ void deleteDangles(std::vector<const geom::LineString*>& dangleLines);
131
+
132
+ private:
133
+
134
+ static int getDegreeNonDeleted(planargraph::Node* node);
135
+
136
+ static int getDegree(planargraph::Node* node, long label);
137
+
138
+ const geom::GeometryFactory* factory;
139
+
140
+ planargraph::Node* getNode(const geom::Coordinate& pt);
141
+
142
+ void computeNextCWEdges();
143
+
144
+ /**
145
+ * \brief
146
+ * Convert the maximal edge rings found by the initial graph traversal
147
+ * into the minimal edge rings required by JTS polygon topology rules.
148
+ *
149
+ * @param ringEdges
150
+ * the list of start edges for the edgeRings to convert.
151
+ *
152
+ */
153
+ void convertMaximalToMinimalEdgeRings(
154
+ std::vector<PolygonizeDirectedEdge*>& ringEdges);
155
+
156
+ /**
157
+ * \brief
158
+ * Finds all nodes in a maximal edgering
159
+ * which are self-intersection nodes
160
+ *
161
+ * @param startDE
162
+ * @param label
163
+ * @param intNodes : intersection nodes found will be pushed here
164
+ * the vector won't be cleared before pushing.
165
+ */
166
+ static void findIntersectionNodes(PolygonizeDirectedEdge* startDE,
167
+ long label, std::vector<planargraph::Node*>& intNodes
168
+ );
169
+
170
+ /**
171
+ * Finds and labels all edgerings in the graph.
172
+ *
173
+ * The edge rings are labeling with unique integers.
174
+ * The labeling allows detecting cut edges.
175
+ *
176
+ * @param dirEdgesIn a list of the DirectedEdges in the graph
177
+ * @param dirEdgesOut each ring found will be pushed here
178
+ */
179
+ static void findLabeledEdgeRings(
180
+ std::vector<planargraph::DirectedEdge*>& dirEdgesIn,
181
+ std::vector<PolygonizeDirectedEdge*>& dirEdgesOut);
182
+
183
+ static void label(std::vector<PolygonizeDirectedEdge*>& dirEdges, long label);
184
+ static void label(std::vector<planargraph::DirectedEdge*>& dirEdges, long label);
185
+
186
+ static void computeNextCWEdges(planargraph::Node* node);
187
+
188
+ /**
189
+ * \brief
190
+ * Computes the next edge pointers going CCW around the given node,
191
+ * for the given edgering label.
192
+ * This algorithm has the effect of converting maximal edgerings
193
+ * into minimal edgerings
194
+ */
195
+ static void computeNextCCWEdges(planargraph::Node* node, long label);
196
+
197
+ EdgeRing* findEdgeRing(PolygonizeDirectedEdge* startDE);
198
+
199
+ /* These are for memory management */
200
+ std::vector<planargraph::Edge*> newEdges;
201
+ std::vector<planargraph::DirectedEdge*> newDirEdges;
202
+ std::vector<planargraph::Node*> newNodes;
203
+ std::vector<EdgeRing*> newEdgeRings;
204
+ std::vector<geom::CoordinateSequence*> newCoords;
205
+ };
206
+
207
+ } // namespace geos::operation::polygonize
208
+ } // namespace geos::operation
209
+ } // namespace geos
210
+
211
+ #ifdef _MSC_VER
212
+ #pragma warning(pop)
213
+ #endif
214
+
@@ -0,0 +1,260 @@
1
+ /**********************************************************************
2
+ *
3
+ * GEOS - Geometry Engine Open Source
4
+ * http://geos.osgeo.org
5
+ *
6
+ * Copyright (C) 2010 Sandro Santilli <strk@kbt.io>
7
+ * Copyright (C) 2006 Refractions Research Inc.
8
+ * Copyright (C) 2001-2002 Vivid Solutions Inc.
9
+ *
10
+ * This is free software; you can redistribute and/or modify it under
11
+ * the terms of the GNU Lesser General Public Licence as published
12
+ * by the Free Software Foundation.
13
+ * See the COPYING file for more information.
14
+ *
15
+ **********************************************************************
16
+ *
17
+ * Last port: operation/polygonize/Polygonizer.java 0b3c7e3eb0d3e
18
+ *
19
+ **********************************************************************/
20
+
21
+ #pragma once
22
+
23
+ #include <geos/export.h>
24
+ #include <geos/geom/Polygon.h>
25
+ #include <geos/geom/GeometryComponentFilter.h> // for LineStringAdder inheritance
26
+ #include <geos/operation/polygonize/PolygonizeGraph.h>
27
+
28
+ #include <memory>
29
+ #include <vector>
30
+
31
+ #ifdef _MSC_VER
32
+ #pragma warning(push)
33
+ #pragma warning(disable: 4251) // warning C4251: needs to have dll-interface to be used by clients of class
34
+ #endif
35
+
36
+ // Forward declarations
37
+ namespace geos {
38
+ namespace geom {
39
+ class Geometry;
40
+
41
+ class LineString;
42
+
43
+ class Polygon;
44
+ }
45
+ namespace operation {
46
+ namespace polygonize {
47
+ class EdgeRing;
48
+ }
49
+ }
50
+ }
51
+
52
+ namespace geos {
53
+ namespace operation { // geos::operation
54
+ namespace polygonize { // geos::operation::polygonize
55
+
56
+ /** \brief
57
+ * Polygonizes a set of Geometrys which contain linework that
58
+ * represents the edges of a planar graph.
59
+ *
60
+ * All types of Geometry are accepted as input; the constituent linework is extracted
61
+ * as the edges to be polygonized.
62
+ * The edges must be correctly noded; that is, they must only meet
63
+ * at their endpoints. Polygonization will accept incorrectly noded input but will
64
+ * not form polygons from non-noded edges, and reports them as errors.
65
+ *
66
+ * The Polygonizer reports the follow kinds of errors:
67
+ *
68
+ * - <b>Dangles</b> - edges which have one or both ends which are
69
+ * not incident on another edge endpoint
70
+ * - <b>Cut Edges</b> - edges which are connected at both ends but
71
+ * which do not form part of a polygon
72
+ * - <b>Invalid Ring Lines</b> - edges which form rings which are invalid
73
+ * (e.g. the component lines contain a self-intersection)
74
+ *
75
+ * The Polygonizer constructor allows extracting only polygons which form a
76
+ * valid polygonal result.
77
+ * The set of extracted polygons is guaranteed to be edge-disjoint.
78
+ * This is useful when it is known that the input lines form a valid
79
+ * polygonal geometry (which may include holes or nested polygons).
80
+ *
81
+ */
82
+ class GEOS_DLL Polygonizer {
83
+ private:
84
+ /**
85
+ * Add every linear element in a geometry into the polygonizer graph.
86
+ */
87
+ class GEOS_DLL LineStringAdder: public geom::GeometryComponentFilter {
88
+ public:
89
+ Polygonizer* pol;
90
+ explicit LineStringAdder(Polygonizer* p);
91
+ //void filter_rw(geom::Geometry *g);
92
+ void filter_ro(const geom::Geometry* g) override;
93
+ };
94
+
95
+ // default factory
96
+ LineStringAdder lineStringAdder;
97
+
98
+ /**
99
+ * Add a linestring to the graph of polygon edges.
100
+ *
101
+ * @param line the {@link LineString} to add
102
+ */
103
+ void add(const geom::LineString* line);
104
+
105
+ /**
106
+ * Perform the polygonization, if it has not already been carried out.
107
+ */
108
+ void polygonize();
109
+
110
+ static void findValidRings(const std::vector<EdgeRing*>& edgeRingList,
111
+ std::vector<EdgeRing*>& validEdgeRingList,
112
+ std::vector<EdgeRing*>& invalidRingList);
113
+
114
+ /**
115
+ * Extracts unique lines for invalid rings,
116
+ * discarding rings which correspond to outer rings and hence contain
117
+ * duplicate linework.
118
+ */
119
+ std::vector<std::unique_ptr<geom::LineString>> extractInvalidLines(
120
+ std::vector<EdgeRing*>& invalidRings);
121
+
122
+ /**
123
+ * Tests if a invalid ring should be included in
124
+ * the list of reported invalid rings.
125
+ *
126
+ * Rings are included only if they contain
127
+ * linework which is not already in a valid ring,
128
+ * or in an already-included ring.
129
+ *
130
+ * Because the invalid rings list is sorted by extent area,
131
+ * this results in outer rings being discarded,
132
+ * since all their linework is reported in the rings they contain.
133
+ *
134
+ * @param invalidRing the ring to test
135
+ * @return true if the ring should be included
136
+ */
137
+ bool isIncludedInvalid(EdgeRing* invalidRing);
138
+
139
+ void findShellsAndHoles(const std::vector<EdgeRing*>& edgeRingList);
140
+
141
+ void findDisjointShells();
142
+
143
+ static void findOuterShells(std::vector<EdgeRing*>& shellList);
144
+
145
+ static std::vector<std::unique_ptr<geom::Polygon>> extractPolygons(std::vector<EdgeRing*> & shellList, bool includeAll);
146
+
147
+ bool extractOnlyPolygonal;
148
+ bool computed;
149
+
150
+ protected:
151
+
152
+ std::unique_ptr<PolygonizeGraph> graph;
153
+
154
+ // initialize with empty collections, in case nothing is computed
155
+ std::vector<const geom::LineString*> dangles;
156
+ std::vector<const geom::LineString*> cutEdges;
157
+ std::vector<std::unique_ptr<geom::LineString>> invalidRingLines;
158
+
159
+ std::vector<EdgeRing*> holeList;
160
+ std::vector<EdgeRing*> shellList;
161
+ std::vector<std::unique_ptr<geom::Polygon>> polyList;
162
+
163
+ public:
164
+
165
+ /** \brief
166
+ * Create a Polygonizer with the same GeometryFactory
167
+ * as the input Geometrys.
168
+ *
169
+ * @param onlyPolygonal true if only polygons which form a valid polygonal geometry should be extracted
170
+ */
171
+ explicit Polygonizer(bool onlyPolygonal = false);
172
+
173
+ ~Polygonizer() = default;
174
+
175
+ /** \brief
176
+ * Add a collection of geometries to be polygonized.
177
+ * May be called multiple times.
178
+ * Any dimension of Geometry may be added;
179
+ * the constituent linework will be extracted and used
180
+ *
181
+ * @param geomList a list of Geometry with linework to be polygonized
182
+ */
183
+ void add(std::vector<geom::Geometry*>* geomList);
184
+
185
+ /** \brief
186
+ * Add a collection of geometries to be polygonized.
187
+ * May be called multiple times.
188
+ * Any dimension of Geometry may be added;
189
+ * the constituent linework will be extracted and used
190
+ *
191
+ * @param geomList a list of Geometry with linework to be polygonized
192
+ */
193
+ void add(std::vector<const geom::Geometry*>* geomList);
194
+
195
+ /**
196
+ * Add a geometry to the linework to be polygonized.
197
+ * May be called multiple times.
198
+ * Any dimension of Geometry may be added;
199
+ * the constituent linework will be extracted and used
200
+ *
201
+ * @param g a Geometry with linework to be polygonized
202
+ */
203
+ void add(const geom::Geometry* g);
204
+
205
+ /** \brief
206
+ * Gets the list of polygons formed by the polygonization.
207
+ *
208
+ * Ownership of vector is transferred to caller, subsequent
209
+ * calls will return NULL.
210
+ * @return a collection of Polygons
211
+ */
212
+ std::vector<std::unique_ptr<geom::Polygon>> getPolygons();
213
+
214
+ /** \brief
215
+ * Get the list of dangling lines found during polygonization.
216
+ *
217
+ * @return a (possibly empty) collection of pointers to
218
+ * the input LineStrings which are dangles.
219
+ *
220
+ */
221
+ const std::vector<const geom::LineString*>& getDangles();
222
+
223
+ bool hasDangles();
224
+
225
+ /** \brief
226
+ * Get the list of cut edges found during polygonization.
227
+ *
228
+ * @return a (possibly empty) collection of pointers to
229
+ * the input LineStrings which are cut edges.
230
+ *
231
+ */
232
+ const std::vector<const geom::LineString*>& getCutEdges();
233
+
234
+ bool hasCutEdges();
235
+
236
+ /** \brief
237
+ * Get the list of lines forming invalid rings found during
238
+ * polygonization.
239
+ *
240
+ * @return a (possibly empty) collection of pointers to
241
+ * the input LineStrings which form invalid rings
242
+ *
243
+ */
244
+ const std::vector<std::unique_ptr<geom::LineString>>& getInvalidRingLines();
245
+
246
+ bool hasInvalidRingLines();
247
+
248
+ bool allInputsFormPolygons();
249
+
250
+ // This seems to be needed by GCC 2.95.4
251
+ friend class Polygonizer::LineStringAdder;
252
+ };
253
+
254
+ } // namespace geos::operation::polygonize
255
+ } // namespace geos::operation
256
+ } // namespace geos
257
+
258
+ #ifdef _MSC_VER
259
+ #pragma warning(pop)
260
+ #endif
@@ -0,0 +1,119 @@
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/predicate/RectangleContains.java rev 1.5 (JTS-1.10)
16
+ *
17
+ **********************************************************************/
18
+
19
+ #pragma once
20
+
21
+ #include <geos/export.h>
22
+
23
+ #include <geos/geom/Polygon.h> // for inlines
24
+
25
+ // Forward declarations
26
+ namespace geos {
27
+ namespace geom {
28
+ class Envelope;
29
+ class Geometry;
30
+ class Point;
31
+ class Coordinate;
32
+ class LineString;
33
+ //class Polygon;
34
+ }
35
+ }
36
+
37
+ namespace geos {
38
+ namespace operation { // geos::operation
39
+ namespace predicate { // geos::operation::predicate
40
+
41
+ /** \brief
42
+ * Optimized implementation of spatial predicate "contains"
43
+ * for cases where the first Geometry is a rectangle.
44
+ *
45
+ * As a further optimization,
46
+ * this class can be used directly to test many geometries against a single
47
+ * rectangle.
48
+ *
49
+ */
50
+ class GEOS_DLL RectangleContains {
51
+
52
+ private:
53
+
54
+ const geom::Envelope& rectEnv;
55
+
56
+ bool isContainedInBoundary(const geom::Geometry& geom);
57
+
58
+ bool isPointContainedInBoundary(const geom::Point& geom);
59
+
60
+ /** \brief
61
+ * Tests if a point is contained in the boundary of the target
62
+ * rectangle.
63
+ *
64
+ * @param pt the point to test
65
+ * @return true if the point is contained in the boundary
66
+ */
67
+ bool isPointContainedInBoundary(const geom::CoordinateXY& pt);
68
+
69
+ /** \brief
70
+ * Tests if a linestring is completely contained in the boundary
71
+ * of the target rectangle.
72
+ *
73
+ * @param line the linestring to test
74
+ * @return true if the linestring is contained in the boundary
75
+ */
76
+ bool isLineStringContainedInBoundary(const geom::LineString& line);
77
+
78
+ /** \brief
79
+ * Tests if a line segment is contained in the boundary of the
80
+ * target rectangle.
81
+ *
82
+ * @param p0 an endpoint of the segment
83
+ * @param p1 an endpoint of the segment
84
+ * @return true if the line segment is contained in the boundary
85
+ */
86
+ bool isLineSegmentContainedInBoundary(const geom::Coordinate& p0,
87
+ const geom::Coordinate& p1);
88
+
89
+ public:
90
+
91
+ static bool
92
+ contains(const geom::Polygon& rect, const geom::Geometry& b)
93
+ {
94
+ RectangleContains rc(rect);
95
+ return rc.contains(b);
96
+ }
97
+
98
+ /**
99
+ * Create a new contains computer for two geometries.
100
+ *
101
+ * @param rect a rectangular geometry
102
+ */
103
+ RectangleContains(const geom::Polygon& rect)
104
+ :
105
+ rectEnv(*(rect.getEnvelopeInternal()))
106
+ {}
107
+
108
+ bool contains(const geom::Geometry& geom);
109
+
110
+ // Declare type as noncopyable
111
+ RectangleContains(const RectangleContains& other) = delete;
112
+ RectangleContains& operator=(const RectangleContains& rhs) = delete;
113
+ };
114
+
115
+
116
+
117
+ } // namespace geos::operation::predicate
118
+ } // namespace geos::operation
119
+ } // namespace geos
@@ -0,0 +1,98 @@
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/predicate/RectangleIntersects.java r378 (JTS-1.12)
17
+ *
18
+ **********************************************************************/
19
+
20
+ #pragma once
21
+
22
+ #include <geos/export.h>
23
+
24
+ #include <geos/geom/Polygon.h> // for inlines
25
+
26
+ // Forward declarations
27
+ namespace geos {
28
+ namespace geom {
29
+ class Envelope;
30
+ //class Polygon;
31
+ }
32
+ }
33
+
34
+ namespace geos {
35
+ namespace operation { // geos::operation
36
+ namespace predicate { // geos::operation::predicate
37
+
38
+ /** \brief
39
+ * Optimized implementation of the "intersects" spatial predicate
40
+ * for cases where one Geometry is a rectangle.
41
+ *
42
+ * This class works for all input geometries, including
43
+ * [GeometryCollections](@ref geom::GeometryCollection).
44
+ *
45
+ * As a further optimization,
46
+ * this class can be used to test
47
+ * many geometries against a single
48
+ * rectangle in a slightly more efficient way.
49
+ *
50
+ */
51
+ class GEOS_DLL RectangleIntersects {
52
+
53
+ private:
54
+
55
+ const geom::Polygon& rectangle;
56
+
57
+ const geom::Envelope& rectEnv;
58
+
59
+ // Declare type as noncopyable
60
+ RectangleIntersects(const RectangleIntersects& other) = delete;
61
+ RectangleIntersects& operator=(const RectangleIntersects& rhs) = delete;
62
+
63
+ public:
64
+
65
+ /** \brief
66
+ * Create a new intersects computer for a rectangle.
67
+ *
68
+ * @param newRect a rectangular geometry
69
+ */
70
+ RectangleIntersects(const geom::Polygon& newRect)
71
+ :
72
+ rectangle(newRect),
73
+ rectEnv(*(newRect.getEnvelopeInternal()))
74
+ {}
75
+
76
+ bool intersects(const geom::Geometry& geom);
77
+
78
+ /** \brief
79
+ * Tests whether a rectangle intersects a given geometry.
80
+ *
81
+ * @param rectangle a rectangular Polygon
82
+ * @param b a Geometry of any type
83
+ * @return true if the geometries intersect
84
+ */
85
+ static bool
86
+ intersects(const geom::Polygon& rectangle,
87
+ const geom::Geometry& b)
88
+ {
89
+ RectangleIntersects rp(rectangle);
90
+ return rp.intersects(b);
91
+ }
92
+
93
+ };
94
+
95
+
96
+ } // namespace geos::operation::predicate
97
+ } // namespace geos::operation
98
+ } // namespace geos