How to test if a point inside area with lat/lon and radius using Java?

送分小仙女□ 提交于 2019-12-06 07:56:40

问题


I've to write a method that has the following signature

public class Position {
double longitude;
double latitude;
}

boolean isInsideTheArea(Position center, double radius, Position point);

So if point is inside the area that has the center as its center and radius as its radius in miles, this should return true, false otherwise.


回答1:


Use the Haversine formula to compute the distance between center and point. If that distance is greater than radius, return false; otherwise return true.

Pseudocode:

def haversineDistance(a, b):
    # snip...
    return foo

def isInsideTheArea (center, radius, point):
    return haversineDistance(center, point) <= radius



回答2:


hope this helps there are also some implementation examples http://en.wikipedia.org/wiki/Haversine_formula



来源:https://stackoverflow.com/questions/6541056/how-to-test-if-a-point-inside-area-with-lat-lon-and-radius-using-java

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!