cesium(相机)
Posted mashuai666
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了cesium(相机)相关的知识,希望对你有一定的参考价值。
本文示列 相机的几种方式,及区别。
//创建viewer
var viewer = new Cesium.Viewer(‘cesiumContainer‘);
//第一种:viewer.zoomTo
viewer.zoomTo(greenCorridor,{ heading:Cesium.Math.toRadians(0), pitch:Cesium.Math.toRadians(-30), range:100,//距离中心的距离(以米为单位) })
//第二中:viewer.flyTo
viewer.flyTo(greenCorridor,{ duration:2.0, //飞行持续时间 maximumHeight:10000, //飞机中最大高度 offset:new Cesium.HeadingPitchRange(Cesium.Math.toRadians(0), Cesium.Math.toRadians(-90), Cesium.Math.toRadians(0)) })
//第三种:viewer.camera.flyTo
viewer.camera.flyTo({ destination: Cesium.Cartesian3.fromDegrees(-90, 35, 5000000), //摄像机的最终位置 duration: 8, //飞行所用时间 maximumHeight: 20000, //飞行高峰时的最大高度。 pitchAdjustHeight: 1500, //如果摄像机的飞行高于此值,请调整俯仰航向以降低俯仰,并将地球保持在视野中 orientation: { heading: Cesium.Math.toRadians(0), pitch: Cesium.Math.toRadians(90), roll: 0.0 } });
//四、 viewer.camera.lookAt
var center = Cesium.Cartesian3.fromDegrees(-98.0, 40.0)//目标位置 viewer.camera.lookAt(center, new Cesium.Cartesian3(0.0, -4790000.0, 3930000.0));//三个数字分别是:方位角,倾角,俯角
//五、viewer.camera.setView
viewer.camera.setView({ destination : Cesium.Cartesian3.fromDegrees(-98.0, 40.0, 5000000),//相机位置 orientation: { heading : Cesium.Math.toRadians(0), pitch : Cesium.Math.toRadians(-90), roll : 0.0 } });
区别:
viewer.zoomTo(): 方法可以立即定位到某个位置
viewer.flyTo(): flyTo则是通过动画方式转移到某个位置 可以设置动画时间
viewer.camera.flyTo(): 也是通过动画的方式转移到某个位置, 参数比viewer.flyTo要多
viewer.camera.lookAt(): 立即定位到某个位置, 而且相机锁住此位置。
注:
* heading:方位角
* pitch:倾角
* roll:旋转角
* range:距离中心的距离(以米为单位)
以上是关于cesium(相机)的主要内容,如果未能解决你的问题,请参考以下文章