CESIUM学习—— viewer.trackedEntity小坑坑
在使用ceiusm时,或多或少都会用到viewer.trackedEntity这个属性。主要是把相机绑定到entity实例上,如果entity运动的话,还可很方便地实现动画效果。但我在开发中踩过一个小坑坑。先看看下面的代码:
this._roamEntity = viewer.entities.add({name: "",billboard: {image: "./Earth/images/person.png", // default: undefinedshow: true, // defaultwidth: 30, // default: undefinedscale: 1,height: 30, // default: undefinedpixelOffset: new Cesium.Cartesian2(0, -14), // default: (0, 0)// disableDepthTestDistance: 0,}, 动画初始时的视角,该视角坐标位置是相对于entity的相对坐标。viewFrom: new Cesium.Cartesian3( 6.020494559314102, 44.92337556742132, 19.992120610550046),//绘制路径path: {width: 10.0,material: new Cesium.PolylineGlowMaterialProperty({color: Cesium.Color.DEEPSKYBLUE,glowPower: 0.25,}),},availability: new Cesium.TimeIntervalCollection([new Cesium.TimeInterval({start: start,stop: stop,}),]),position: position,orientation: new Cesium.VelocityOrientationProperty(position)});viewer.trackedEntity = this._roamEntity;
然后实现出来的效果如下:
可以看到viewer.trackedEntity没有起到应有的效果。
这个是由于在加载entity前,使用了:
viewer.camera.flyTo({destination: camera.position,orientation: {heading: camera.heading,pitch: camera.pitch,roll: camera.roll},maximumHeight: 10,complete: function () {callback();}});
viewer.camera.flyTo还没有执行完成,就绑定了viewer.trackedEntity导致。如果要实现flyTo后进行viewer.trackedEntity动画,要把加载绑定viewer.trackedEntity代码放到flyTo的 complete函数里面,否则就会出现问题。
修改后效果:
CESIUM学习—— viewer.trackedEntity小坑坑相关推荐
- 小程序坑集【日常总结,持续更新(11.08更新)】
大家好,上班的日子总是过的那么快,夹杂着一个多请了四天假的国庆节,转眼距离上篇博文又过去一个多月了,惭愧啊.之前萍子写过一篇[小程序跳H5页面]的博文,说来也是无心在结尾的时候,回想那些被小程序折磨的 ...
- 【学习react中遇到的坑:内存泄漏报错】
学习react中遇到的坑:内存泄漏报错 对就是这个错误 Can't perform a React state update on an unmounted component. This is a ...
- Win 10 + Ubuntu 18.04 双系统安装与深度学习环境配置安装踩坑实录(上篇)
Win 10 + Ubuntu 18.04 双系统安装与深度学习环境配置安装踩坑实录(上篇) 折腾了两三天总算顺利在电脑上完成了装x的双系统安装,一路走来还比较顺利,主要在ubuntu的显卡设置上躺了 ...
- 微信小程序坑点杂谈(五)1000比200小?光速解决小程序数值大小判断错误的问题
微信小程序坑点杂谈(五)光速解决小程序数值大小判断错误的问题 一.写在开头 本人只是一枚小小的新手开发者,所提的问题和解答很难超过个人水平,如果对你有帮助,那就太好了! 二.发现问题 我个人前些天写一 ...
- 微信小程序坑点杂谈(二)“{}”是什么?对象字符串怎么转换?
微信小程序坑点杂谈(二)"{}"是什么?对象字符串怎么转换? 一.写在开头 本人只是一枚小小的新手开发者,所提的问题和解答很难超过个人水平,如果对你有帮助,那就太好了! 二.发现问 ...
- cesium 学习笔记(三) 在地图上放置3D建筑模型
Cesium的学习搁置了两天,今天准备来研究一下在地图上放置3D建筑模型. 为什么要加载3D建筑模型呢?当然是因为项目没有数据啦!对于有条件倾斜摄影无人机建模,或者谷歌地球上直接有模型的,就不用这么苦 ...
- Cesium学习笔记(五):3D 模型 (http://blog.csdn.net/umgsoil/article/details/74572877)
Cesium支持3D模型,包括关键帧动画,皮肤的改变还有单个节点的选择等,Cesium还提供了了一个基于网络的工具,将COLLADA模型转换为glTF,方便和优化模型添加 还记得我们在实体添加的时候添 ...
- 第四章 Cesium学习入门之加载离线影像图(tif)
从0开始的Cesium 第一章 Cesium学习入门之搭建Vite+Vue3+Cesium开发环境 第二章 Cesium学习入门之搭建Cesium界面预览和小控件隐藏 第三章 Cesium学习入门之地 ...
- Cesium学习笔记
Cesium简介 Cesium是一个基于JavaScript的开源框架,可用于在浏览器中绘制3D的地球,并在其上绘制地图(支持多种格式的瓦片服务),该框架不需要任何插件支持,但是浏览器必须支持WebG ...
最新文章
- python读数据-如何用 Python 读取数据?
- 哨兵机器人钢力士_哨兵胳膊都被卸了?巴西厂X战警钢力士正式公布
- 阶乘的精确值大数阶乘
- iOS开发-CocoaPods使用详细说明
- qt添加qwt帮助文件_qt creator中使用qwt插件
- kotlin的loop和Range、list和map
- Kubernetes 小白学习笔记(4)--kubernetes是什么
- 移动光猫固件备份、刷机、改sn和mac等
- js实现数组扁平化的6种方法
- arcgis for js4.x自定义图例位置添加到地图并导出
- html5分镜头脚本范例,分镜头脚本模板(小故事分镜头脚本范例)
- effective modern cpp
- ROS通信机制:话题、服务、参数
- 《数据库系统》(六)物理数据库设计
- Linux 删除文件夹及所有目录
- 养老院人员定位系统包含室内人员定位,老人防跌倒报警系统-新导智能
- 软件测试简历个人技能和项目经验怎么写?(附项目资料)
- java.lang.ClassNotFoundException: org.apache.ibatis.session.SqlSession
- python创建txt文件并写入-python中如何创建一个txt文件
- if ($?)是什么意思