德国(或任何其他地区)多边形的地理坐标
Geo coordinates for a polygon over Germany (or any other region)
我正在使用 java。我想看看某个地点是不是在德国(是公司的申请,公司的货车不能过境)
现在我知道,那个只能近似这个,不过没关系,因为我主要想检查经纬度的拼写错误(例如 25.123 而不是 52.123)。
到目前为止,我遇到了多边形问题的要点,这似乎符合我的需要。是否有类似区域地理多边形的标准? (**)。还是我必须自己做?
(**) 这似乎是个愚蠢的问题。但是,它会为我的客户提供透明度,如果我的多边形小到 1 米,我也不会受到责备。
您可以很容易地从this site获取数据,德国看起来足够精确:
GeometryFactory 来自 com.vividsolutions.jts.geom 包含一个检查 gps 坐标是否在多边形内的方法。
如果你已经弄清楚了你的区域多边形,也许你需要的只是使用库重建你的多边形并检查你的坐标是否在你的多边形内。
这不是一个完美的例子,但您可以根据自己的喜好进行调整。
private com.vividsolutions.jts.geom.GeometryFactory geometryFactory;
public boolean isCoordinatesInsidePolygon(double lat, double lng, MyPolygon myPolygon) {
final Polygon area =geometryFactory.createPolygon(myPolygon.getCoordinates());
final Point point = geometryFactory.createPoint(new Coordinate(lat, lng));
return area.covers(point);
}
您要求的是“区域地理多边形标准”。在德国有“Digitales Landschaftsmodell" (DLM) and "Digitales Geländemodell”(DGM)。
还有一个publicservice where different spatial data可以下载
所以希望使用官方标准和数据能够满足客户的要求。
我正在使用 java。我想看看某个地点是不是在德国(是公司的申请,公司的货车不能过境)
现在我知道,那个只能近似这个,不过没关系,因为我主要想检查经纬度的拼写错误(例如 25.123 而不是 52.123)。
到目前为止,我遇到了多边形问题的要点,这似乎符合我的需要。是否有类似区域地理多边形的标准? (**)。还是我必须自己做?
(**) 这似乎是个愚蠢的问题。但是,它会为我的客户提供透明度,如果我的多边形小到 1 米,我也不会受到责备。
您可以很容易地从this site获取数据,德国看起来足够精确:
GeometryFactory 来自 com.vividsolutions.jts.geom 包含一个检查 gps 坐标是否在多边形内的方法。 如果你已经弄清楚了你的区域多边形,也许你需要的只是使用库重建你的多边形并检查你的坐标是否在你的多边形内。 这不是一个完美的例子,但您可以根据自己的喜好进行调整。
private com.vividsolutions.jts.geom.GeometryFactory geometryFactory;
public boolean isCoordinatesInsidePolygon(double lat, double lng, MyPolygon myPolygon) {
final Polygon area =geometryFactory.createPolygon(myPolygon.getCoordinates());
final Point point = geometryFactory.createPoint(new Coordinate(lat, lng));
return area.covers(point);
}
您要求的是“区域地理多边形标准”。在德国有“Digitales Landschaftsmodell" (DLM) and "Digitales Geländemodell”(DGM)。
还有一个publicservice where different spatial data可以下载
所以希望使用官方标准和数据能够满足客户的要求。