cesium编程中级(十四)cesium动态纹理-颜色

之前用过了静态的纹理cesium编程入门(八)设置材质,这次来尝试一下动态的变换,这次来尝试颜色变换

  1. 先创建工程,步骤略
  2. 添加一个管线,参考官方示例Polyline Volume,每个示例的代码,都用一下,说不定学到点新东西呢~ (#^.^#)
  3. 这里按理说应该是要给纹理赋值了,要它动态变化,一般有两种思路,其一是赋值一次,然后之后用代码(定时器)动态修改材质,其二是使用回调,在上一篇鹰眼图中尝试过,发现回调效果比较好,不会卡顿,下面是回调的实现方法,官方文档里很难找到,我是在官方论坛中翻到的,花了一些时间,说出来都是泪啊
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))
    }
});

参考效果

dynamiccolor

参考代码

如果文章对你有帮助,请赞助哦~

控制闪烁频率请看 Cesium实战(二十一)动态纹理-颜色-设置频率

8 thoughts to “cesium编程中级(十四)cesium动态纹理-颜色”

发表评论