如何在带有openlayers的地图上显示路径?

问题描述 投票:0回答:1

我有这样的路径:

[53.994791502000055,32.87857732600003,141,53.99267829900003,32.95958344100006,126,53.98845189300005,32.99902989800006,124,53.998313507000034,33.01593552200006,120,54.04269077100008,33.07158320100007,109,54.05184798400006,33.06242598800003,109,54.07086681100003,33.00818711100004,109,54.04480397400005,32.98564627800005,113]

此路径包括每个点的long,lat和z。我也有一个用OpenLayers创建的地图。我想在地图上显示此路径。我尝试了不同的方法和说明,但未显示。这就是我显示地图的方式:

var map = new ol.Map({
        controls: ol.control.defaults({
          attributionOptions: {
            collapsible: false
          }
        }).extend([mousePositionControl]),
        layers: layers,
        // Improve user experience by loading tiles while dragging/zooming. Will make
        // zooming choppy on mobile or slow devices.
        loadTilesWhileInteracting: true,
        target: 'map',
        view: new ol.View({
          center: ol.proj.fromLonLat([54.081, 32.908]),
          zoom: 13
        })
      });

我以这种方式测试了部分路线的显示,但是没有用:

routlayer = new ol.layer.Vector({
     source: new ol.source.Vector({
         features: [
             new ol.Feature({
                 geometry: new ol.geom.LineString([
      [53.9888, 32.8876],
      [54.1576, 32.9360]
])
             })
         ]

     })

 });


    map.addLayer(routlayer);

并且我在不同的参考文献中尝试了类似的方法,但是没有用。

openlayers
1个回答
1
投票

我认为您缺少routlayer几何图形上从地理坐标到Web Mercator的转换。如果您修复它应该可以工作。

© www.soinside.com 2019 - 2024. All rights reserved.