我正在寻找一些VBA代码(算法)来匹配给定GPS位置的GPS位置列表(在这种情况下是船舶轨道)。也就是说,列表中位于该圆周内的所有位置都具有围绕该位置的给定半径。
查看图片:所以只有“绿色位置”匹配所有位置。对于可怜的图片感到抱歉,在Windows Paint手工制作; - )
所有位置均以纬度+经度给出,例如52.24782,4.12082。
答案 0 :(得分:0)
功能
Public Function CheckCoords(x#, y#, radius#) As String
' x^2 + y^2 = r^2
' ==> results true if (p,q) fall outside of the circle
CheckCoords = IIf((x ^ 2 + y ^ 2) < radius ^ 2, "outside circle", "inside circle")
End Function
实际实施所需的单位转换
答案 1 :(得分:0)
找到这个:http://www.movable-type.co.uk/scripts/latlong.html
我只需要将代码重写为VBA代码并将其与@Cylian代码结合起来