我必须编写一个具有以下签名的方法
public class Position {
double longitude;
double latitude;
}
boolean isInsideTheArea(Position center, double radius, Position point);
因此,如果point在area以center为中心和以英里radius为单位的半径的内部,则 this 应该返回,否则。truefalse
我必须编写一个具有以下签名的方法
public class Position {
double longitude;
double latitude;
}
boolean isInsideTheArea(Position center, double radius, Position point);
因此,如果point在area以center为中心和以英里radius为单位的半径的内部,则 this 应该返回,否则。truefalse
使用Haversine 公式center计算和之间的距离point。如果该距离大于radius,则返回false;否则返回true。
伪代码:
def haversineDistance(a, b):
# snip...
return foo
def isInsideTheArea (center, radius, point):
return haversineDistance(center, point) <= radius
希望这有帮助 还有一些实现示例 http://en.wikipedia.org/wiki/Haversine_formula