我使用MapTiler
和Leafletjs
创建了一个虚构的地图,其中包含了我想从我的代码中引用的数百个点。我在Leafletjs
中创建了一个参考标记,我可以将其拖动到地图上的特定位置并获取像素坐标。
我现在需要为所有这几百个点做同样的事情,以便生成[location_name as key, coordinates as value]
的键/值对。如果我手动执行此操作,可能需要数周时间。
我是否可以在Leaflet
中遵循自动化方法,以便更轻松地检索坐标?地图最初是一个矢量图像,我将其转换为png,然后使用MapTiler
来满足所有不同尺寸Leafletjs
的需求。
以下代码显示了参考标记的工作原理:
var map = L.map('map').setView([60, 0], 0);
L.tileLayer('{z}/{x}/{y}.png', {
maxZoom: 5,
minZoom: 1,
continuousWorld: false,
noWrap: true,
crs: L.CRS.Simple
}).addTo(map);
var marker = L.marker([70, 0], {
draggable: true,
}).addTo(map);
marker.bindPopup('<b>Test</b>').openPopup();
marker.on('dragend', function(e) {
alert(marker.getLatLng().toString());
});
答案 0 :(得分:1)
更好的工作流程如下:
click
事件处理程序,以便可以创建新标记console.log()
所有标记(然后复制粘贴)在不知道数据的原始格式的情况下,很难看出数据是否可以自动转换,但是制作一个快速工具来减轻定位几百点的痛苦是可行的。