"use script"; //开发环境建议开启严格模式
|
//系统 功能入口
|
|
var userid = '2';
|
|
|
var Vec_annoTileLayer;
|
var Img_annoTileLayer;
|
|
var queryDataType = 'day';
|
var queryDataTStart = getDefaultDateTime(); // format "yyyy-MM-dd hh:00:00"
|
var queryDataTEnd = '';
|
|
|
var layer_1001_guokong;
|
var layer_1002_weizhan;
|
var layer_1003_jiance;
|
var layer_1004_taxi;
|
var layer_1005_region;
|
var layer_1006_roadsection;
|
var layer_1007_jiedao;
|
|
|
|
function getDefaultDateTime() {
|
var now = new Date;
|
now.setMinutes(now.getMinutes() - 60);
|
return now.getFullYear + '-' + (now.getMonth() + 1) + '-' + now.getDate() + ' ' + now.getHours() + ':00:00';
|
}
|
|
|
function addTDTAnnoLayer() {
|
|
Img_annoTileLayer = new mars3d.layer.TdtLayer({
|
name: "影像注记",
|
layer: "img_z",
|
key: mars3d.Token.tiandituArr,
|
});
|
Img_annoTileLayer.show = false;
|
Img_annoTileLayer.pid = 50;
|
map.addLayer(Img_annoTileLayer);
|
|
Vec_annoTileLayer = new mars3d.layer.TdtLayer({
|
name: "矢量图注记",
|
layer: "vec_z",
|
key: mars3d.Token.tiandituArr,
|
});
|
Vec_annoTileLayer.show = false;
|
Vec_annoTileLayer.pid = 50;
|
map.addLayer(Vec_annoTileLayer);
|
}
|
|
function addfunctionLayers() {
|
|
layer_1001_guokong = new mars3d.layer.DivLayer({
|
name: '国控点',
|
pid: 99, //图层管理 中使用,父节点id
|
show: false
|
});
|
map.addLayer(layer_1001_guokong);
|
|
layer_1001_guokong.on(mars3d.EventType.click, function (event) {
|
console.log("监听layer,单击了矢量对象", event);
|
|
console.log(event.graphic?.attr)
|
|
var item = event.graphic?.attr;
|
|
//haoutil.msg('单击了:' + item['高校名称'])
|
|
});
|
|
layer_1001_guokong.bindPopup(function (event) {
|
let item = event.graphic?.attr;
|
var html =
|
"高校名称:" +
|
item["高校名称"] +
|
"<br />所属地区:" +
|
item["地区"] +
|
"<br />主管部门:" +
|
item["主管部门"] +
|
"<br />办学层次:" +
|
item["办学层次"] +
|
"<br />王牌专业:" +
|
item["王牌专业"]+
|
"<br /><br /><p><a href='#' onclick='javascript:showDetail(1001,\""+item["高校名称"]+"\")' >详细信息</a></p>";
|
return html;
|
});
|
|
|
// add 国控点
|
//显示高校点
|
$.getJSON("//data.mars3d.cn/file/apidemo/gaoxiao.json", (result) => {
|
var pointColorArr = ["#f33349", "#f79a2c", "#f2fa19", "#95e40c", "#1ffee6"];
|
for (var i = 0, len = result.length; i < len; i++) {
|
var item = result[i];
|
var jwd = item["经纬度"].split(",");
|
if (jwd.length !== 2) {
|
continue;
|
}
|
|
var jd = Number(jwd[0]);
|
var wd = Number(jwd[1]);
|
var clr = pointColorArr[i % pointColorArr.length];
|
|
var graphic = new mars3d.graphic.DivGraphic({
|
position: Cesium.Cartesian3.fromDegrees(jd, wd),
|
style: {
|
html: '<div class="mars3d-animation-point" style="color:' + clr + ';"><p></p></div>',
|
//html: '<div><p><img src="img/marker/mark1.png"></p></div>',
|
distanceDisplayCondition: new Cesium.DistanceDisplayCondition(0, 200000), //按视距距离显示
|
},
|
attr: item,
|
});
|
layer_1001_guokong.addGraphic(graphic);
|
|
}
|
});
|
|
}
|
function addRoadLayer() {
|
|
//方式2:在创建地球后调用addLayer添加图层(直接new对应type类型的图层类)
|
layer_1006_roadsection = new mars3d.layer.WmsLayer({
|
pid: 99,
|
name: "上海市道路",
|
type: "wms",
|
url: "http://58.246.27.194:7011/geoserver/konglu_58/wms",
|
layers: "konglu_58:v_test",
|
crs: "EPSG:4326",
|
parameters: {
|
"transparent": "true",
|
"format": "image/png",
|
"sld": "http://127.0.0.1:8080/geoserver/styles/vis_road_bd_device_day_wms_dynamic_cat.sld"
|
},
|
center: { "lat": 31.162801, "lng": 121.543277, "alt": 50000, "heading": 359.2, "pitch": -39.5 },
|
getFeatureInfoParameters: {
|
feature_count: 10
|
},
|
//单击高亮及其样式
|
highlight: {
|
type: "wallP",
|
diffHeight: 300,
|
material: mars3d.MaterialUtil.createMaterial(mars3d.MaterialType.LineFlow, {
|
image: "img/textures/fence.png",
|
color: "#ffff00",
|
speed: 10, //速度,建议取值范围1-100
|
axisY: true,
|
}),
|
},
|
popup: "all",
|
show: false,
|
flyTo: true
|
});
|
|
//单击事件
|
layer_1006_roadsection.on(mars3d.EventType.click, function (event) {
|
console.log("单击了矢量数据,共" + event.features.length + "条", event);
|
});
|
|
map.addLayer(layer_1006_roadsection);
|
|
}
|
|
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,
|
},
|
},
|
});
|
map.addLayer(geoJsonLayer);
|
|
}
|
|
|
|
|
function addFunctionalLayers() {
|
|
|
// add mask
|
//addMaskShanghai();
|
|
addTDTAnnoLayer();
|
|
// 添加业务图层
|
addfunctionLayers();
|
|
addRoadLayer();
|
|
|
|
}
|
|
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();
|
|
}else{
|
|
mars3d.widget.activate({
|
uri: "widgetsTS/qyDetailsView/widget.js",
|
dataQy: itemCode,
|
});
|
|
}
|
|
}
|