viewer.camera.flyTo 限制最小视图高度

        viewer.camera.flyTo({
            destination: Rectangle,
            orientation: {
                heading: Cesium.Math.toRadians(heading),
                pitch: Cesium.Math.toRadians(pitch),
                roll: Cesium.Math.toRadians(roll)
            },
            duration: duration, // fly time 10s
            pitchAdjustHeight: -90,
            complete: function () {
        // 飞行结束后检查高度
        const cartographic = viewer.camera.positionCartographic;
        const currentHeight = cartographic.height;
        
        if (currentHeight < 310) {
          // 若当前高度低于最小值,调整到最小高度
          viewer.camera.setView({
            destination: Cesium.Cartesian3.fromRadians(
              cartographic.longitude,
              cartographic.latitude,
              310
            ),
            orientation: viewer.camera.orientation // 保持原有视角方向
          });
        }
      } // 到达位置后执行的回调函数
        });

主要使用complete,在飞行结束后判断高度是否小于视图最小高度,如果小于就重新调整高度,防止地图出现下面的情况

image

 

posted @ 2026-01-27 10:10  奔跑的哈密瓜  阅读(3)  评论(0)    收藏  举报