我想用Leaflet绘制一个标记,然后再在离第一个标记100米的地方绘制另一个标记。绘制第一个标记很容易:
var marker = L.marker([0, 0]).addTo(map);
现在我该如何在离这个标记100米处绘制另一个标记呢? 有没有一种将米转换为经纬度然后进行绘制的方法? 或者已经有更好的方法了,只是我不知道而已?
我已经复制了你的代码示例以展示一个实例。它基于下面的答案:
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