From 5d6d890cfd10466d5d14ff5177adcc888baaa0e4 Mon Sep 17 00:00:00 2001
From: 张世豪 <979909237@qq.com>
Date: 星期三, 17 十二月 2025 17:46:13 +0800
Subject: [PATCH] 新增了边界距离显示优化了设置页面布局

---
 src/zhuye/Shouye.java |   20 ++++++++++++++++++--
 1 files changed, 18 insertions(+), 2 deletions(-)

diff --git a/src/zhuye/Shouye.java b/src/zhuye/Shouye.java
index e76f5c7..56c4e39 100644
--- a/src/zhuye/Shouye.java
+++ b/src/zhuye/Shouye.java
@@ -452,6 +452,11 @@
 			}
 		}
 		mapRenderer.setIdleTrailDurationSeconds(durationSeconds);
+		
+		// 搴旂敤杈圭晫璺濈鏄剧ず璁剧疆
+		Setsys setsys = new Setsys();
+		setsys.initializeFromProperties();
+		mapRenderer.setBoundaryLengthVisible(setsys.isBoundaryLengthVisible());
 	}
 
 	private void createHeaderPanel() {
@@ -3510,7 +3515,11 @@
 			String obstacles,
 			String plannedPath,
 			Runnable returnAction) {
-		if (mapRenderer == null || !isMeaningfulValue(plannedPath)) {
+		if (mapRenderer == null) {
+			return false;
+		}
+		// 鍏佽娌℃湁璺緞鐨勯瑙堬紙渚嬪闅滅鐗╅瑙堬級锛屽彧瑕佹湁杩斿洖鍥炶皟鍗冲彲
+		if (!isMeaningfulValue(plannedPath) && returnAction == null) {
 			return false;
 		}
 
@@ -3537,10 +3546,17 @@
 
 		mapRenderer.setCurrentBoundary(boundary, landNumber, landName);
 		mapRenderer.setCurrentObstacles(obstacles, landNumber);
-		mapRenderer.setCurrentPlannedPath(plannedPath);
+		// 鍙湁鍦ㄦ湁璺緞鏃舵墠璁剧疆璺緞
+		if (isMeaningfulValue(plannedPath)) {
+			mapRenderer.setCurrentPlannedPath(plannedPath);
+		} else {
+			mapRenderer.setCurrentPlannedPath(null);
+		}
 		mapRenderer.clearHandheldBoundaryPreview();
 		mapRenderer.setBoundaryPointSizeScale(1.0d);
 		mapRenderer.setBoundaryPointsVisible(isMeaningfulValue(boundary));
+		// 鍚敤闅滅鐗╄竟鐣岀偣鏄剧ず
+		mapRenderer.setObstaclePointsVisible(isMeaningfulValue(obstacles));
 
 		String displayName = isMeaningfulValue(landName) ? landName : landNumber;
 		updateCurrentAreaName(displayName);

--
Gitblit v1.10.0