cuisum:camera控制介绍,设置显示范围和角度

目录

一、参数介绍

heading

pitch

roll

二、操作定位

1、setView方法

(1)Cartesian3

(2)rectangle 

(3)直接坐标

2、flyTo方法

3、lookAt方法



cesium提供了三种方式,可以对camera进行操作,这三种方式,有三个共同的参数,heading,pitch,roll,那么,这三个参数分别是什么。

一、参数介绍

heading

作用:设置头朝东南西北四个方向看
弧度制, 北(0.0),东(90度的弧度),南(180度的弧度),西(-90度的弧度)

pitch

作用:围绕Y轴旋转,弧度制,水平看(0.0),抬头看(90度的弧度),低头看(-90度的弧度)

roll

作用:围绕X轴旋转,弧度制,正常看(0.0) ,倒立看(180度的弧度)

二、操作定位

1、setView方法

有三种计算视角的方式:

(1)Cartesian3

viewer.camera.setView({
  destination : Cesium.Cartesian3.fromDegrees(116.435314,39.960521, 15000.0), // 设置位置
  orientation: {
    heading : Cesium.Math.toRadians(20.0), // 方向
    pitch : Cesium.Math.toRadians(-90.0),// 倾斜角度
    roll : 
  }
});

(2)rectangle 

viewer.camera.setView({
 
destination: Cesium.Rectangle.fromDegrees(0.0, 20.0, 10.0, 30.0),//west, south, east, north
 
orientation: {
 
heading : Cesium.Math.toRadians(20.0), // 方向
 
pitch : Cesium.Math.toRadians(-90.0),// 倾斜角度
 
roll : 
 
} });

(3)直接坐标

// 设置相机位置
viewer.camera.setView({
    // 设置相机位置
    destination: {
        x: -2388744.838660655,
        y: 5388613.2412665,
        z: 2429186.308668634
    },
    orientation: {
        // 初始视角
        heading: 1.0639406240008213,
        pitch: -0.013688041766217074,
        roll: 0.00002273530734786533
    }
});

2、flyTo方法

view.camera.flyTo({
  destination :Cesium.Cartesian3.fromDegrees(116.435314,39.960521, 15000.0), // 设置位置
  orientation: {
    heading :Cesium.Math.toRadians(), 
    pitch :Cesium.Math.toRadians(-90.0),// 倾斜角度
    roll :
  },
  duration:, // 设置飞行持续时间,默认会根据距离来计算
  complete:function () {
  // 到达位置后执行的回调函数
  },
  cancle:function () {
  // 如果取消飞行则会调用此函数
  },
  pitchAdjustHeight:, // 如果摄像机飞越高于该值,则调整俯仰俯仰的俯仰角度,并将地球保持在视口中。
  maximumHeight:, // 相机最大飞行高度
  flyOverLongitude:, // 如果到达目的地有2种方式,设置具体值后会强制选择方向飞过这个经度(这个,很好用)
});

3、lookAt方法

 center = Cesium.Cartesian3.fromDegrees(114.44455, 22.0444);//camera视野的中心点坐标
 heading = Cesium.Math.toRadians();
 pitch = Cesium.Math.toRadians(-20.0);
 range = 5000.0;
view.camera.lookAt(center,  Cesium.HeadingPitchRange(heading, pitch, range));

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值