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 | 126 ++++++++++++++++++++++++++----------------
1 files changed, 78 insertions(+), 48 deletions(-)
diff --git a/view/project/layerAnalysis.html b/view/project/layerAnalysis.html
index 8ee58f4..81deb1f 100644
--- a/view/project/layerAnalysis.html
+++ b/view/project/layerAnalysis.html
@@ -114,11 +114,69 @@
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;
@@ -126,14 +184,14 @@
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,
@@ -157,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;
@@ -165,50 +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);
- // }
- });
- }
+
+ }
- }
- 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);
- 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 != 'BaseMap' && type != 'Terrain' && type != 'Plotting') {
//changeChecked(ischeck, parent.getNodeById(objData.id));
/*
--
Gitblit v1.9.1