"use script"; //开发环境建议开启严格模式 //系统 功能入口 var guokong_color_list = ['#0EE839', '#FEFE23', '#FD9D00', '#F70F0D', '#8A0B73', '#88041E']; var guokong_color_nodata = '#C0C0C0'; var guokong_qindex_color_list = { 'pm25': [35, 75, 115, 150, 250], 'pm10': [50, 150, 250, 350, 420], 'no2': [100, 200, 700, 1200, 2340], 'co': [5, 10, 35, 60, 90] }; var guokong_data_list; function addGuokongLayerDIV(item) { var guokongLayer = new mars3d.layer.DivLayer({ id: item.id, pid: item.pid, //图层管理 中使用,父节点id name: item.name, style_selected: item.style_selected, style_options: item.styleoptions, show: item.show }); map.addLayer(guokongLayer); guokongLayer.on(mars3d.EventType.click, function (event) { console.log("监听layer,单击了矢量对象", event); console.log(event.graphic?.attr) var item = event.graphic?.attr; //haoutil.msg('单击了:' + item['高校名称']) }); guokongLayer.bindPopup(function (event) { let item = event.graphic?.attr; //console.log(item); var html = "站点编号:" + item["code"] + "
站点名称:" + item["name"] + "
数据时间:" + item["datatime"] + "
PM2.5:" + item["PM25"] + "ug/m3" + "
PM10:" + item["PM10"] + "ug/m3" + "
NO2:" + item["NO2"] + "ug/m3" + "
CO:" + item["CO"] + "ug/m3" + "
SO2:" + item["SO2"] + "ug/m3" + "

详细信息

"; return html; }); guokongLayer.changeColor = function () { guokongLayer.clear(true); addGuokongPointResutToLayer(this, guokong_data_list); } // add 国控点 getGuokongPointFromServer(guokongLayer); } function getGuokongPointFromServer(tmplayer) { $.getJSON(mars3d.global_variables.nodejs_url_predix + "dataapi/Bdata?bid=get_1001_list&datatype=" + mars3d.global_variables.queryDataType + "&datatime=" + mars3d.global_variables.queryDataTStart + "&qindex=pm25&pageno=1&pagesize=1000", (result) => { guokong_data_list = result.data.result; addGuokongPointResutToLayer(tmplayer, result.data.result); }); } function addGuokongPointResutToLayer(tmplayer, items) { for (var i = 0, len = items.length; i < len; i++) { var item = items[i]; var jd = item.lon; var wd = item.lat; var clr = getGuokongPointColor(tmplayer.options.style_selected, item[(tmplayer.options.style_selected).toUpperCase()]); var graphic = new mars3d.graphic.DivLightPoint({ position: Cesium.Cartesian3.fromDegrees(jd, wd), style: { color: clr, heightReference: Cesium.HeightReference.CLAMP_TO_GROUND, highlight: { type: "divLightPoint", diffHeight: item[(tmplayer.options.style_selected).toUpperCase()], material: mars3d.MaterialUtil.createMaterialProperty(mars3d.MaterialType.CircleWave, { color: clr, count: 3, speed: 20, }), }, distanceDisplayCondition: new Cesium.DistanceDisplayCondition(0, 200000), //按视距距离显示 }, show: true, attr: item, }); tmplayer.addGraphic(graphic); } } function getGuokongPointColor(qindex, value) { if (!value || value == null || value == 'null') { return guokong_color_nodata; } for (var key in guokong_qindex_color_list) { if (key == qindex) { for (let i = guokong_qindex_color_list[key].length; i > -1; i--) { if (value > guokong_qindex_color_list[key][i]) { return guokong_color_list[i + 1]; } } } } }