繁体   English   中英

从坐标计算矩形面积

[英]Calculating the rectangle area from coordinates

如果我有两点 (51.9925734, 5.65038093), (51.99226769, 5.64991222)

我想获得矩形地球区域。

我从其他资源中尝试了这种方法:

from area import area
obj_field = {'type':'Polygon','coordinates':[[[51.9925734,5.65038093],
                                     [51.9925734,5.64991222],
                                     [51.99226769,5.64991222],
                                     [51.99226769,5.65038093]]]}
field_area_2 = area(obj_field)
print(f'The total field area is: {field_area_2} square meters')
The total field area is: 1767.018812772391 square meters

但我不确定它是否正确。

对于小区域,例如您的示例,最简单的方法是将纬度/经度坐标转换为 UTM。 然后您可以使用基本的数学运算,例如计算矩形的面积,如以下代码段所示:

import utm

a_geo = 51.9925734, 5.65038093
b_geo = 51.99226769, 5.64991222

# Convert lat, lon to utm
a_easting, a_northing, zone, _ = utm.from_latlon(*a_geo)
b_easting, b_northing, _, _ = utm.from_latlon(*b_geo, force_zone_number=zone)

area = abs((a_easting - b_easting) * (a_northing - b_northing))

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM