addPointCircle(datas: any, options: any = "") {
let _this = this;
this.removeLayer(options.layerId.toString());//移除图层
this.removeDataSource(options.layerId.toString());
_this.map.loadImage(options.iconImgUrl, function (error, image) {
_this.map.addSource(options.layerId.toString(), {
type: "geojson",
data: datas,
});
if (!options.textColor) {
options.textColor = "#ffffff";
}
let pointOpt = {
id: options.layerId.toString(),
type: "circle"//设置类型,圆点
source: options.layerId.toString(),
paint: {
"circle-radius": 5,
//根据震级的不同区分打点的颜色,小于6级点的颜色为黄色......
"circle-color": [
"case",
["boolean", ["<", ["get", "magnitude"], 6]],
"#e8df28",
["boolean", ["<=", ["get", "magnitude"], 7]],
"#e0620d",
["boolean", ["<=", ["get", "magnitude"], 8]],
"#d81e06",
["boolean", [">=", ["get", "magnitude"], 8]],
"#6b170c",
"#0c0c0c",
],
},
minzoom: 0,
maxzoom: 22,
};
_this.map.addLayer(pointOpt);
});
let popup: any = null;
}
界面调用时:
baseMapObj.addPointCircle(featureCollection, option);