| | |
| | | var layer_1006_roadsection; |
| | | var layer_1007_jiedao; |
| | | |
| | | var layer_wind; |
| | | |
| | | |
| | | function getDefaultDateTime() { |
| | |
| | | "<br />办学层次:" + |
| | | item["办学层次"] + |
| | | "<br />王牌专业:" + |
| | | item["王牌专业"]+ |
| | | "<br /><br /><p><a href='#' onclick='javascript:showDetail(1001,\""+item["高校名称"]+"\")' >详细信息</a></p>"; |
| | | item["王牌专业"] + |
| | | "<br /><br /><p><a href='#' onclick='javascript:showDetail(1001,\"" + item["高校名称"] + "\")' >详细信息</a></p>"; |
| | | return html; |
| | | }); |
| | | |
| | |
| | | |
| | | } |
| | | |
| | | function addMaskShanghai(){ |
| | | function addMaskShanghai() { |
| | | |
| | | //geojson 合肥边界线 |
| | | geoJsonLayer = new mars3d.layer.GeoJsonLayer({ |
| | | url: "//data.mars3d.cn/file/geojson/areas/340100.json", |
| | | mask: true, //标识为遮罩层【重点参数】 |
| | | symbol: { |
| | | styleOptions: { |
| | | fill: true, |
| | | color: "rgb(2,26,79)", |
| | | opacity: 0.9, |
| | | outline: false, |
| | | outlineColor: "#39E09B", |
| | | outlineWidth: 8, |
| | | outlineOpacity: 0.8, |
| | | arcType: Cesium.ArcType.GEODESIC, |
| | | clampToGround: true, |
| | | //geojson 合肥边界线 |
| | | geoJsonLayer = new mars3d.layer.GeoJsonLayer({ |
| | | url: "//data.mars3d.cn/file/geojson/areas/340100.json", |
| | | mask: true, //标识为遮罩层【重点参数】 |
| | | symbol: { |
| | | styleOptions: { |
| | | fill: true, |
| | | color: "rgb(2,26,79)", |
| | | opacity: 0.9, |
| | | outline: false, |
| | | outlineColor: "#39E09B", |
| | | outlineWidth: 8, |
| | | outlineOpacity: 0.8, |
| | | arcType: Cesium.ArcType.GEODESIC, |
| | | clampToGround: true, |
| | | }, |
| | | }, |
| | | }, |
| | | }); |
| | | map.addLayer(geoJsonLayer); |
| | | }); |
| | | map.addLayer(geoJsonLayer); |
| | | |
| | | } |
| | | |
| | |
| | | |
| | | addRoadLayer(); |
| | | |
| | | addWindLayer(); |
| | | |
| | | |
| | | |
| | | } |
| | | |
| | | function showDetail(layerid,itemCode){ |
| | | haoutil.msg('单击了:'+layerid+','+itemCode); |
| | | function addWindLayer(dataTime) { |
| | | |
| | | if (mars3d.widget.isActivate("widgetsTS/qyDetailsView/widget.js")){ |
| | | //显示高校点 |
| | | //getWindParametersByTime(dataTime){ |
| | | $.getJSON("http://127.0.0.1:800/shanghai/data/getWindParametersByTime.json", { datatime: '2021-09-08 10:00:00' }, (result) => { |
| | | |
| | | var detailWiget = mars3d.widget.getClass("widgetsTS/qyDetailsView/widget.js"); |
| | | layer_wind = new mars3d.layer.CanvasWindLayer({ |
| | | id:2001, |
| | | pid:99, |
| | | name: "实时风场", |
| | | color: "#ffffff", //颜色 |
| | | frameRate: 20, //每秒刷新次数 |
| | | speedRate: 60, //风前进速率 |
| | | particlesNumber: 1000, |
| | | maxAge: 60, |
| | | lineWidth: 1, |
| | | reverseY: true |
| | | }); |
| | | layer_wind.show = false; |
| | | map.addLayer(layer_wind); |
| | | |
| | | layer_wind.data = convertWindData(result.data); |
| | | }); |
| | | } |
| | | |
| | | function convertWindData(arr) { |
| | | |
| | | var arrU = []; |
| | | var arrV = []; |
| | | |
| | | var xmin = arr[0].x; |
| | | var xmax = arr[0].x; |
| | | var ymin = arr[0].y; |
| | | var ymax = arr[0].y; |
| | | |
| | | // 风向是以y轴正方向为零度顺时针转,0度表示北风。90度表示东风。 |
| | | // u表示经度方向上的风,u为正,表示西风,从西边吹来的风。 |
| | | // v表示纬度方向上的风,v为正,表示南风,从南边吹来的风。 |
| | | for (let i = 0, len = arr.length; i < len; i++) { |
| | | const item = arr[i]; |
| | | if (xmin > item.x) { |
| | | xmin = item.x; |
| | | } |
| | | if (xmax < item.x) { |
| | | xmax = item.x; |
| | | } |
| | | if (ymin > item.y) { |
| | | ymin = item.y; |
| | | } |
| | | if (ymax < item.y) { |
| | | ymax = item.y; |
| | | } |
| | | |
| | | var u = mars3d.WindUtil.getU(item.speed, item.dir); |
| | | arrU.push(u); |
| | | |
| | | var v = mars3d.WindUtil.getV(item.speed, item.dir); |
| | | arrV.push(v); |
| | | } |
| | | |
| | | var rows = getKeyNumCount(arr, "y"); //计算 行数 |
| | | var cols = getKeyNumCount(arr, "x"); //计算 列数 |
| | | |
| | | return { |
| | | xmin: xmin, |
| | | xmax: xmax, |
| | | ymax: ymax, |
| | | ymin: ymin, |
| | | rows: rows, |
| | | cols: cols, |
| | | udata: arrU, //横向风速 |
| | | vdata: arrV, //纵向风速 |
| | | }; |
| | | } |
| | | |
| | | function getKeyNumCount(arr, key) { |
| | | var obj = {}; |
| | | arr.forEach((item) => { |
| | | obj[item[key]] = true; |
| | | }); |
| | | |
| | | var count = 0; |
| | | for (let col in obj) { |
| | | count++; |
| | | } |
| | | return count; |
| | | } |
| | | |
| | | function showDetail(layerid, itemCode) { |
| | | haoutil.msg('单击了:' + layerid + ',' + itemCode); |
| | | |
| | | if (mars3d.widget.isActivate("widgetsTS/qyDetailsView/widget.js")) { |
| | | |
| | | var detailWiget = mars3d.widget.getClass("widgetsTS/qyDetailsView/widget.js"); |
| | | |
| | | |
| | | detailWiget.showSPJK(); |
| | | detailWiget.showSPJK(); |
| | | |
| | | }else{ |
| | | |
| | | } else { |
| | | |
| | | mars3d.widget.activate({ |
| | | uri: "widgetsTS/qyDetailsView/widget.js", |
| | | dataQy: itemCode, |
| | | }); |
| | | |
| | | |
| | | } |
| | | |
| | | } |