Camera 类提供了用于控制三维场景相机位置和方向的接口。
position: Cartesian3 类型,表示相机在地球上的位置。坐标系为笛卡尔坐标系。direction: Cartesian3 类型,相机的方向向量。up: Cartesian3 类型,相机的上方向向量。right: Cartesian3 类型,相机的右方向向量。heading: number 类型,相机绕其自身的上方向量进行旋转的角度,以弧度为单位。pitch: number 类型,相机绕其自身的右方向向量进行旋转的角度,以弧度为单位。roll: number 类型,相机绕其自身的视线向量进行旋转的角度,以弧度为单位。frustum: Frustum 类型,相机的视锥体。lookAt(target, offset): 将相机的位置和方向设置为观察某个位置的方向。
target: Cartesian3 类型,相机要观察的目标点的位置。offset: Cartesian3 类型,相机与目标点的偏移量。flyTo(options): 将相机飞向某个位置。
options: Object 类型,配置项对象。
destination: Cartesian3 类型,相机要飞向的目标点的位置。orientation: Object 类型,相机在飞行时的方向。
direction: Cartesian3 类型,相机的方向向量。up: Cartesian3 类型,相机的上方向向量。duration: number 类型,飞行的持续时间。以毫秒为单位。setPosition(position): 设置相机的位置。
position: Cartesian3 类型,相机要设置到的位置。setDirection(direction): 设置相机的方向向量。
direction: Cartesian3 类型,相机要设置的方向向量。setUp(up): 设置相机的上方向向量。
up: Cartesian3 类型,相机要设置的上方向向量。move(direction, amount): 沿着相机的方向向量移动相机。
direction: Cartesian3 类型,移动的方向向量。amount: number 类型,移动的距离,以米为单位。changed: 每当相机的位置或方向发生变化时触发。// 获取场景的相机
var camera = viewer.camera;
// 将相机定位到某个位置
camera.flyTo({
destination: Cesium.Cartesian3.fromDegrees(-74.0, 40.0, 150000.0),
orientation: {
direction: new Cesium.Cartesian3(0.0, 0.0, -1.0),
up: new Cesium.Cartesian3(0.0, 1.0, 0.0)
},
duration: 3.0 * 1000
});