我正在尝试使用Leaflet绘制标记,然后使用另一个标记远离第一个标记100米。绘制标记很容易:
var marker = L.marker([0, 0]).addTo(map);
但是现在如何在距离这个标记100米处绘制另一个标记? 有没有办法将米转换为长和纬,然后绘制它? 还是有一种我不知道的更好的方法吗?
答案 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