From f5763f787d5cc5aa0b7d248e0f494c4232f1e3f3 Mon Sep 17 00:00:00 2001 From: surprise <15810472099@163.com> Date: 星期一, 27 十一月 2023 16:31:21 +0800 Subject: [PATCH] 版本更新 --- src/assets/js/Map/menuTool.js | 91 ++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 80 insertions(+), 11 deletions(-) diff --git a/src/assets/js/Map/menuTool.js b/src/assets/js/Map/menuTool.js index 77671cd..fb8e566 100644 --- a/src/assets/js/Map/menuTool.js +++ b/src/assets/js/Map/menuTool.js @@ -19,8 +19,13 @@ polygon: SmartEarth.Cesium.Color.fromCssColorString("#ffff0050"), }, exportSquare: null, + imageryProvider: null, topTools(res) { this.toolFlag = res.id; + + + Viewer.scene.globe.depthTestAgainstTerrain = false + Viewer.scene.pickTranslucentDepth = false switch (res.id) { case "a2": //鐐规极娓� this.pointRoam(); @@ -97,12 +102,18 @@ Viewer.animation.container.style.visibility = "hidden"; Viewer.timeline.container.style.visibility = "hidden"; Viewer.clock.shouldAnimate = false; - return (earthCtrl.shadows = false); + Viewer.scene.globe.enableLighting = false; + earthCtrl.shadows = false; + return } Viewer.clock.shouldAnimate = true; + Viewer.scene.globe.enableLighting = true; Viewer.animation.container.style.visibility = "visible"; Viewer.timeline.container.style.visibility = "visible"; earthCtrl.shadows = true; + earthCtrl.terrainShadows = SmartEarth.Cesium.ShadowMode.ENABLED + + earthCtrl.shadowMap.size = 1024 }, setLocalPosition(res) { if (this.localPoint) { @@ -136,8 +147,11 @@ window.material = null; globe.material = null; Viewer.scene.globe.enableLighting = false; + store.state.slopeQueyFlag = false; + store.state.showSlopeQuey = false; return; } + store.state.slopeQueyFlag = true; window.material = new Cesium.Material({ fabric: { type: "ElevationRamp", @@ -152,13 +166,43 @@ Viewer.scene.globe.material = window.material; }, - + setImageLayerChange() { + if (this.imageryProvider) { + Viewer.imageryLayers.raiseToTop(this.imageryProvider); + } + }, //绛夐珮绾� setcontour() { + // if (this.imageryProvider) { + // Viewer.imageryLayers.remove(this.imageryProvider); + // this.imageryProvider = null; + // return + // } + // var that = this; + // var imageryProvider = new Cesium.UrlTemplateImageryProvider({ + // url: 'http://192.168.20.83:80/Moon/LFData/2d/tiles/contour_500/{mz}/{my}/{mx}.png', + // tilingScheme: new Cesium.GeographicTilingScheme(), + // customTags: { + // mz: function (imageryProvider, x, y, level) { + // return 'L' + that.zeroFill(level + 1, 2, 10); // 娉ㄦ剰瑙傛祴锛屽眰绾у姞1浜� + // }, + // mx: function (imageryProvider, x, y, level) { + // return 'C' + that.zeroFill(x, 8, 16); + // }, + // my: function (imageryProvider, x, y, level) { + // return 'R' + that.zeroFill(y, 8, 16); + // } + // } + // }); + // this.imageryProvider = Viewer.imageryLayers.addImageryProvider(imageryProvider); var globe = window.Viewer.scene.globe; if (window.material) { window.material = null; globe.material = null; + + store.state.slopeQueyFlag = false; + store.state.showSlopeQuey = false; + return; } @@ -175,6 +219,16 @@ contourUniforms.spacing = 100.0; contourUniforms.color = contourColor; globe.material = window.material; + + }, + + zeroFill(num, len, radix) { + var str = num.toString(radix || 10) + while (str.length < len) { + str = '0' + str + } + + return str; }, //绾挎煡璇� spatialLineQuery() { @@ -225,7 +279,7 @@ name: name, polyline: { positions: Cesium.Cartesian3.fromDegreesArray(position), - width: 10.0, + width: 3.0, material: new Cesium.PolylineOutlineMaterialProperty({ color: new Cesium.Color.fromCssColorString('#A6D8AE').withAlpha(0.5), outlineWidth: 1, @@ -380,7 +434,9 @@ break; case "l3": //鍦ㄧ嚎鍒跺浘 store.state.isShowMap = true; - this.setThematicMap(); + setTimeout(() => { + this.setThematicMap(); + }, 200); break; case "l4": @@ -482,6 +538,7 @@ //鍦ㄧ嚎鍒跺浘 setThematicMap() { + earthCtrl.coreMap.scene.mode = SmartEarth.Cesium.SceneMode.SCENE2D; // var handle = new SmartEarth.Cesium.ScreenSpaceEventHandler( // earthCtrl.viewer.scene.canvas @@ -537,6 +594,8 @@ window.Volumetric.deleteObject(); window.Volumetric = null; } + Viewer.scene.globe.depthTestAgainstTerrain = true + Viewer.scene.pickTranslucentDepth = true window.Volumetric = earthCtrl.analysis.createVolumetricMeasure({}); window.Volumetric.startDrawing(); }, @@ -573,10 +632,12 @@ }, //绾挎极娓� lineRoam() { - earthCtrl.Command.execute(2, 3, "", (data) => { + // 缁樺埗璺嚎骞惰幏鍙栬矾寰勫姩鐢绘暟鎹� + earthCtrl.Command.execute(2, 3, "", (data) => { + data.showPoint = false; data.showLine = true; - data.mode = 1; + data.mode = 0; // 寮圭獥鏁版嵁 window.PathAnimationData = { flyData: data, @@ -589,11 +650,12 @@ offset: "r", skin: "other-class", content: SmartEarthRootUrl + "Workers/path/Path.html", - end: function () { + end: function() { PathAnimationData.fly && PathAnimationData.fly.exit(); }, }); }); + }, //娓呴櫎鎸夐挳 clearALL(id) { @@ -610,7 +672,9 @@ Viewer.animation.container.style.visibility = "hidden"; Viewer.timeline.container.style.visibility = "hidden"; Viewer.clock.shouldAnimate = false; - return (earthCtrl.shadows = false); + Viewer.scene.globe.enableLighting = false; + earthCtrl.shadows = false; + return } if (window.Volumetric) { window.Volumetric.deleteObject(); @@ -625,7 +689,12 @@ window.material = null; globe.material = null; Viewer.scene.globe.enableLighting = false; - return; + store.state.slopeQueyFlag = false; + store.state.showSlopeQuey = false; + } + if (this.imageryProvider) { + Viewer.imageryLayers.remove(this.imageryProvider) + this.imageryProvider = null; } if (window.DoubleScreen) { window.DoubleScreen && window.DoubleScreen.destroy(); @@ -695,7 +764,7 @@ offset: { heading: Cesium.Math.toRadians(0.0), pitch: Cesium.Math.toRadians(-90), - range: 0 + range: 40 } } ); @@ -753,7 +822,7 @@ }, }) - window.Viewer.flyTo(locationPolygonEntity, { + window.Viewer.flyTo(polyline, { offset: { heading: Cesium.Math.toRadians(0.0), pitch: Cesium.Math.toRadians(-90), -- Gitblit v1.9.3