From 87e98d5b5efeb7a9cf6330ae03e6dd53699b7ef1 Mon Sep 17 00:00:00 2001 From: surprise <15810472099@163.com> Date: 星期一, 15 一月 2024 17:10:25 +0800 Subject: [PATCH] 代码更新 --- src/components/left/layerTree/messageInfo.vue | 7 ++ src/assets/js/Layer/mapViewer.js | 55 ++++++++++++++---- src/store/index.js | 1 src/assets/js/Layer/batchAddGrid.js | 3 src/assets/App.css | 6 +- src/assets/js/Layer/mapInfo.js | 63 ++++++++++++++++----- src/assets/js/Layer/drawGrid.js | 3 src/assets/js/Layer/model.js | 6 +- src/components/map/viewer.vue | 7 +- static/layers.json | 2 src/router/index.js | 2 src/components/left/layerTree/modelLayer.vue | 2 12 files changed, 114 insertions(+), 43 deletions(-) diff --git a/src/assets/App.css b/src/assets/App.css index ff9ecc0..7ea55f1 100644 --- a/src/assets/App.css +++ b/src/assets/App.css @@ -35,9 +35,9 @@ } .cesium-performanceDisplay-defaultContainer { - display: none; - /* top : 32px; - right: 85px; */ + /* display: none; */ + top : 32px; + right: 85px; } .cesium-viewer-bottom { diff --git a/src/assets/js/Layer/batchAddGrid.js b/src/assets/js/Layer/batchAddGrid.js index a9ddb02..e0dfe4f 100644 --- a/src/assets/js/Layer/batchAddGrid.js +++ b/src/assets/js/Layer/batchAddGrid.js @@ -8,7 +8,7 @@ var shape = this.renderRect(points); var step = 0; var $this = this; - + store.state.isBatchGridArr = true; this.handler.setInputAction(function (e) { var cartesian = Viewer.scene.pickPosition(e.position); if (!Cesium.defined(cartesian)) { @@ -132,6 +132,7 @@ } store.state.batchGridArr = arr; + // 鏄剧ず鐐� // for (var i = 0; i < arr.length; i++) { // var p = arr[i]; diff --git a/src/assets/js/Layer/drawGrid.js b/src/assets/js/Layer/drawGrid.js index 40fb77e..8cf7804 100644 --- a/src/assets/js/Layer/drawGrid.js +++ b/src/assets/js/Layer/drawGrid.js @@ -12,7 +12,7 @@ var shape = this.renderRect(points); var step = 0; var $this = this; - + store.state.isBatchGridArr =true; this.handler.setInputAction(function (e) { var cartesian = viewer.scene.pickPosition(e.position); if (!Cesium.defined(cartesian)) { @@ -203,6 +203,7 @@ this.setInsertGridData(arr, ((i + 1) * (j + 1))); } } + store.state.isBatchGridArr =false; }, async setInsertGridData(res, num) { var obj = diff --git a/src/assets/js/Layer/mapInfo.js b/src/assets/js/Layer/mapInfo.js index 6ed6046..7a360c8 100644 --- a/src/assets/js/Layer/mapInfo.js +++ b/src/assets/js/Layer/mapInfo.js @@ -4,7 +4,7 @@ '妗╁彿_Point', ], mssageInfo: null, - propertyNames:null, + propertyNames: null, Init(html) { if (!html) return; @@ -18,38 +18,71 @@ store.state.isshowZhaiHai = false; store.state.showMessageInfo = false; this.mssageInfo = null; - store.state.isShowImgUpDate = false; - store.state.isShowImgUrl= null; - this.propertyNames=null; + store.state.isShowImgUpDate = false; + store.state.isShowImgUrl = null; + this.propertyNames = null; store.state.isireamUrl = null; store.state.isShowMenuCount = false; - + + }, + setTileSetInfo(res) { + var propertyNames = res.getPropertyIds(); + if(!propertyNames || propertyNames.length<=0)return; + this.setRestLayer(); + var val = []; + for(var i = 0; i <propertyNames.length;i++){ + var name= propertyNames[i] + var obj = { + name: name, + value: res.getProperty(name) + } + val.push(obj) + } + this.showMapInfo(val); }, setGeoJsonInfo(res) { if (res.projectId && res.frameNo) { - this.setRestLayer(); + this.setRestLayer(); store.state.showZhaiHaiImg = res; store.state.isshowZhaiHai = true; - }else if(res.sourceType && res.sourceType._value == "imgUp"){ + } else if (res.sourceType && res.sourceType._value == "imgUp") { this.setRestLayer(); - + setTimeout(() => { - store.state.isShowImgUrl= res._path._value; - store.state.isShowImgUpDate = true; + store.state.isShowImgUrl = res._path._value; + store.state.isShowImgUpDate = true; }, 100); - - }else { + + } else { var val_name = res._propertyNames; - this.propertyNames =res._propertyNames; + this.propertyNames = res._propertyNames; var val = []; + var enName = ['ZH', 'HY', 'YH', 'HZ', 'Lh', 'R', 'QZ', 'CORNER', 'SL', 'WIDEN'] + var cnName = [ + '鍓嶇紦鍜屾洸绾胯捣鐐�', + '鍦嗘洸绾胯捣鐐�', + '鍦嗘洸绾挎鐐�', + '鍚庣紦鍜屾洸绾挎鐐�', + '缂撳拰鏇茬嚎闀垮害', + '骞虫洸绾垮崐寰�', + '鍦嗘洸绾夸腑蹇冪偣', + '杞', + '瓒呴珮鍊�', + '鍔犲鍊�' + + ] for (var i = 0; i < val_name.length; i++) { + var name = val_name[i] + if (enName.indexOf(name) > -1) { + name = cnName[enName.indexOf(name)] + } var obj = { - name: val_name[i], + name: name, value: res[val_name[i]]._value, } val.push(obj) } - + this.showMapInfo(val); } }, diff --git a/src/assets/js/Layer/mapViewer.js b/src/assets/js/Layer/mapViewer.js index 7a5500c..dba4e3e 100644 --- a/src/assets/js/Layer/mapViewer.js +++ b/src/assets/js/Layer/mapViewer.js @@ -19,24 +19,30 @@ let lat = Cesium.Math.toDegrees(cartographic.latitude); // 绾害 let alt = cartographic.height; // 楂樺害锛屾き鐞冮潰height姘歌繙绛変簬 let coordinate = { - longitude: Number(lng.toFixed(6)), - latitude: Number(lat.toFixed(6)), + longitude: Number(lng), + latitude: Number(lat), altitude: Number(alt.toFixed(2)), heading: 0, pitch: 0, roll: 0, scale: 1, }; + store.state.coordinate = coordinate; - if (store.state.addModelFlag) { - model.setModelCoord(coordinate); + if(store.state.isBatchGridArr){ - } - if (store.state.isMeasureFlag) { + }else if (store.state.addModelFlag) { + model.setModelCoord(coordinate); + + }else if (store.state.isMeasureFlag) { store.state.measureCoordObj = coordinate; store.state.isShowMeasureCoord = true; - } - if (Cesium.defined(nPickFeature)) { + + }else if (store.state.isQueryFalag) { + + store.state.isQyeryCoord = coordinate; + + }else if (Cesium.defined(nPickFeature)) { mapInfo.setRestLayer(); if (nPickFeature.id && nPickFeature.id.id == 'Rectangle') return @@ -53,14 +59,37 @@ } else if (name == "DLLMJ0001") { store.state.isireamUrl = "/Data/html/hd3dmap.html?id=3493&type=8"; store.state.isShowMenuCount = true; + } else if (name == "DLBZP0023") { + store.state.isireamUrl = "/Data/html/hd3dmap.html?id=3494&type=5"; + store.state.isShowMenuCount = true; + } else if (name == "DLBZP0024") { + store.state.isireamUrl = "/Data/html/hd3dmap.html?id=3491&type=8"; + store.state.isShowMenuCount = true; + }else if(name === "DLBZP0026"){ + store.state.isireamUrl = "/Data/html/hd3dmap.html?id=3505&type=8"; + store.state.isShowMenuCount = true; + }else if(name === "DLBZP0029"){ + store.state.isireamUrl = "/Data/html/hd3dmap.html?id=3646&type=5"; + store.state.isShowMenuCount = true; + }else if(name === "DLBZP0027"){ + store.state.isireamUrl = "/Data/html/hd3dmap.html?id=3685&type=99"; + store.state.isShowMenuCount = true; + } else if(name === "DLBZP0027"){ + store.state.isireamUrl = "/Data/html/hd3dmap.html?id=3685&type=99"; + store.state.isShowMenuCount = true; + }else if(name === "DLBZP0072"){ + store.state.isireamUrl = "/Data/html/hd3dmap.html?id=3719&type=5"; + store.state.isShowMenuCount = true; + }else{ + mapInfo.setTileSetInfo(nPickFeature) } + + + }else{ + } } - if (store.state.isQueryFalag) { - - store.state.isQyeryCoord = coordinate; - } - + }, Cesium.ScreenSpaceEventType.LEFT_CLICK) }, addRightClick() { diff --git a/src/assets/js/Layer/model.js b/src/assets/js/Layer/model.js index 1a90de7..6f768c9 100644 --- a/src/assets/js/Layer/model.js +++ b/src/assets/js/Layer/model.js @@ -46,7 +46,7 @@ name: this.title.name, longitude: res.longitude, latitude: res.latitude, - altitude: res.altitude, + altitude: 18.1, heading: res.heading, pitch: res.pitch, roll: res.roll, @@ -88,8 +88,8 @@ id: res.id, url: url, scale: res.scale, - minimumPixelSize: 200, - maximumScale: 200000, + minimumPixelSize: 1, + maximumScale: 10, modelMatrix: modelMatrix })); diff --git a/src/components/left/layerTree/messageInfo.vue b/src/components/left/layerTree/messageInfo.vue index aeb1c92..ab246e4 100644 --- a/src/components/left/layerTree/messageInfo.vue +++ b/src/components/left/layerTree/messageInfo.vue @@ -15,7 +15,10 @@ </div> <div class="modelContent"> <div v-show="!showMenuGrid" class="contentMessage" v-for="(item, index) in modelOption" :key="index"> - <div>{{ item.name }}</div> + <div> + <label>{{ item.name }}</label> + + </div> <div>{{ item.value }}</div> </div> <div v-show="showMenuGrid" class="contentMessage" v-for="(item, index) in modelOption" :key="index"> @@ -203,6 +206,8 @@ line-height: 50px; border-right: 1px solid white; border-top: 1px solid white !important; + word-wrap:break-word; + } div:first-child { diff --git a/src/components/left/layerTree/modelLayer.vue b/src/components/left/layerTree/modelLayer.vue index c15d924..6d2db5d 100644 --- a/src/components/left/layerTree/modelLayer.vue +++ b/src/components/left/layerTree/modelLayer.vue @@ -52,7 +52,7 @@ model.changeLayer(item, true); } else { model.changeBatchLayer(item, true); - + this.$store.state.isBatchGridArr =false; let coordinates = this.$store.state.batchGridArr; let shape = this.$store.state.batchShape; Viewer.entities.remove(shape); diff --git a/src/components/map/viewer.vue b/src/components/map/viewer.vue index 404c08f..3d403bc 100644 --- a/src/components/map/viewer.vue +++ b/src/components/map/viewer.vue @@ -102,9 +102,9 @@ window.sgworld = new SmartEarth.EarthCtrl( "sdkContainer", { - StaticFileBaseUrl: "../../../static/CimSDK/", + // StaticFileBaseUrl: "../../../static/CimSDK/", // StaticFileBaseUrl: "../../../SW/static/CimSDK/", - // StaticFileBaseUrl: "../../../JSJKZHGS/static/CimSDK/", + StaticFileBaseUrl: "../../../JSJKZHGS/static/CimSDK/", }, {}, {}, @@ -131,7 +131,8 @@ window.viewer = sgworld._Viewer; sgworld._Viewer.scene.moon.show = false; // Viewer.terrainProvider=Cesium.createWorldTerrain() - + //鏄剧ずfps + sgworld._Viewer.scene.debugShowFramesPerSecond = true; window.sgwfs = new SmartEarth.WFSTool(sgworld._Viewer, Cesium); Viewer.shadows = false; //娣卞害妫�娴� diff --git a/src/router/index.js b/src/router/index.js index f4a5627..51d631f 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -30,7 +30,7 @@ ]; const router = new Router({ mode: "history", - // base: '/JSJKZHGS',//姝e紡鐗� 鎵撳寘鏃惰В寮� + base: '/JSJKZHGS',//姝e紡鐗� 鎵撳寘鏃惰В寮� // base: '/SW',//娴嬭瘯鐗� 鎵撳寘鏃惰В寮� routes, }); diff --git a/src/store/index.js b/src/store/index.js index 8656af0..d6d9e72 100644 --- a/src/store/index.js +++ b/src/store/index.js @@ -55,6 +55,7 @@ batchGridArr: [], isShowMenuCount:false, isireamUrl:null, + isBatchGridArr:false, }, mutations: { selectedLayer(state, b) { diff --git a/static/layers.json b/static/layers.json index a5b6b38..a6e904a 100644 --- a/static/layers.json +++ b/static/layers.json @@ -145,7 +145,7 @@ "effectsMaxHeight": 0, "skipLevelofDetail": true, "preferLeaves": true, - "maximumScreenSpaceError": 24, + "maximumScreenSpaceError": 2, "maximumMemoryUsage": 1024 } ], -- Gitblit v1.9.3