我必须编写一个具有以下签名的方法
public class Position {
double longitude;
double latitude;
}
boolean isInsideTheArea(Position center, double radius, Position point);
因此,如果点
位于以center
为中心、以radius
为半径的区域
内在 miles 中,这应该返回 true
,否则返回 false
。
最佳答案
使用 Haversine formula计算 center
和 point
之间的距离。如果该距离大于 radius
,则返回 false
;否则返回 true
。
伪代码:
def haversineDistance(a, b):
# snip...
return foo
def isInsideTheArea (center, radius, point):
return haversineDistance(center, point) <= radius
关于java - 如何使用 Java 测试一个点是否在具有纬度/经度和半径的区域内?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6541056/