zy 1 anno fa
parent
commit
f02a2bedf2
1 ha cambiato i file con 40 aggiunte e 28 eliminazioni
  1. 40 28
      neim-ui/src/views/largeScreenPage/components/3DbigeMap.vue

+ 40 - 28
neim-ui/src/views/largeScreenPage/components/3DbigeMap.vue

@@ -54,8 +54,9 @@ export default {
         let viewer = new bmgl.Viewer('container', {
           // mapId: 'bigemap.zhongkexingtu',
           terrainId: 'bigemap.re-gaocheng',
-          mapId: 'bigemap.re-huafu',
+          mapId:'bigemap.re-huafu',
         });
+        window.viewer=viewer;
         viewer.camera.setView({
           destination: window.bmgl.Cartesian3.fromDegrees(...center, altitude),
           // viewer.camera.computeViewRectangle()
@@ -66,6 +67,15 @@ export default {
           // }
         });
 
+        let helper = new bmgl.EventHelper();
+        helper.add(viewer.scene.globe.tileLoadProgressEvent, e => {
+          var layer=viewer.imageryLayers.get(0);
+          layer.imageryProvider._imageryProvider._resource._url=layer.imageryProvider._imageryProvider._resource._url.replace('9000','17143');
+          console.log(layer.imageryProvider._imageryProvider._resource._url)
+          helper.removeAll();
+          helper=null;
+        });
+
         var scene = viewer.scene;
         var handler = new bmgl.ScreenSpaceEventHandler(scene.canvas);
         var ellipsoid = scene.globe.ellipsoid; //得到当前三维场景的椭球体
@@ -174,25 +184,25 @@ export default {
         // console.log(this.mapData.allPointInfo)
         if (this.mapData.allPointInfo !== null && this.mapData.allPointInfo !== undefined) {
           let image = [{
-            billboard:{
+            billboard: {
               heightReference: bmgl.HeightReference.CLAMP_TO_GROUND,
               image: '/img/fengji.png',
               scale: 0.6
             }
-          },{
-            billboard:{
+          }, {
+            billboard: {
               heightReference: bmgl.HeightReference.CLAMP_TO_GROUND,
               image: '/img/fengji/fengjiblue.png',
               scale: 0.2
             }
-          },{
-            billboard:{
+          }, {
+            billboard: {
               heightReference: bmgl.HeightReference.CLAMP_TO_GROUND,
               image: '/img/fengji/fengjigreen.png',
               scale: 0.2
             }
-          },{
-            billboard:{
+          }, {
+            billboard: {
               heightReference: bmgl.HeightReference.CLAMP_TO_GROUND,
               image: '/img/fengji/fengjiyellow.png',
               scale: 0.2
@@ -201,14 +211,14 @@ export default {
           let data = this.mapData.allPointInfo
           let i = 0
           for (let fan of data.fan) {
-            if(i>3) i = 0
+            if (i > 3) i = 0
             for (let item of fan.data) {
-              if(fan.name === '依兰珠山风电场'){
+              if (fan.name === '依兰珠山风电场') {
                 viewer.entities.add({
                   position: bmgl.Cartesian3.fromDegrees(Number(item.longitudeFan), Number(item.latitudeFan)),
                   billboard: image[3].billboard
                 });
-              }else{
+              } else {
                 viewer.entities.add({
                   position: bmgl.Cartesian3.fromDegrees(Number(item.longitudeFan), Number(item.latitudeFan)),
                   billboard: image[i].billboard
@@ -218,27 +228,29 @@ export default {
             i++;
           }
           for (let coordinatesList of data.coordinatesList) {
-            for (let item of coordinatesList) {
-              if (item.length > 0) {
-                let latlngs = []
-                for (let coor of item) {
-                  latlngs.push(Number(coor.longitude))
-                  latlngs.push(Number(coor.latitude))
-                }
-                viewer.entities.add({
-                  polygon: {
-                    hierarchy: bmgl.Cartesian3.fromDegreesArray(latlngs),
-                    extrudedHeight: 0,
-                    perPositionHeight: true,
-                    material: bmgl.Color.CYAN.withAlpha(0.1),
-                    outline: true,
-                    outlineColor: bmgl.Color.CYAN
+            for (let key in coordinatesList) {
+              let coordinates = coordinatesList[key]
+              for (let item of coordinates) {
+                if (item.length > 0) {
+                  let latlngs = []
+                  for (let coor of item) {
+                    latlngs.push(Number(coor.longitude))
+                    latlngs.push(Number(coor.latitude))
                   }
-                });
+                  viewer.entities.add({
+                    polygon: {
+                      hierarchy: bmgl.Cartesian3.fromDegreesArray(latlngs),
+                      extrudedHeight: 0,
+                      perPositionHeight: true,
+                      material: bmgl.Color.CYAN.withAlpha(0.1),
+                      outline: true,
+                      outlineColor: bmgl.Color.CYAN
+                    },
+                  });
+                }
               }
             }
           }
-
           // 项目或者场站id
 
           let id = this.mapData.id