From 54c628248c5e0470f040f89f6eec3d5d451826cd Mon Sep 17 00:00:00 2001
From: 584911253@qq.com <584911253@qq.com>
Date: 星期一, 13 三月 2023 18:19:01 +0800
Subject: [PATCH] 模型裁剪清除

---
 src/views/Synthesis/LeftMenu.vue |   52 +++++++++++++++++++++++++++++++---------------------
 1 files changed, 31 insertions(+), 21 deletions(-)

diff --git a/src/views/Synthesis/LeftMenu.vue b/src/views/Synthesis/LeftMenu.vue
index 941fa7e..4bb524a 100644
--- a/src/views/Synthesis/LeftMenu.vue
+++ b/src/views/Synthesis/LeftMenu.vue
@@ -667,7 +667,8 @@
         value: '鍏朵粬妯″瀷',
         label: '鍏朵粬妯″瀷'
       }],
-      targetY: 0.0,
+      modelClip:false,
+      clippingPlanes:null,
     };
   },
   methods: {
@@ -1519,26 +1520,33 @@
           //   window.MXModel=null;
           // } else {
           var that = this;
-          if (window.model){
-            that.modelClipping();
-          }else {
-            var tileset = Viewer.scene.primitives.add(
-                new Cesium.Cesium3DTileset({
-                  name: res.cnName,
-                  url: modelUrl+ "/tileset/m/SN/tileset.json",
-                  maximumScreenSpaceError: 64, // 鏈�澶у睆骞曠┖闂撮敊璇細16
-                  maximumMemoryUsage: 768, // 鏈�澶у唴瀛橈細512
-                  dynamicScreenSpaceError: true, // 鍑忓皯绂荤浉鏈鸿緝杩滅殑灞忓箷绌洪棿閿欒锛歠alse
-                  skipLevelOfDetail: true, // 鍦ㄩ亶鍘嗘椂鍊欒烦杩囪鎯咃細false
-                })
-            );
-            tileset.readyPromise.then((tileset) => {
-              tileset.id = res.cnName;
-              tileset.layerId = res.id;
-              Viewer.flyTo(tileset);
+          that.modelClip = !that.modelClip;
+          if (that.modelClip){
+            if (window.model){
               that.modelClipping();
-            });
-            window.model = tileset
+            }
+            else {
+              var tileset = Viewer.scene.primitives.add(
+                  new Cesium.Cesium3DTileset({
+                    name: res.cnName,
+                    url: modelUrl+ "/tileset/m/SN/tileset.json",
+                    maximumScreenSpaceError: 64, // 鏈�澶у睆骞曠┖闂撮敊璇細16
+                    maximumMemoryUsage: 768, // 鏈�澶у唴瀛橈細512
+                    dynamicScreenSpaceError: true, // 鍑忓皯绂荤浉鏈鸿緝杩滅殑灞忓箷绌洪棿閿欒锛歠alse
+                    skipLevelOfDetail: true, // 鍦ㄩ亶鍘嗘椂鍊欒烦杩囪鎯咃細false
+                  })
+              );
+              tileset.readyPromise.then((tileset) => {
+                tileset.id = res.cnName;
+                tileset.layerId = res.id;
+                Viewer.flyTo(tileset);
+                that.modelClipping();
+              });
+              window.model = tileset
+            }
+          }
+          else {
+            Viewer.entities.removeAll();
           }
           // window.model = sgworld.Creator.create3DTilesets(
           //   "",
@@ -1722,9 +1730,10 @@
         planes: [ // ClippingPlane瀵硅薄鏁扮粍闆嗗悎
           new Cesium.ClippingPlane( // 瑁佸垏闈�
               new Cesium.Cartesian3(0.0, 0.0, -1.0), // 娉曠嚎鏂瑰悜
-              0.0 // 鍘熺偣鍒板钩闈㈢殑鏈�鐭窛绂伙紝璁剧疆0灏卞ソ
+              0// 鍘熺偣鍒板钩闈㈢殑鏈�鐭窛绂伙紝璁剧疆0灏卞ソ
           ),
         ],
+        enabled:true,
         edgeWidth: 1.0, // 妯″瀷琚鍒囬儴鍒嗙殑鎴潰绾垮
       });
       let boundingSphere = window.model.boundingSphere;
@@ -1750,6 +1759,7 @@
         });
         planeEntities.push(planeEntity);
       }
+      this.clippingPlanes = clippingPlanes;
       window.model.clippingPlanes = clippingPlanes;
 
       // Select plane when mouse down

--
Gitblit v1.9.3