From ab05c69d51fb3b7b546f58ebf991fb487eec6c07 Mon Sep 17 00:00:00 2001
From: Surpriseplus <845948745@qq.com>
Date: 星期二, 10 十月 2023 10:51:08 +0800
Subject: [PATCH] 代码更新

---
 src/assets/js/rpc.js |   69 ++++++++++++++++++++--------------
 1 files changed, 41 insertions(+), 28 deletions(-)

diff --git a/src/assets/js/rpc.js b/src/assets/js/rpc.js
index 939495f..6a1dcaf 100644
--- a/src/assets/js/rpc.js
+++ b/src/assets/js/rpc.js
@@ -100,16 +100,19 @@
                 that.objArr.push(itemObj);
             });
             //鍥尯
-            var YQArr = result[1].candidates.filter(item => {
-                return item.attributes.YQmingchen.includes(res);
+            var YQArr = result[1].features.filter(item => {
+                return item.properties.YQmingchen.includes(res);
             });
+
             YQArr.forEach(val => {
                 let itemObj = {
                     type: "鍥尯",
-                    name: val.attributes.YQmingchen,
-                    address: val.attributes.YQdizhi,
-                    lon: val.location.x,
-                    lat: val.location.y
+                    name: val.properties.YQmingchen,
+                    address: val.properties.YQdizhi,
+                    lon: val.geometry.coordinates[0],
+                    lat: val.geometry.coordinates[1],
+                    geom: val.properties.Coor1 + val.properties.Coor2
+
                 };
                 that.objArr.push(itemObj);
             });
@@ -180,9 +183,14 @@
 
         let that = this;
         if (res.type == "鍥尯") {
+            var geom = res.geom.split(',');
 
+            var coord = [];
+            for (var i in geom) {
+                coord.push(parseFloat(geom[i]))
+            }
+            this.setDrawPolyExtent(coord)
         } else if (res.type == "鍦板潡") {
-
             getDiKuanFanWei(res.lon, res.lat).then(response => {
                 let center = { lon: 0, lat: 0 };
                 let polygon = that.read(response.geometry);
@@ -196,27 +204,32 @@
                         geometry.push(parseFloat(point[0]), parseFloat(point[1]))
 
                     }
-                    that.setLacationLineClear()
-                    var position = Cesium.Cartesian3.fromDegreesArray(geometry)
-
-                    that.lacationLine = Viewer.entities.add({
-                        name: "绔嬩綋澧欐晥鏋�",
-                        wall: {
-                            positions: position,
-
-
-                            material: new Cesium.DynamicWallMaterialProperty({
-                                color: Cesium.Color.RED,
-                                duration: 4000
-                            }),
-                            // 璁剧疆楂樺害
-                            maximumHeights: Array(position.length).fill(80),
-                            minimumHeights: Array(position.length).fill(10),
-                        }
-                    })
+                    that.setDrawPolyExtent(geometry)
                 }
             });
         }
+    },
+    setDrawPolyExtent(res) {
+        this.setLacationLineClear()
+        var position = Cesium.Cartesian3.fromDegreesArray(res)
+
+        this.lacationLine = Viewer.entities.add({
+            name: "绔嬩綋澧欐晥鏋�",
+            wall: {
+                positions: position,
+
+
+                material: new Cesium.DynamicWallMaterialProperty({
+                    // color: new Cesium.Color.fromCssColorString('#73DB0E'),
+                    color: new Cesium.Color.fromCssColorString('#1f1fa8'),
+                    duration: 4000,
+
+                }),
+                // 璁剧疆楂樺害
+                maximumHeights: Array(position.length).fill(80),
+                minimumHeights: Array(position.length).fill(10),
+            }
+        })
     },
 
     read(wkt) {
@@ -538,7 +551,7 @@
         );
         this.position = window.Viewer.entities.add({
             name: "FLYToMap",
-            position: Cesium.Cartesian3.fromDegrees(res.lon, res.lat, 200),
+            position: Cesium.Cartesian3.fromDegrees(res.lon, res.lat, 0),
             point: {
                 pixelSize: 1,
                 color: Cesium.Color.WHITE.withAlpha(0),
@@ -549,8 +562,8 @@
         window.Viewer.flyTo(this.position, {
             offset: {
                 heading: Cesium.Math.toRadians(0.0),
-                pitch: Cesium.Math.toRadians(-45),
-                range: 700
+                pitch: Cesium.Math.toRadians(-30),
+                range: 1500
             },
             duration: 3
         });

--
Gitblit v1.9.3