首页 / 浏览问题 / WebGIS / 问题详情
lay.setObjsColor 设置模型变色不起作用
15EXP 2024年11月06日

Cesium.SuperMapVersion  '43249'

加载地块layer模型, 鼠标上移会变紫蓝色。

 curLayer.selectedColor = Cesium.Color.WHITE;  用这代码,控制上移地块模型上,还显示原色(灰白色)。

点击地块模型变色, lay.setObjsColor(smids, selectedColor);   这个代码变绿色没有作用,

1个回答

1、curLayer.selectedColor用这个方法是鼠标选中该对象后,才会呈现的颜色,仅仅是鼠标移动上去这个时候是不会改变颜色的。

2、lay.setObjsColor(smids, selectedColor),你设置的对象smids是否包含了你截图中这个对象的smid,如果没包含,那么不会改变颜色。

3、从你目前描述的来,你最后的需求是什么呢?如果你想将模型选中时显示纯色效果,那么需要设置S3MTilesLayer.selectColorType=SuperMap3D.SelectColorType.REPLACE。
897EXP 2024年11月06日
lay.setObjsColor(smids, selectedColor);   包含了那个地块的smid

最终是,点选过的地块,给他上个绿色,标记一下

鼠标上移到模型上,会变这个蓝紫色。

...