首页 / 浏览问题 / WebGIS / 问题详情
生成场景缓存以后发布服务,前端用scene.open打开场景,加载不出来内容
6EXP 2023年05月10日
我使用iserver 11和idesktop 11i版本,前端使用vue-iclient3d-webgl包,场景中有单值专题图和标签专题图,缓存场景后发布sxum文件,在iserver的浏览中正常,但是前端使用scene.open方法打开场景无内容,我应该怎么解决这个问题?

1个回答

您好,F12看一下控制台是否有报错,如果有报错信息截图看看;

检查一下scene.open()的url是否正确,格式'xxx/realspace/services/3D-suofeiya_church/rest/realspace';

参考示例:http://support.supermap.com.cn:8090/webgl/examples/webgl/editor.html#S3MTiles_suofeiya

1,865EXP 2023年05月10日
非常感谢,但是后来没有用场景缓存文件,直接发布工作空间swum文件可以了,专题图也都能显示。
在idesktop里场景的普通图层的图层属性中,有一个选项“生成三维切片缓存”,这个选项是默认非选中的,选中这个选项以后再发布服务,专题图才能加载出来,不知道这个操作是不是正确的,希望能给后来的同学排个坑。

如果场景里加载模型数据集、矢量数据集、栅格数据集或者osgb等原始数据,在对应图层的【图层属性】里勾选【生成三维切片缓存】,保存场景,保存工作空间,不需要生成缓存就可以直接以工作空间的形式发布三维服务。不切缓存直接发布三维服务虽然支持,但是一般不推荐,因为iServer动态出图,比较耗性能

如果场景中有专题图层,可以保存场景,对该场景生成缓存,对应缓存文件中会生成一个工作空间,发布该工作空间即可,scene.open()是可以加载的。

我试了发布缓存,在iserver服务器内分别报找不到资源module.wasm,earcut.wasm,OSGBToS3M.wasm,能显示地形和专题图,前端加载不出场景,没有报错信息。我的场景里只有地形,单值专题图和标签专题图。

您是对单个数据集生成缓存还是对整个场景生成缓存?对场景生成缓存您按我回复的前一条进行操作即可。

据描述'iserver能显示地形和专题图,但是找不到资源',这是在场景预览还是单个缓存预览的?

如果iserver中预览场景正常,前端加载无数据,通过scene.open打开后,添加以下代码测试一下。

Cesium.when(promise, function (layer) {

            viewer.zoomTo(layer);

        })

加载三维缓存:https://blog.csdn.net/supermapsupport/article/details/126304728

发布三维服务:https://blog.csdn.net/supermapsupport/article/details/128330927

是对整个场景进行缓存,然后发布sxwu文件,iserver在场景预览可以正常显示,前端加载无数据是前端页面没有发布的服务内容,我在Cesium.when方法里打印layer信息控制台没输出,zoomTo也不起作用
方便远程吗?可以私信我向日葵识别码,这边远程看看。
通过远程查看,是vue框架重复引入了两次cesium包导致,已经替换了官网版本,解决。
我也是遇到这个问题,但是我vue ,排查不出来问题,也是iserver可以显示,但是vue用 scene.open显示不了,页面也没有报错
...