我正在使用Netlogo的gis扩展,并试图计算以km为单位的代理之间的距离。 随着gis:envelope-of
我可以获得经度和纬度的经纪人位置,所以我想用Haversine公式来计算距离。我的底层GIS-shape文件的投影是WGS 84.Haversine公式在Netlogo中提供不正确的结果
我已经为两个示例性点写入如下:
to haversine
let lata 31.8930795682288
let longa 36.0898369172224
let latb 31.9964498913126
let longb 36.0318329821497
let rad (pi/180)
let result acos (cos (rad * lata) * cos(rad * (latb)) + sin (rad * (lata))* sin(rad * (latb)) * cos(rad * (longa - longb))) * 6371
print result
end
它产生11.5公里的距离,而在施加相同的公式excel(使用RADIANS公式代替“rad”)给我留下了12.73公里的数据,这个数字表明这个网站http://www.movable-type.co.uk/scripts/latlong.html证实。
任何想法,我做错了什么?提前致谢。
这这里的http:// bluemm.blogspot.de/2007/01/excel-formula-to-calculate-distance.html(和GIS以及在原始问题中发布的链接与此excel公式相同) – derheine