欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 健康 > 美食 > cesium相机

cesium相机

2025/4/21 1:33:46 来源:https://blog.csdn.net/weixin_43845059/article/details/145303677  浏览:    关键词:cesium相机

相机的视角主要属性有两个, destination 相机位置 和 orientation 相机的方位

视角飞入 flyTo

// 经纬度
viewer.camera.flyTo({destination: Cesium.Cartesian3.fromDegrees(109.78, 28.36, 50000000),
});// 矩形窗口  
viewer.camera.flyTo({destination:  Cesium.Rectangle.fromDegrees(110, 32, 112, 38),
});

 视角修改 没有飞入动画 setView

// 支持经纬高  同时可以设置 偏航heading 俯仰pitch   滚转roll  单位都是弧度
viewer.camera.setView({  destination : Cesium.Cartesian3.fromDegrees(110, 35, 5000000),  orientation: {  heading : 0.0,  pitch : -Cesium.Math.PI_OVER_TWO,  roll : 0.0  }  
});// 同样支持矩形视角
viewer.camera.setView({  destination : Cesium.Rectangle.fromDegrees(west, south, east, north),,  orientation: {  heading : 0.0,  pitch : -Cesium.Math.PI_OVER_TWO,  roll : 0.0  }  
});

HeadingPitchRoll可以通过以 diretion、up的方式进行展示如图

// direction 和 up 
viewer.camera.setView({destination : Cesium.Cartesian3.fromDegrees(-122.19, 46.25, 5000.0),  // 相机的位置orientation : {//相机视线方向矢量(WGS84系下)direction : new Cesium.Cartesian3(-0.042312, -0.201232, -0.978629),//相机的up方向矢量(WGS84系下)up : new Cesium.Cartesian3(-0.479345, -0.855321, 0.1966022)        }
});

视角锁定或跟踪  lookAt

const target = Cesium.Cartesian3.fromDegrees(120.0, 30.0, 3000000)
/*
0:相机的朝向(Heading),表示正北方向1:Cesium.Math.PI_OVER_TWO:相机的俯仰(Pitch),表示相机向下看,即朝向地球。【Cesium.Math.PI_OVER_TWO 等于 Math.PI / 2,即90度】 所以 “-Cesium.Math.PI_OVER_TWO 等于 -90度”,即指向地面。2:是相机的范围(Range),表示,相机距离目标点的距离是`5000000`米。
*/
const offset = new Cesium.HeadingPitchRange(0, -Cesium.Math.PI_OVER_TWO, 5000000)// lookAtTransform  第一个参数是 矩阵  第二个参数是HeadingPitchRange
viewer.camera.lookAtTransform(                   Cesium.Transforms.eastNorthUpToFixedFrame(target) ,offset )// lookAt 第一个参数 是 笛卡尔坐标系 第二个参数是HeadingPitchRange
viewer.camera.lookAt( target, offset )

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词