From 00b733dc6ae372be365a01046ead5c062d8f5617 Mon Sep 17 00:00:00 2001
From: ansel0926 <ansel0926@gmail.com>
Date: 星期二, 17 五月 2022 18:43:44 +0800
Subject: [PATCH] 更换字体图片
---
view/project/layerAnalysis.html | 163 +++++++++++++++++++++++++++++++++++++++++------------
1 files changed, 125 insertions(+), 38 deletions(-)
diff --git a/view/project/layerAnalysis.html b/view/project/layerAnalysis.html
index ad121b3..81deb1f 100644
--- a/view/project/layerAnalysis.html
+++ b/view/project/layerAnalysis.html
@@ -56,6 +56,11 @@
border-radius: 6px;
background-color: #999;
}
+
+ .layui-tree-btnGroup .layui-icon {
+ display: inline-block;
+ color: white
+ }
</style>
<script>
@@ -64,9 +69,10 @@
layui.use(['tree'], function () {
var tree = layui.tree
isloading = true;
- tree.render({
+ var modelTree = tree.render({
elem: '#model-tree-list'
, data: layerMenu
+ , edit: ["del"]
, showCheckbox: true //鏄惁鏄剧ず澶嶉�夋
, id: 'model-tree-list'
, isJump: false //鏄惁鍏佽鐐瑰嚮鑺傜偣鏃跺脊鍑烘柊绐楀彛璺宠浆
@@ -86,7 +92,7 @@
var data = obj.data.ext; //鑾峰彇褰撳墠鐐瑰嚮鐨勮妭鐐规暟鎹�
var viewer = parent.viewer;
var Cesium = parent.Cesium;
- if (type != 'BaseMap' && type != 'Terrain' && type != 'Plotting') {
+ if (type != 'BaseMap' && type != 'Terrain' && type != 'Plotting' && type != 'DDE') {
var model = undefined;
switch (obj.data.field) {
case "Primitive": {
@@ -108,26 +114,84 @@
break;
}
case "shpFeature": {
- let path = data.path;
+ console.log("shpFeature click");
+
+ }
+ }
+ if (model != undefined) {
+ viewer.flyTo(model, {
+ offset: {
+ heading: 0,
+ pitch: -90
+ },
+ }).then(function () {
+ // if (obj.data.field == 'Primitive') {
+ // setTimeout(() => {
+ // dptiles(model.root.children);
+ // }, 5000);
+ // }
+ });
+ }
+
+ }
+ else if (type == 'DDE') {
+ var lon, lat, alt;
+ lon = obj.data.lon;
+ lat = obj.data.lat;
+ alt = obj.data.altitude;
+ console.log(lon, lat, alt);
+ if (lon != undefined && lat != undefined && alt != undefined) {
+ let flyPromise = viewer.camera.flyTo({
+ duration: 3,
+ destination: Cesium.Cartesian3.fromDegrees(Number(lon), Number(lat), alt),
+ orientation: {
+ heading: Cesium.Math.toRadians(0), //缁曞瀭鐩翠簬鍦板績鐨勮酱鏃嬭浆
+ pitch: Cesium.Math.toRadians(-90), //缁曠含搴︾嚎鏃嬭浆
+ roll: Cesium.Math.toRadians(0) //缁曠粡搴︾嚎鏃嬭浆
+ },
+ });
+ }
+ }
+ }
+ , oncheck: function (obj) {
+ if (isloading) {
+ return;
+ }
+ var ischeck = obj.checked;
+ var objData = obj.data;
+ var type = objData.field;
+
+ if (type == "shpFeature") {//濡傛灉鏄� shp鍥惧眰
+ if(ischeck){
+ let data= obj.data.ext;
+
+ let path = data.path;
let shpArray = JSON.parse(path);
var shpPromises = [];
for (let i = 0; i < shpArray.length; i++) {
- shpPromises.push( Cesium.loadBlob(parent.httpConfig.nginxUrl + shpArray[i]));
- }
-
+ shpPromises.push(parent.Cesium.loadBlob(parent.httpConfig.nginxUrl + shpArray[i]));
+ }
+
+ //鍒ゆ柇鏄惁瀛樺湪
+ let len = parent.viewer.imageryLayers.length;
+ if (parent.layerMap.get(obj.data.id) != null) {
+ parent.vMsg.warning("鍥惧眰宸茬粡瀛樺湪鏃犻渶閲嶅鍔犺浇");
+ return;
+ }
+
var layer = null;
parent.Cesium.when.all(shpPromises, function (files) {
- for(let i=0;i<shpArray.length;i++){
+ for (let i = 0; i < shpArray.length; i++) {
files[i].name = shpArray[i];
}
-
+
var shpProvider = new parent.VectorTileImageryProvider({
source: files,
- zIndex: 99,
+ zIndex: len,
removeDuplicate: false,
defaultStyle: {
- outlineColor: "rgb(255,0,0)",
- fillColor: "rgba(255,0,0,0.6)",
+ outlineColor: data.color,
+ fillColor: data.color,
lineWidth: 1,
fill: false,
tileCacheSize: 200,
@@ -151,7 +215,8 @@
simplify: false
});
shpProvider.readyPromise.then(function () {
- layer = parent.viewer.imageryLayers.addImageryProvider(shpProvider);
+ parent.layerMap.set(obj.data.id, len);
+ layer = parent.viewer.imageryLayers.addImageryProvider(shpProvider, len);
parent.viewer.flyTo(layer);
parent.Cesium.Camera.DEFAULT_VIEW_RECTANGLE = shpProvider.rectangle;
@@ -159,34 +224,21 @@
});
});
-
-
+ }else{//绉婚櫎shp
+ var id = obj.data.id;
+ var index = parent.layerMap.get(id);
+
+ parent.viewer.imageryLayers.remove(parent.viewer.imageryLayers.get(index),true);
+ parent.layerMap.delete(id);
+ for(let key of parent.layerMap.keys()){//鏁扮粍鐨勬父鏍�-1
+ if( parent.layerMap.get(key)>index){
+ parent.layerMap.set(key, parent.layerMap.get(key)-1);
+ }
}
}
- if (model != undefined) {
- viewer.flyTo(model, {
- offset: {
- heading: 0,
- pitch: -90
- },
- }).then(function () {
- // if (obj.data.field == 'Primitive') {
- // setTimeout(() => {
- // dptiles(model.root.children);
- // }, 5000);
- // }
- });
- }
+
+ }
- }
- }
- , oncheck: function (obj) {
- if (isloading) {
- return;
- }
- var ischeck = obj.checked;
- var objData = obj.data;
- var type = objData.field;
if (type != 'BaseMap' && type != 'Terrain' && type != 'Plotting') {
//changeChecked(ischeck, parent.getNodeById(objData.id));
/*
@@ -256,6 +308,7 @@
let result = modelType == 'Primitive' ? parent.delprimitiveModel(modelId) : parent.delentityModel(modelId);
}
parent.delNodeById(modelId, layerMenu);
+ delDrawEntity(modelId);
}
}
});
@@ -312,6 +365,37 @@
changeParentChecked(ischeck, parentOfData);
}
}
+ //zzf:闅愯棌闄ょ粯鍥捐彍鍗曚互澶栫殑鍒犻櫎鎸夐挳
+ $(modelTree.config.elem[0].children[0].childNodes).each(function () {
+ let parentDiv = $(this)[0].childNodes[0];
+ $(parentDiv).find("div .layui-icon-delete").remove();
+ if ($(this)[0].dataset.id != "4") {
+ let childrenDiv = $(this)[0].childNodes[1];
+ $(childrenDiv).find("div .layui-icon-delete").remove();
+ }
+ })
+ function delDrawEntity(modelId) {
+ let updateData = {
+ "ids": modelId,
+ }
+ let token = window.localStorage.getItem("token");
+ $.ajax({
+ type: "post",
+ async: false,
+ url: parent.httpConfig.webApiUrl + "landstamp/front/removeDrawEntity",
+ data: updateData,
+ contentType: "application/x-www-form-urlencoded",
+ beforeSend: function (request) {
+ request.setRequestHeader("token", token);
+ },
+ success: function (data) {
+ console.log(data)
+ },
+ error: function (XMLHttpRequest, textStatus, errorThrown) {
+ console.log("ajax璇锋眰澶辫触锛�");
+ }
+ });
+ }
});
</script>
@@ -347,7 +431,10 @@
request.setRequestHeader("token", token);
},
success: function (data) {
- layerMenu.push(data);
+ if (parent.getRootById(data.id) == null) {
+ data.isloading = false;
+ layerMenu.push(data);
+ }
},
error: function (XMLHttpRequest, textStatus, errorThrown) {
console.log(errorThrown);
--
Gitblit v1.9.1