Algorithm 在有界区域内随机生成坐标
我有一个经纬度列表,它构成了一个地理区域的边界。我想在这个地理区域内生成一些随机坐标。你能推荐一些我可以用任何语言学习的方法吗?就像任何问题一样,有很多方法可以解决它,我首先想到的是Algorithm 在有界区域内随机生成坐标,algorithm,latitude-longitude,Algorithm,Latitude Longitude,我有一个经纬度列表,它构成了一个地理区域的边界。我想在这个地理区域内生成一些随机坐标。你能推荐一些我可以用任何语言学习的方法吗?就像任何问题一样,有很多方法可以解决它,我首先想到的是 让我们把这个“地理区域”称为多边形 找到多边形的边界框(很简单,只需找到maxX maxY minX minY) 在边界框内生成随机坐标x=rand()%(maxX-minX)+minX(与Y相同) 测试坐标是否在多边形内部,有很多解决方案,并且它们是用任何给定的语言实现的,因此您不必自己实现。 下面是一个C/C+
x=rand()%(maxX-minX)+minX
(与Y相同)矢量点中的保存
[0,points.size())
中生成一个随机整数,请参见k
点[k]
是您想要的首先,我们将地球的形状建模为一个球体。解决这个问题要困难得多 生成一个比较简单的方法 生成一个更难,但在这篇链接文章中进行了解释 你需要将多边形分成几个部分,并根据它们的面积对它们进行加权。然后根据加权值随机选择一个球面三角形
一般情况下,三角剖分是一个简单的任务,其中一个算法(算法1,第901页)用C++源代码(搜索“构造板几何参数计算方法”)。.这在大面积上很复杂,你不能用平面多边形近似球形多边形,但对于平面:地理区域不是很大。因此,我没有采用这种方法。但是链接非常有用,适合更大的地理区域。