因爲近期在使用openlayers,記錄下比較常見的地圖標註的用法。
下面是在地圖上標註圖片的方法。data爲經緯度數據,例如 :[{longitude:116.40,latitude:39.90}](注:北京經緯度),url爲圖片url。
function(data,url){
var features = [],
feature,
name;
data.forEach(v => {
feature = new Feature(new Point(ol_transform([v.longitude, v.latitude], 'EPSG:4326', 'EPSG:3857')));
name = 'test';
features.push(feature);
});
var clusterSource = new Cluster({
distance: 40,
source: new VectorSource({
features: features
})
});
var clusterLayer = new VectorLayer({
source: clusterSource,
name: name,
id: name,
zIndex: 10,
listen: true,
style: new Style({
image: new Icon({
src: `${url}.png`,
scale: 0.1
})
})
});
this.map.addLayer(clusterLayer);//map爲所要標註的地圖
},