Javascript 在传单中,如何计算距离单击标记最远的标记的距离?
“我的地图”允许用户围绕单击的标记绘制圆圈。为了把它保持在最远的标记的范围内,我需要知道最远的标记在哪里。如何从单击的标记中找到最远的标记?但要使事情复杂化,我需要阅读最远的标记标题信息,以确保它是正确的标记类型。它将在标题中有一个特殊的3个字母的代码来测试它是否是正确的标记。我只能检查它是否在那里,而不是它所说的。最简单的答案是在开始时计算所有方向上的最远距离。为此,我首先通过计算以下值找到一个边界框:Javascript 在传单中,如何计算距离单击标记最远的标记的距离?,javascript,leaflet,Javascript,Leaflet,“我的地图”允许用户围绕单击的标记绘制圆圈。为了把它保持在最远的标记的范围内,我需要知道最远的标记在哪里。如何从单击的标记中找到最远的标记?但要使事情复杂化,我需要阅读最远的标记标题信息,以确保它是正确的标记类型。它将在标题中有一个特殊的3个字母的代码来测试它是否是正确的标记。我只能检查它是否在那里,而不是它所说的。最简单的答案是在开始时计算所有方向上的最远距离。为此,我首先通过计算以下值找到一个边界框: $minLat = $rowCorners[minLat]-0.25; $maxLat =
$minLat = $rowCorners[minLat]-0.25;
$maxLat = $rowCorners[maxLat]+0.25;
$minLng = $rowCorners[minLng]+0.25;
$maxLng = $rowCorners[maxLng]-0.25;
在这种情况下,我给自己一个小空间来工作,精确的距离并不是那么重要。通过使用这些信息,可以很容易地绘制用户所需的圆圈。如果您需要保持界限,请使用
L.FeatureGroup
s、getBounds()
和fitbunds()
。如果需要搜索数据集中最远的点,请计算查询点的反模式,将数据集保存在r树中,然后执行k近邻搜索。@IvanSanchez好的,这给了我很多研究和学习的内容。