1.cesium的四种点击拾取方法
Cesium的四种点击拾取方法 - 掘金Cesium的四种点击拾取方法 1、viewer.scene.pick() 通过坐标位置,拾取实体(Entity),图元(Primitive),3DTiles对象,返回的是scene中指定位置最上层的
https://juejin.cn/post/7223981150775066681
2.cesium获取鼠标位置总洁
cesium 实战记录(三)获取鼠标位置总结_viewer.camera.getpickray_Giser_往事随风的博客-CSDN博客cesium 实战记录(三)获取鼠标位置总结,包括pickPosition、pickEllipsoid、globe.pick
https://blog.csdn.net/KK_bluebule/article/details/126379004
3.矩阵变换
// 获取一个WGS84点的坐标点对应的世界坐标
let pos = Cesium.Cartesian3.fromDegrees(-114.0, 50.0, 50.0);
// 本地坐标在世界坐标中的变换矩阵
let _LocalToWorldMatrix = Cesium.Transforms.eastNorthUpToFixedFrame(pos);
// 在本地坐标
let _localPos = new Cesium.Cartesian3(0, 10, 20);
// 将本地坐标转世界坐标
let _worldPointX = Cesium.Matrix4.multiplyByPoint(_LocalToWorldMatrix , _localPos, new Cesium.Cartesian3());
简单理解
let modelMatrix4= Cesium.Transforms.eastNorthUpToFixedFrame(世界笛卡尔坐标原点);
//获得本地转世界坐标变换矩阵
本地坐标 * 变换矩阵 得到世界坐标
Cesium.Matrix4.multiplyByPoint(变换矩阵, 本地坐标, new Cesium.Cartesian3());
5.禁止场景/鼠标左右拖动、禁用中键
//cesium禁止鼠标左键拖动地图、中键转换视角
viewer.scene.screenSpaceCameraController.tiltEventTypes = [];
viewer.scene.screenSpaceCameraController.enableRotate = false;
// 如果为真,则允许用户旋转相机。如果为假,相机将锁定到当前标题。此标志仅适用于2D和3D。
viewer.scene.screenSpaceCameraController.enableRotate = false
// 如果为true,则允许用户平移地图。如果为假,相机将保持锁定在当前位置。此标志仅适用于2D和Columbus视图模式。
viewer.scene.screenSpaceCameraController.enableTranslate = false;
// 如果为真,允许用户放大和缩小。如果为假,相机将锁定到距离椭圆体的当前距离
viewer.scene.screenSpaceCameraController.enableZoom = false;
// 如果为真,则允许用户倾斜相机。如果为假,相机将锁定到当前标题。这个标志只适用于3D和哥伦布视图。
viewer.scene.screenSpaceCameraController.enableTilt = false;
6.Cesium:修改点击显示的infoBox内容
Cesium:修改点击显示的infoBox内容_wx612dcbdbaa821的技术博客_51CTO博客Cesium:修改点击显示的infoBox内容,修改点击显示的infoBox内容
https://blog.51cto.com/u_15349906/5089030
7.3dtile性能优化
3D Tiles性能优化 - 简书在处理大规模3D数据时,由于数据量过大、网络传输速度慢、图形渲染复杂等原因,会导致3D应用程序的性能下降。因此,需要对3D数据进行性能优化,以提高应用程序的交互性能和用户体验...https://www.jianshu.com/p/85046306f3b1
8.cesium+vue
vue 中使用 cesium_vue使用cesium_我是ed.的博客-CSDN博客vue 中使用 cesium我是在 vue 项目里面使用的 cesium,但是呢,有点问题,就是有些语法在js转vue的时候有些许的限制,比如说js中相对路径引入文件是一切OK的,vue 也能解决,但是呢,在引入的文件中又引用了其他的文件,vue 处理起来就不是特别的好用,所以说,我是直接在 vue 文件里面使用 iframe 标签引入的 html 文件来实现接入的,而vue和iframe之间的通信采用的 postMessage 方式实现,下面就稍微介绍一下。vue项目引入cesium这个相对来说_vue使用cesium
https://blog.csdn.net/weixin_42776111/article/details/122179711