有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!


共 (1) 个答案

  1. # 1 楼答案

    也许最简单的答案是使用毕达哥拉斯

    你有一个点(x,y),它是半径为r的圆的中心

    “我怎样才能找到圆圈中的所有纬度和经度?”几乎是无限的

    相反,您更希望检查一个中心点是否在圆的半径内(猜测您希望找出距离点(x,y)k km内的位置)

    给定点(x1,y1),你可以用sqrt((x1-x)^2+(y1-y)^2)(毕达哥拉斯定理a^2=b^2+c^2)来计算从点(x,y)到点(x1,y1)的距离,并检查距离是否为<半径r。边界很容易计算(xmin=x-r,xmax=x+r等)

    就实际距离而言,你可能需要使用哈弗森公式:

    a=sin²(Δlat/2)+cos(lat1)。cos(lat2)。sin²(Δ长/2)

    c=2。atan2(√A.√(1−a) )

    d=R.c

    其中R是地球半径(平均半径=6371km)(d是距离); 请注意,角度需要以弧度为单位才能传递到trig函数

    更多信息请点击这里http://www.movable-type.co.uk/scripts/latlong.html