我的大脑今天不工作。我需要测试一个点(lat,long)是否位于地图上的一个矩形内。这个矩形由它的北,东,南,&西边界定义。呃逆是所有的点或值都在地图坐标系中。为了处理日期线环绕,我假设如果我们从左到右走,经度总是“在”之间。使用地图坐标确定点是否在矩形中
bool PointInRectangle(Point pt, double North, double East, double South, double West)
{
// ????
}
我的大脑今天不工作。我需要测试一个点(lat,long)是否位于地图上的一个矩形内。这个矩形由它的北,东,南,&西边界定义。呃逆是所有的点或值都在地图坐标系中。为了处理日期线环绕,我假设如果我们从左到右走,经度总是“在”之间。使用地图坐标确定点是否在矩形中
bool PointInRectangle(Point pt, double North, double East, double South, double West)
{
// ????
}
假设东部和北部是积极的:
bool PointInRectangle(Point pt, double North, double East, double South, double West)
{
// you may want to check that the point is a valid coordinate
if (West < East)
{
return pt.X < East && pt.X > West && pt.Y < North && pt.Y > South;
}
// it crosses the date line
return (pt.X < East || pt.X > West) && pt.Y < North && pt.Y > South;
}
重复的,我想。见http://stackoverflow.com/questions/10632457/ –
@Jeppe类似的问题,但他们的要求有点不同(视觉地图,并不需要100%准确)。我希望有一个小代码snippit。 – jklemmack