首页 / 浏览问题 / WebGIS / 问题详情
使用supermap iclient3D for cesium加载3dtiles后,天地图无法正常加载
9EXP 2024年06月18日
偶发bug。有时候天地图和3dtiles都能正常加载,开发过程中会不断刷新页面,多刷几次偶尔就会出现3dtiles正常加载和展示,但天地图加载不出来。如果这时候在无痕窗口中重新打开该页面,又能正常加载了。不知道是什么原因呢?

我一开始认为是缓存原因,然后在请求3dtiles.json的url后面拼接了时间戳,但问题仍然没有解决。加载3dtiles时,最大切片数设置的500,最大缓存设置的512MB

页面加载顺序是:加载天地图影像——>加载wms图层——>加载3dtiles图层。

并且,天地图无法正常加载时,wms图层bbox传参自动变成了 0,90,0-90 所以wms图层也一起无法显示了。

(本人小白第一次使用supermap iclient3D for cesium,之前也没接触过cesium,求大佬答疑解惑,不吝赐教。万分感谢 !!!)

2 个回答

您好,您用的cesium版本是多少呢?您把wms图层或者3dtiles去掉之后能正常加载吗?
1,440EXP 2024年06月18日
您好,我是在超图官网上下载的SuperMap iClient3D 11i(2023) for Cesium这个包,然后把cesium文件夹拷贝到我的项目里的。打印cesium.VERSION 是undefined

把wms图层去掉后,天地图和3Dtiles都能正常加载。

不去掉wms图层,则天地图和wms图层无法正常加载,3dtiles依然能正常显示。在当前页面已经出现这个bug时,复制页面地址在新页面打开 ,三者都能正常显示的。

刷新出现bug的页面 有时候多刷新几次又能正常加载,有点迷惑呢
如果将3dtiles去掉,只加载wms和天地图是正常的吗?

如果页面已经出现bug了,把3dtiles去掉,只加载wms和天地图也无法正常加载,天地图和wms都加载不出来。

但去掉wms图层后, 天地图和3dtiles是能正常加载的

还是没有定位到原因在哪crying

请问加载天地图是否有监听加载完成的方法呢?我想在确保天地图加载完成后再加载wms图层
9EXP 2024年06月19日
可以使用 viewer.imageryLayers.layerAdded.addEventListener() 方法来监听图层加载完成事件。当任何图层被添加到 imageryLayers 中时,会触发这个事件。然后通过检查 layer.imageryProvider 是否为 Cesium.WebMapTileServiceImageryProvider 的实例,来确定是天地图图层已经加载完成。
...