今天晚上我闲着没事翻了翻csdn(主要是因为心血来潮写了两篇博客,顺便翻了翻同行的博客),发现了两篇博客解决了困扰我半年的问题——动态entity的绘制。
之前公司里开发的系统中一直有用户自己绘制点线面的功能需求(比如测量功能),之前我们要么直接用的其他人写的开源插件,要么就通过硬改entity的属性来实现动态(直接赋值),硬改的效果非常不好,实际操作体验非常差。
而今天翻到的其中一篇博客很好地解决了我的问题,通过CallbackProperty回调方法来实现动态属性的赋值,案例如下所示:
let entity: any = viewer.entities.add({
polyline: {
positions: new Cesium.CallbackProperty(() => {
return positions;
}),
width: 5,
material: Cesium.Color.RED
}
})
天亦有情天易老,人间正道是沧桑啊。csdn原来还是有点屌用的,我错了,我不应该看不起csdn的,所以说不能迷信google啊。
实在是万分感谢博客作者啊,终于学到这一手的我泣不成声。
博客原文:Cesium实时目标跟踪最新特效教程系列1—实时发亮直线跟踪移动目标