diff --git a/src/scene/CesiumGlobe.js b/src/scene/CesiumGlobe.js index 4dc03ad..f523d16 100644 --- a/src/scene/CesiumGlobe.js +++ b/src/scene/CesiumGlobe.js @@ -343,12 +343,12 @@ export class CesiumGlobe { // 把便签锚点贴到地形表面(否则在椭球面高度 0 上,放大旋转时会飘) async _clampMarkersToTerrain() { const scene = this.viewer.scene; - if (!scene || !scene.globe) return; + if (!scene || !scene.globe || !scene.terrainProvider) return; const cartos = this.markers.map((m) => Cesium.Cartographic.fromDegrees(m.lng, m.lat), ); try { - await scene.sampleHeightMostDetailed(cartos); + await Cesium.sampleTerrainMostDetailed(scene.terrainProvider, cartos); } catch (err) { console.warn('[CesiumGlobe] 地形高度采样失败,便签保持椭球面高度:', err); return;