如何在Mapbox Leaflet中将标记与另一个标记相距100米?

时间:2015-06-01 08:30:20

标签: leaflet mapbox

我正在尝试使用Leaflet绘制标记,然后使用另一个标记远离第一个标记100米。绘制标记很容易:

var marker = L.marker([0, 0]).addTo(map);

但是现在如何在距离这个标记100米处绘制另一个标记? 有没有办法将米转换为长和纬,然后绘制它? 还是有一种我不知道的更好的方法吗?

1 个答案:

答案 0 :(得分:1)

forked your fiddle展示了一个例子。它基于这些答案:

https://gis.stackexchange.com/questions/25877/how-to-generate-random-locations-nearby-my-location

var r = 100/111300 // = 100 meters
  , y0 = original_lat
  , x0 = original_lng
  , u = Math.random()
  , v = Math.random()
  , w = r * Math.sqrt(u)
  , t = 2 * Math.PI * v
  , x = w * Math.cos(t)
  , y1 = w * Math.sin(t)
  , x1 = x / Math.cos(y0)

newY = y0 + y1
newX = x0 + x1