之前用过了静态的纹理cesium编程入门(八)设置材质,这次来尝试一下动态的变换,这次来尝试颜色变换
- 先创建工程,步骤略
- 添加一个管线,参考官方示例Polyline Volume,每个示例的代码,都用一下,说不定学到点新东西呢~ (#^.^#)
- 这里按理说应该是要给纹理赋值了,要它动态变化,一般有两种思路,其一是赋值一次,然后之后用代码(定时器)动态修改材质,其二是使用回调,在上一篇鹰眼图中尝试过,发现回调效果比较好,不会卡顿,下面是回调的实现方法,官方文档里很难找到,我是在官方论坛中翻到的,花了一些时间,说出来都是泪啊
var redTube = viewer.entities.add({
name : 'Red tube with rounded corners',
polylineVolume : {
positions : Cesium.Cartesian3.fromDegreesArray([-85.0, 32.0,-85.0, 36.0,-89.0, 36.0]),
shape : computeCircle(6000.0),
//颜色回调
material : new Cesium.ColorMaterialProperty(new Cesium.CallbackProperty(function() {
return Cesium.Color.fromRandom({
minimumRed : 0.75,
minimumGreen : 0.75,
minimumBlue : 0.75,
alpha : 1.0
});
}, false))
}
});
如果文章对你有帮助,请赞助哦~
控制闪烁频率请看 Cesium实战(二十一)动态纹理-颜色-设置频率
Cesium版本是多少,为什么我使用起来有问题,callBack只走了一次啊
1.40
你好,如果是gltf怎么操作呢,我想直接更改运行时中的资源,您尝试过吗
gltf没试过~~
callback可以设置回调间隔吗?现在的闪烁频率有点快
Cesium实战(二十一)动态纹理-颜色-设置频率
这个可以实现闪烁点吗?
一样撒