首页 / 浏览问题 / 三维GIS / 问题详情
webgl加载s3m图层之后怎么隐藏其中的对象。
82EXP 2018年04月24日
使用scene.addS3MTilesLayerByScp(url,{name : 'BIMBuilding'});加载S3M图层之后。

怎么获取图层内对象的ID?

怎么隐藏图层内的指定对象?

1个回答

您好,获取ID列表需要发布数据服务,从数据服务去获取ID列表,setObjsVisible(ids, isVisible)可以设置指定ID的对象是否可见。
胡林
1
5,985EXP 2018年04月24日
您好,请问下,发布数据服务,是不是只要在发布S3M缓存空间的时候额外勾选一下数据服务的条目就好了? 还是说要额外进行一些处理?

  在webgl中,用什么方法可以请求数据服务的ID列表呢?

发数据服务需要数据源中有对应的数据集,获取ID列表是用数据服务查询的方式,用的是   <script src="./js/supermap/SuperMap.Include.js"></script>这个库,查询条件可以是SmID>0,即可查询出所有对象,再遍历取出对象SmID即可。当然如果您对iserver比较熟悉的话,也可以看看是否有其它的方式去获取。webgl中查询范例:http://support.supermap.com.cn:8090/webgl/examples/editor.html#getFeatureBySQL

iserver数据查询范例:http://support.supermap.com.cn:8090/iserver/iClient/forJavaScript/examples/leaflet/examples.html#iServer-data

...