From 0f16db42e4e331bfaf084c27ca602c275e87668d Mon Sep 17 00:00:00 2001
From: 张含笑 <zhx18749296735@163.com>
Date: Tue, 28 Oct 2025 18:07:42 +0800
Subject: [PATCH] feat:渲染数据

---
 src/views/layerManagement/components/utils.js |   16 ++++++++++++----
 1 files changed, 12 insertions(+), 4 deletions(-)

diff --git a/src/views/layerManagement/components/utils.js b/src/views/layerManagement/components/utils.js
index 80c8101..a80ec1a 100644
--- a/src/views/layerManagement/components/utils.js
+++ b/src/views/layerManagement/components/utils.js
@@ -61,6 +61,8 @@
 		this.delPoint = this.delPoint.bind(this)
 		// 外部订阅者
 		this.listeners = []
+		this.polygons = []; // 存储所有多边形数据 { id, positions, entity, pointsEntity }
+		this.currentPolygonIndex = -1; // 当前操作的多边形索引
 	}
 
 	// 实体命名常量
@@ -164,6 +166,8 @@
 				ind: pointIndex, // 索引记录
 			},
 		})
+	
+		
 	}
 	// 清除不在范围内的点
 	removeLastInvalidPoint() {
@@ -308,11 +312,11 @@
 		this.removeMenuPopup()
 
 		const pickedAllEntity = this.viewer.scene.drillPick(click.position).filter(i => i.id)
-		const isStartPoint = pickedAllEntity.find(i => i.id.name === '起飞点')
+	
 		const isPolygonPoint = pickedAllEntity.find(i => i.id.name === DrawPolygon.ENTITY_NAMES.POINT)
 		const isPolygon = pickedAllEntity.find(i => i.id.name === DrawPolygon.ENTITY_NAMES.POLYGON)
 
-		if (isStartPoint) return
+
 
 		// 如果不是绘制模式
 		if (!this.drawingMode) {
@@ -349,10 +353,9 @@
 	}
 
 	// 鼠标右键点击(弹出菜单)
-	handleRightClick(click) {
+	handleRightClick(click) {		
 		const that = this
 		if (that.drawingMode) return
-
 		that.removeMenuPopup()
 
 		const pickedAllEntity = that.viewer.scene.drillPick(click.position).filter(i => i.id)
@@ -367,10 +370,12 @@
 			pickedEntity = isPolygon
 			tooltipEvent = that.delPolygon
 			menuType = 'polygon'
+		
 		} else if (isEditPoint) {
 			pickedEntity = isEditPoint
 			tooltipEvent = that.delPoint
 			menuType = 'edit-point'
+			
 		}
 
 		if (pickedEntity && this.isDeleteTheArea) {
@@ -469,6 +474,7 @@
 		menuPopup.id = 'planarPolygonEditMenu'
 		menuPopup.className = 'planar-polygon-edit-menu'
 
+
 		const menuItems =
 			type === 'polygon'
 				? [{ title: '删除测区', class: 'del-planar-polygon' }]
@@ -480,6 +486,7 @@
 			titleDiv.className = item.class
 			menuPopup.appendChild(titleDiv)
 		})
+	
 		this.isPreviewMode = true
 		menuPopupVBox.appendChild(menuPopup)
 		return menuPopupVBox
@@ -541,6 +548,7 @@
 		this.initHandler(viewer)
 		this.isPureSpotPreview = isPurePreview
 		this.startDrawing()
+		
 		let newPosition = positions.map(item => {
 			return Cesium.Cartesian3.fromDegrees(Number(item.lng), Number(item.lat), Number(item.height))
 		})

--
Gitblit v1.9.3