我是ROR和谷歌 Map 的新手 . 我需要在Google Map 中放置一些标记(在数据库中有纬度和经度) .
问题是我需要选择一些随机距离的点 .
简而言之,我需要选择位置并将其放置在 Map 中,该 Map 必须与每个点保持100米的距离 .
If the location is within 100 m range with any other points, it can be neglected. I need to place 10 points from database.
有什么方法吗?
1 回答
假设您需要从数据库中找到距离数据库中所有其他点至少100米的点:
这是一个相当简单的问题 . 它可以显示为nxn矩阵,点设置为行和列 . 在Python中,比较所有距离看起来像:
此函数遍历整个点列表 . 对于每个点,它检查从当前点到所有其他点的距离 . 如果所有其他点都在100米之外,则将该点添加到数组 .
有关距离公式,请参阅代码表格中的 haversine formula here .
由于您未在问题中指定语言,我将允许您将其翻译成您需要的任何语言 . 这只是伪代码,因为没有提供足够的细节来回答您的实际代码问题 .
此外,如果我误解了您的问题,您可以通过某种方式调整此算法 . 它只是提供一些想法 .