首页 / 浏览问题 / 三维GIS / 问题详情
如何通过viewer获取所有数据源图层
55EXP 2022年07月06日

请问,我通过scene.open 打开了多个工作空间,

在Cesium.when.all中通过回调layers可以查看到很有规律的layers,比如layers[0]就是promise[0];

但是通过viewer.scene.layers就无法索引到这种数据。

请问,这时等加载完成后,如何来获取所有场景中的图层;

或者,需求是,通过promise open多个场景,然后取切换这些场景。

1个回答

您好,用法上请不要对在同一个scene里去open多个场景,场景只有一个,

open一个场景后如果还需要添加新的数据用add的方法添加新的layer进去。

如果您的需求是读取三维场景服务里拥有的图层 ,可以通过iserver的rest api实现,

http://support.supermap.com.cn/DataWarehouse/WebDocHelp/iServer/DevelopGuide/Use_iServer/USE_RESTAPI/Realspace_Opr/getRlayers.htm

希望可以帮助到您。

10,588EXP 2022年07月06日
是的,是的。场景是有多个restful工作空间链接,每个链接里是独立的场景和模型。

我后来建立了个全局变量,比如allLoaded,直接在回调里赋值给了。

这种也能两层循环搞定。

您给的这个例子我也试试
...