Leaflet 如何使用像素坐标在传单中绘制多段线?

Leaflet 如何使用像素坐标在传单中绘制多段线?,leaflet,Leaflet,我的地图设置好了,标记也就位了,它工作得很好。我现在想在标记之间添加线;所以我使用了传单中的代码示例,添加了几个标记的坐标,但这条线没有显示在地图上 var polylinePoints=[ [3474, 12427], [2298, 11596], ]; var polyline=L.polyline(polylinePoints).addTo(map); 然后我尝试了这个 var pointA=新L.LatLng(347412427); var pointB=新的L.LatLng(2298

我的地图设置好了,标记也就位了,它工作得很好。我现在想在标记之间添加线;所以我使用了传单中的代码示例,添加了几个标记的坐标,但这条线没有显示在地图上

var polylinePoints=[
[3474, 12427],
[2298, 11596],
];
var polyline=L.polyline(polylinePoints).addTo(map);
然后我尝试了这个

var pointA=新L.LatLng(347412427);
var pointB=新的L.LatLng(229811596);
var pointList=[pointA,pointB];
var firstpolyline=新的L.多段线(点列表{
颜色:“红色”,
体重:3,
不透明度:0.5,
平滑因子:1
});
firstpolyline.addTo(映射);
…而这条线仍然没有显示出来

问题是我使用的是像素坐标,而不是实际的lat和lng坐标吗?如果是,如何使用像素坐标在标记之间绘制线

问题是我使用的是像素坐标,而不是实际的lat和lng坐标吗?如果是,如何使用像素坐标在标记之间绘制线

当然

试试这个:

var pointA = map.layerPointToLatLng(L.point(3474, 12427));
var pointB = map.layerPointToLatLng(L.point(2298, 11596));
var pointList = [pointA, pointB];
var firstpolyline = new L.Polyline(pointList, {
    color: 'red',
    weight: 3,
    opacity: 0.5,
    smoothFactor: 1
});
firstpolyline.addTo(map);

不过,下一步您可能会遇到origin的问题,请参阅
map.getPixelOrigin()

谢谢。这给了我一个错误
传单.js:5未捕获错误:无效的LatLng对象:(NaN,1154.531250000002)
,它指向
var pointA=map.layerPointToLatLng(347412427)unproject()
,但也没有成功。啊,先从coords上做一个
L.Point
。编辑。这解决了错误,但仍然没有行。也尝试将
map.unject()
添加到coords,但只得到一个错误。还将
layerpointtolatng
替换为
unproject
;没有错误,但也没有行。编辑:没关系,我把一个坐标改成了
0,0
,然后看到了一行。谢谢现在的问题是,这条线并没有到达地图上的实际坐标。意思当我输入两个合法坐标并想要在它们之间画一条线时,它不会显示。但是当我输入
0,0
时,我看到了这条线,所以我知道它在画,它就在地图之外?有什么想法吗?明白了:
var pointA=map.unproject([209911180],map.getMaxZoom())