首页 / 浏览问题 / 三维GIS / 问题详情
webgl s3m缓存可以更改符号样式吗?
263EXP 2019年12月17日
现在有这样一个需求,针对已发布的三维场景服务,需要根据前端实时的数据,改变其原有的符号样式?

但是三维场景缓存生成之后,是s3m格式文件,是包含了符号样式的,不知道前端webgl能否更改样式? 有相关接口没有?

1个回答

没有办法更改了。已经被切成缓存了。不过您可以通过id来控制显隐

比如说共有10个点,三种模型ABC。您就分别做三个图层,A模型的缓存,B模型的缓存,C模型的缓存。

然后前端调用的时候,用哪个模型就显示哪个,另外两个隐藏掉
6,215EXP 2019年12月17日
在.net组件中,可以改变三维选择集的选择样式;

在webgl中,有类似的接口吗? 比如默认的管线缓存是绿色,我可以筛选出一批显示为红色,筛选出一批为黄色等等。。。
可以改变颜色。S3MTilesLayer.setObjsColor(ids, color)

其他的设置,您可以看一下API中S3MTilesLayer下的参数设置
。。。

我知道可以改变颜色,现在的问题是,设置的颜色并不会纯色显示,而是会跟原有的模型符号颜色进行混合显示。。。
我测了一下,确实存在该问题,我向研发反馈一下
嗯嗯,看能不能改一下,设置颜色了就是替换、覆盖显示,要混合显示可以通过设置透明度
嗯嗯 现在有个方法,但是会影响点击时候高亮的颜色。您看一下这个方案可行吗

先设置一个选择集,把ids传进去,然后设置一下selectColorType
额,这也解决不了我的需求吧,

s3mTileLayer可以设置多个选择集,然后不同选择集显示不同的颜色吗?(或者说我有多个ids数组,不同数组设置不相同的颜色)
奥,那就不行了。
...