【发布时间】:2012-06-12 21:28:24
【问题描述】:
给定一个坐标,构建一个与该坐标相差 +/- N 度的边界框。边界框将由 lat_min、lat_max、lng_min 和 lng_max 确定。我在 Java 中有以下代码(假设所有输入都以度为单位):
static class BoundingBox
{
private final double lat_min;
private final double lng_min;
private final double lat_max;
private final double lng_max;
public BoundingBox(double lat, double lng, double N)
{
this.lat_min = lat - N;
this.lat_max = lat + N;
this.lng_min = lng - N;
this.lng_max = lng + N;
}
public boolean contains(double lat, double lng)
{
if (lat_max < lat)
return false;
if (lat_min > lat)
return false;
if (lng_max < lng)
return false;
if (lng_min > lng)
return false;
return true;
}
}
是这样吗?
【问题讨论】:
-
你试过了吗?如果我是你的老师,我会在国际日期变更线附近和两极附近测试你的代码。
标签: math geospatial latitude-longitude bounding-box