Openlayers:将点列表添加到层

时间:2019-03-08 11:07:55

标签: javascript openlayers point

我在将点列表添加到矢量源,图层以及最终在Openlayers中的地图时遇到问题。 首先,我创建一个空数组,然后遍历给定的数据集,并为每个要素创建一个带有图标和文本字段的新Point,并将标记存储在列表中。最后,我想用该数组创建一个新的ol.source.Vector(),这将导致错误“ c.Xa不是函数”。 如果我只从列表中删除一个标记,然后将其添加到矢量源中,则地图在正确的位置,正确的图标和正确的文本上都可以正常工作。

var markers=[];

for(var i=1; i<ResearchStations.length; i++){
  var mark=new ol.Feature({
  				geometry: new ol.geom.Point(
				    ol.proj.fromLonLat([lon, lat], proj3031)
  				),
	});
  var icon = new ol.style.Style({
      				image: new ol.style.Icon({
              ...
     		 		  }),
			        text: new ol.style.Text({
              ...
        			})
   })
  mark.setStyle(icon);
  markers[i]=mark;
}

console.log(1) 
var vectorSource = new ol.source.Vector({
  		features: [markers],
});
console.log(2)
var StationLayer = new ol.layer.Vector({
  		source: vectorSource,
	});
console.log(3)
map.addLayer(StationLayer);

在console.log(1)

之后发生错误

0 个答案:

没有答案