cesium相机的方向和位置

CesiumJs yekong

我们可以通过cesium相机的orientation和destination来控制相机的位置以及相机的朝向俯仰角以及相机的滚转角。

cesium相机的方向和位置

指定cesium地图显示的位置

// 生成position北京天安门位置
  var cartesian3 = Cesium.Cartesian3.fromDegrees(
      // 经度
      116.397428,
      // 纬度
      39.90923,
      // 高度
      100
  )
  viewer.camera.setView({
    // 指定相机的位置
    destination: cartesian3,
  })

控制相机的朝向

viewer.camera.setView({
    // 指定相机的位置
    destination: cartesian3,
    orientation: {
      // 指定相机的朝向
      heading: Cesium.Math.toRadians(0),
      // 控制相机的俯仰角
      pitch: Cesium.Math.toRadians(-90),
      // 指定相机的滚转角
      roll: 0
    }
  })
  1. viewer.camera.setView({ ... }): 这是设置Cesium相机视图的方法。传递给此方法的对象定义了相机应如何查看场景。

  2. destination: cartesian3: 这里指定了相机的目的地位置。cartesian3应该是一个Cesium.Cartesian3对象,它包含x、y和z坐标来定义空间中的一个点。

  3. orientation: 这个属性用于设置相机的方向,具体包括以下三个子属性:

    • heading: 控制相机的朝向。表示围绕地球的Z轴的旋转,用弧度来表示。例如,Cesium.Math.toRadians(0)将相机的朝向设置为北。
    • pitch: 控制相机的俯仰角。表示相机的垂直旋转,用弧度来表示。例如,Cesium.Math.toRadians(-90)将相机朝向直接向下,就像从太空看地球一样。
    • roll: 控制相机的滚转角。表示围绕相机视线的旋转,用弧度表示。这里的0意味着不进行任何滚转。

将相机位置设置为cartesian3,然后使其直接向下看(由于pitch为-90°),朝向北(由于heading为0°),并且没有任何滚转(roll为0)。

当前内容为观看threejs视频课程 Three.js可视化企业实战WEBGL课 课程-相机的方向和位置-学习笔记

笔记汇总

Cesium学习笔记汇总

喜欢