- 基础知识
- 入门教程
- 中级教程
- 官方教程
- 博客文章
- Cesium 应用篇-添加雨雪天气
- Cesium 源码剖析-Post Processing 之物体描边 Silhouette
- Cesium 源码剖析-Ambient Occlusion 环境光遮蔽
- Cesium 源码剖析-Clipping Plane
- Cesium 源码剖析-视频投影
- Cesium 之加载地形图 Terrain 篇
- Cesium 之三维漫游飞行效果实现篇
- Cesium 之地图贴地量算工具效果篇
- Cesium 之简介以及离线部署运行篇
- Cesium 之核心类 Viewer 简介篇
- Cesium 之自定义气泡窗口 infoWindow 篇
- Cesium 之自定义气泡窗口 infoWindow 后续优化篇
- Cesium 之图层管理器篇
文章来源于网络收集而来,版权归原创者所有,如有侵权请及时联系!
3D Tiles 模型旋转
上一节介绍了3D Tiles模型的位置移动,和贴地的操作,这一节来聊一聊模型的旋转。
参考《WebGl编程指南》的第四章
假设在X轴和Y轴构成的平面上,要让物体旋转角度为β,那么公式如下:
由此思路就出来了:
- 根据要旋转的角度,构建一个三阶旋转矩阵
- 获取3D tiles 的旋转矩阵modelMatrix,然后与旋转矩阵运算,
- 最后将计算结果再赋值给modelMatrix,完成。
参考代码:
var m = tileset.modelMatrix;
//RotateX为旋转角度,转为弧度再参与运算
var m1 = Cesium.Matrix3.fromRotationX(Cesium.Math.toRadians(RotateX));
//矩阵计算
Cesium.Matrix4.multiplyByMatrix3(m,m1,m);
//赋值
tileset.modelMatrix = m;
点击查看动画
https://hqcode.gitee.io/cesium-test/lesson03/
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论