传单地图上其他矩形中矩形的百分比

The percentage of the rectangle in the other rectangle on leaflet map

有一个矩形(我们称之为A)由两个地图点定义:

A = [southWest1, northEast1]

我们还有第二个矩形:

B = [southWest2, northEast2]

其中 southWest_inorthEast_i - 地图上的一个点,即一对 [lat, lng]

我想找到找到矩形A在矩形B中的百分比的最佳解决方案。

没有"percentage of a polygon inside another polygon"这样的东西。我认为您的意思是 多边形面积与该多边形与第二个多边形的交点之间的比率

所以:

  • 计算 A 和 B 的交集(我们称之为 C)
  • 计算B的面积
  • 计算C的面积
  • C 的面积除以 B 的面积

有很多方法可以计算多边形的面积和交点。如果你打算使用 Javascript,我建议你看看 TurfJS,特别是它的 intersect() and area() 方法