Cesium开发:模型实体高亮

简介: Cesium开发:模型实体高亮

在选中Cesium的模型对象时,需要高亮的效果,通过给模型的表面或者周边设置高亮颜色,达到突出显示模型的效果。
在Entity实体查找或者点击Entity时,获得对象,通过修改Entity中model的颜色,在模型的表面覆盖一层颜色,具体的效果如下图:
image.png
将模型高亮成红色,使用Cesium的颜色类,顺序是R\G\B\A,A是透明度,范围是0-1,所以,在使用0-255范围的颜色值时,中间需要有个值的换算。
entity.model.color = new Cesium.Color(1.0, 0, 0, 1.0);
将模型设置非高亮,可以将模型颜色设置为空,或者设置为白色:
entity.model.color = null; 或者
entity.model.color = new Cesium.Color(1.0, 1.0, 1.0, 1.0);
这样设置的时候,虽然透明度设置是不透明,但是还能看到模型,这样在模型比较小或者模型颜色比较深的时候,高亮效果不明显。
这时,可以设置模型的colorBlendMode为replace模式,这样就将模型都替换成颜色了。
entity.model.colorBlendMode = Cesium.ColorBlendMode.REPLACE;

效果如下图:
image.png
如果觉得这种替换效果不好,可以在模型周边设置轮廓线:
entity.model.silhouetteColor = new Cesium.Color(1.0, 0, 0, 1.0);
entity.model.silhouetteSize = 2.0;
效果如下图:
image.png

相关文章
cesium添加实体不被地形遮挡的参数设置
disableDepthTestDistance:指定从相机到禁用深度测试的距离,关于深度测试我们将在后面的文章中介绍到,由于深度测试的存在,我们的对象很多时候会被地形挡住,如下:
3265 0
cesium添加实体不被地形遮挡的参数设置
|
定位技术
干货!解决Cesium中Entity移动漂移的问题
案例场景:在Cesium开发三维场景展示中,肯定会碰到加载Entity的需求,如果在你的gis应用中,带了地形的展示。那么在旋转切换画面时,Entity是否跟着一起动了起来,感觉像漂移一样呢?
4672 0
干货!解决Cesium中Entity移动漂移的问题
Threejs实现模拟河流,水面水流,水管水流,海面
Threejs实现模拟河流,水面水流,水管水流,海面
4016 0
Threejs实现模拟河流,水面水流,水管水流,海面
|
存储 前端开发 异构计算
使用WebGL绘制热力图
使用WebGL绘制热力图
570 0
【已解决】TypeError: Cannot destructure property `createHash` of ‘undefined‘ or ‘null‘
【已解决】TypeError: Cannot destructure property `createHash` of ‘undefined‘ or ‘null‘
1560 1
Cesium给物体添加贴图
这篇文章讲解了在Cesium中如何为3D模型添加贴图,并提供了具体的实现步骤和代码示例。
1046 2
|
JSON 数据格式
Cesium绘制一个正方体
这篇文章详细说明了如何在Cesium中创建并精确控制一个厘米级精度的立方体模型。
356 3
Cesium绘制一个正方体
|
图形学
ThreeJs创建管道效果
这篇文章介绍了在Three.js中创建管道(Tube)效果的方法和技术细节。
626 4
ThreeJs创建管道效果
|
定位技术
Cesium修改地球的贴图为视频或者图片
这篇文章说明了如何在Cesium中修改地球的贴图,替换为自定义的图像或视频纹理。
698 1
Cesium修改地球的贴图为视频或者图片