From 92f7479c89d8573d954e5bf37a464c1bbef396eb Mon Sep 17 00:00:00 2001
From: yxl <584911253@qq.com>
Date: 星期四, 13 二月 2025 15:03:14 +0800
Subject: [PATCH] commit

---
 src/assets/js/mapSetFunc.js |   55 ++++++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 54 insertions(+), 1 deletions(-)

diff --git a/src/assets/js/mapSetFunc.js b/src/assets/js/mapSetFunc.js
index 7b8c046..816c19a 100644
--- a/src/assets/js/mapSetFunc.js
+++ b/src/assets/js/mapSetFunc.js
@@ -23,10 +23,18 @@
         this.creatQueryMeta(res);
         break;
       case "aroundPoi_2":
-        this.addWfsLayer(res);
+        // this.addWfsLayer(res);
+        this.addTetrahedron(res);
         break;
       case "getParam":
         this.addTetrahedron(res);
+        break;
+      case "getTAIWAN":
+        this.addWfsLayer(res);
+        // this.addTetrahedron(res);
+        break;
+      case "attackentity":
+        this.addPolyLine(res);
         break;
     }
   },
@@ -476,6 +484,41 @@
     });
   },
 
+  //缁樺埗绾�
+  addPolyLine(res) {
+    // 瑙f瀽 LINESTRING 瀛楃涓蹭负缁忕含搴﹀潗鏍囨暟缁�
+    const coordinates = res.bombpoint
+      .replace("LINESTRING", "") // 鍘婚櫎 'LINESTRING' 閮ㄥ垎
+      .replace(/[()]/g, "") // 鍘婚櫎鎷彿
+      .split(",") // 鎸夐�楀彿鍒嗗壊
+      .map(coord => {
+        const [lon, lat] = coord.trim().split(" "); // 灏嗘瘡瀵瑰潗鏍囧垎寮�
+        return [parseFloat(lon), parseFloat(lat)]; // 杞崲涓烘暟瀛�
+      });
+    const positions = coordinates.map(coord => {
+      return {
+        x: coord[0],
+        y: coord[1],
+        z: 21
+      };
+    });
+    positions.forEach((item, index) => {
+      const particle = earthCtrl.factory.createParticleEffect("flame", item, {
+        translation: SmartEarth.Cesium.Cartesian3.fromElements(0, 0, 0), //骞崇Щ
+        emissionRate: 500,
+        startScale: 15,
+        endScale: 45,
+      });
+      if (index == positions.length / 2) {
+        earthCtrl.camera.flyTo(item.x, item.y, 3000, 0, -90, 0, 2);
+      }
+      this.layerList.push({
+        layer: particle,
+        func: 'attackentity'
+      });
+    })
+  },
+
   removeAll() {
     store.state.setListColor = [];
     store.state.showLenged = false;
@@ -518,6 +561,11 @@
         this.layerList.splice(i, 1);
         i--;
       }
+      else if (obj.func == "getTAIWAN") {
+        this.layerList[i].layer.destroy();
+        this.layerList.splice(i, 1);
+        i--;
+      }
       else if (obj.func == "radarMaskScan") {
         this.layerList[i].layer.deleteObject();
         this.layerList.splice(i, 1);
@@ -528,6 +576,11 @@
         this.layerList.splice(i, 1);
         i--;
       }
+      else if (obj.func == "attackentity") {
+        this.layerList[i].layer.deleteObject();
+        this.layerList.splice(i, 1);
+        i--;
+      }
     }
     if (!window.terrain) {
       window.terrain = earthCtrl.factory.createTerrainLayer({

--
Gitblit v1.9.3