From d4a7ff209253655b044397d50fcb6e5480220a78 Mon Sep 17 00:00:00 2001
From: guoshilong <123456>
Date: Tue, 13 Sep 2022 11:17:58 +0800
Subject: [PATCH] 地图模式地块未绘制时报错

---
 src/components/map/plotMap.vue |   30 +++++++++++++++++-------------
 1 files changed, 17 insertions(+), 13 deletions(-)

diff --git a/src/components/map/plotMap.vue b/src/components/map/plotMap.vue
index ede9dc4..06b4e6e 100644
--- a/src/components/map/plotMap.vue
+++ b/src/components/map/plotMap.vue
@@ -474,18 +474,7 @@
 
         // 经纬度测算中心位置
         getCenter (arr) {
-            var positionArr = []
-            arr.forEach(e=>{
-                // e = new global.DC.Namespace.Cesium.Cartesian3(e[0]-0, e[1]-0, 0)
-                e[0] = e[0]-0
-                e[1] = e[1]-0
-                positionArr.push(e)
-            })
-            positionArr.push(arr[0])
-            var positionTurf = [positionArr]
-            var polygon = turf.polygon(positionTurf);
-            var centroid = turf.centroid(polygon);
-            let centerLonLat = []
+
             // if (arr.length) {
             //     const lon = []
             //     const lat = []
@@ -509,7 +498,22 @@
             //     centerLonLat = [Number(centerLongitude), Number(centerLatitude)]
             //     console.log("中心",centerLonLat)
             // }
-            centerLonLat = [centroid.geometry.coordinates[0],centroid.geometry.coordinates[1]]
+            let centerLonLat = []
+            if(arr.length >= 3 ){
+                var positionArr = []
+                arr.forEach(e=>{
+                    // e = new global.DC.Namespace.Cesium.Cartesian3(e[0]-0, e[1]-0, 0)
+                    e[0] = e[0]-0
+                    e[1] = e[1]-0
+                    positionArr.push(e)
+                })
+                positionArr.push(arr[0])
+                var positionTurf = [positionArr]
+                var polygon = turf.polygon(positionTurf);
+                var centroid = turf.centroid(polygon);
+
+                centerLonLat = [centroid.geometry.coordinates[0],centroid.geometry.coordinates[1]]
+            }
             return centerLonLat
         }
     }

--
Gitblit v1.9.3