Cesium CallbackProperty(十五)
2024-09-18 15:17:23
Cesium中的entities可以随时间变化长度高度,主要依赖于CallbackProperty函数。
因为使用CallbackProperty,cesium中一切可视化的要素都可以与时间联系起来。
定义:new Cesium.CallbackProperty (callback, isConstant)
callback:评估属性时要调用的函数
isConstant:每次回调函数返回相同值时,为 true,如果值将更改,则为false
CallbackProperty是一个类,其值由回调函数延迟计算。也就是说它在不断地自我调用,每当其返回的对象有改变,就抛出改编后的值。
利用这种特性,我们就可以在定义材质时,用CallbackProperty生成动态的对象赋值给材质参数,就可以得到动态材质的效果。
说白了,new Cesium.CallbackProperty(callback, isConstant) 就是一个返回的值,而这个值取决于callback函数返回的值。
该函数通常这样定义:function callback(time, result),返回的值是 时间+位置或长度。
// CallbackProperty 中 回调函数 不一定要和时间挂钩 也可以是通过事件去控制 let positions = []
viewer.entities.add({
polyline: {
positions: new Cesium.CallbackProperty(() => positions, false),
width: 5,
arcType: Cesium.ArcType.RHUMB,
material: Cesium.Color.GREEN,
}
});
// 通过add 事件去改变positions 这样也可以改变entities
function add() {
positions.push(...)
}
最新文章
- 对象比较器:Comparable和Comparator
- IOS自定义日历控件的简单实现(附思想及过程)
- FTP : mput with no confirmation
- SQL如何增删修改字段
- Logging的这点小事
- Coursera台大机器学习课程笔记13 -- Regularization
- spring webmvc使用ResponseBody前,在配置文件中的配置
- Android 下压缩图片—微弱失真
- centos install(160112更新)
- JS 定時刷新父類頁面
- [Docker] Install Docker on Windows (hp) and start with Kitematic
- jQuery源码学习(1):整体架构
- windbg指定SOS版本,执行扩展命令报错
- 微信小程序快捷键
- 9.7、Libgdx之振动器
- ES2015也就是ES6知识点持续更新
- CentOS6.5安装Scrapy
- nodejs导出excel
- expect脚本实例
- 服务链路追踪(Spring Cloud Sleuth)