今天晚上我閒着沒事翻了翻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—實時發亮直線跟蹤移動目標