From b5bbbd19cf0b3c2b7674e5ecb6c1847f0ec734e4 Mon Sep 17 00:00:00 2001
From: 罗广辉 <guanghui.luo@foxmail.com>
Date: Wed, 04 Mar 2026 16:26:29 +0800
Subject: [PATCH] feat: 贴地

---
 applications/drone-command/src/views/detectionCountermeasure/detectionRange/DetectionRangeDialog.vue |    9 ++++++---
 1 files changed, 6 insertions(+), 3 deletions(-)

diff --git a/applications/drone-command/src/views/detectionCountermeasure/detectionRange/DetectionRangeDialog.vue b/applications/drone-command/src/views/detectionCountermeasure/detectionRange/DetectionRangeDialog.vue
index 4deb756..5713bd5 100644
--- a/applications/drone-command/src/views/detectionCountermeasure/detectionRange/DetectionRangeDialog.vue
+++ b/applications/drone-command/src/views/detectionCountermeasure/detectionRange/DetectionRangeDialog.vue
@@ -311,6 +311,7 @@
 				width: 40,
 				height: 56,
 				verticalOrigin: Cesium.VerticalOrigin.BOTTOM, // 设置图片底部对齐坐标点
+				heightReference: Cesium.HeightReference.CLAMP_TO_GROUND,
 			},
 			label: {
 				text: `${longitude.toFixed(6)}, ${latitude.toFixed(6)}`,
@@ -325,7 +326,7 @@
 				outlineWidth: 1,
 				outlineColor: Cesium.Color.WHITE,
 				pixelOffset: new Cesium.Cartesian2(0, -72),
-				eyeOffset: new Cesium.Cartesian3(0, 0, -20),
+				heightReference: Cesium.HeightReference.CLAMP_TO_GROUND,
 			},
 		})
 	} else {
@@ -391,7 +392,7 @@
 				material: Cesium.Color.fromCssColorString('#6b9ca8').withAlpha(0.6),
 				outline: true,
 				outlineColor: Cesium.Color.fromCssColorString('#6b9ca8').withAlpha(0.6),
-				heightReference: Cesium.HeightReference.NONE,
+				heightReference: Cesium.HeightReference.CLAMP_TO_GROUND,
 			},
 		})
 		return
@@ -437,7 +438,9 @@
 
 function handleMapClick(click) {
 	const pos = click.position
-	const cartesian3 = viewer.camera.pickEllipsoid(pos, viewer.scene.globe.ellipsoid)
+	const ray = viewer.camera.getPickRay(pos)
+	if (!ray) return
+	const cartesian3 = viewer.scene.globe.pick(ray, viewer.scene)
 	if (!cartesian3) return
 	const carto = Cesium.Cartographic.fromCartesian(cartesian3)
 	const longitude = Number(Cesium.Math.toDegrees(carto.longitude).toFixed(6))

--
Gitblit v1.9.3