首页 / 浏览问题 / 三维GIS / 问题详情
webgl分屏时如何设置压平对指定视口的可见性
22EXP 2019年11月13日
请问现在添加同一S3M在不同视口设置不同的压平效果要如何实现

1个回答

您好,您可以将S3M图层添加两次,一个进行压平,一个不进行压平。然后一个显示一个不显示

比如说把A图层添加两次(A1,A2) 左侧 A1,A2全都加载,然后对A1进行压平,A2进行隐藏。

右侧A1A2全都加载,然后A1隐藏,A2显示
赵爽
1
6,215EXP 2019年11月13日
那我怎么区分这些图层呢,但我一次要压平9个呢,分二视口要添加18个图层是吗?
是的,只是代码中写上这些图层而已,隐藏的图层不参与运算
那么这些图层添加都是添加到现有的scene.layers内?
我没明白您的意思,Scene.addS3MTilesLayerByScp使用这个接口添加图层后,您去调用就行了
对啊,我在场景添加了两次这个图层后,我如何去区分我关闭功能时我添加了哪些图层呢,我要做清理啊,图层的name是不能更改的
而且现在不能同一个图层添加两次吧,我用第二次添加用scene.layers.add(),会报错runtimeeror。
var promise1 = scene.addS3MTilesLayerByScp(url);

var promise2 = scene.addS3MTilesLayerByScp(url);

添加两次
那我怎么保留其中一个呢,我加了俩,意思就是我要做一个清理,需要压平的图层在原本的scene里都是有一份的
都对promise1进行压平,左边隐藏promise2,右边隐藏promies1,使之看上去左边压了右边没压
不好意思,可能是我描述有问题,我要的是remove掉图层,我怎么去remove,比如promise1是我在分屏前,scene内就存在的图层,但是现在我加了promise2,我要怎么去分辨他们
我不太清楚您理解没理解我的说法,都已经定义了var promise了,这个是对某个图层地定义。您想remove那个就直接remove哪个。

左边隐藏promise2,如果您需要remove地话只能remove promise1.右边同理
行吧,我大概知道我需要做些什么,谢谢你了
...