首页 / 浏览问题 / WebGIS / 问题详情
s3m服务加载问题
1EXP 2023年09月15日

你好,我这边是用原生Cesium加Cesium_S3MLayer_Plugins加载S3M服务,但使用分屏功能的另一个viewer对象再加载一次就会报错,好像只能跟一个viewer对象绑定一样,这是什么原因?

1个回答

您好,

Cesium_S3MLayer_Plugins 只是面向Cesium的一个能实现WebGL部分功能的插件

建议分屏功能按照Cesium的老方法去实现

可参考:https://codeleading.com/article/66205320786/

如果是引用了Cesium_S3MLayer_Plugins才导致的无法分屏

麻烦您提供下代码

4,116EXP 2023年09月15日
您好,不是 因为引用了Cesium_S3MLayer_Plugins导致无法分屏,是因为当同一个项目里面创建(new Cesium.viewer())两个或两个以上viewer对象时,第二个viewer对象就无法加载S3M服务。比如const viewer1=new Cesium.viewer("map1");const viewer2=new Cesium.viewer("map2");viewer1可以加载S3M服务,但是viewer2就会加载失败。

理解可能出现了偏差

这个属于联动分屏是没法分屏加载不同的定数据的。

http://support.supermap.com.cn:8090/webgl/examples/webgl/editor.html#multiViewport

因为这种分屏其实只是一个Scene、一个Viewer,控制的是这个场景内在不同屏中的显隐状态,

但是地形服务与 影像服务和三维缓存服务 不同,一个Viewer只能加载一个地形服务,没法加多个。

所以这个示例中的联动分屏,只能控制一个Viewer里一个地形服务在不同屏中,显或者隐,没法不同屏加不同地形。

...