首页 / 浏览问题 / WebGIS / 问题详情
用超图cesium加载场景错位
2EXP 2024年07月15日

使用产品:超图Cesium、SuperMap iDesktopX 11i 、SuperMap iServer
操作系统:win11
数据类型:SCP类型三维缓存文件
问题详细描述:通过iDesktopX 11i球面场景查看的位置是这样的
我通过iserver发布后浏览的也是正确的
但是呢我通过var promise = viewer.scene.open("http://localhost:8090/iserver/services/3D-XUEXIAO3D/rest/realspace");  方法开发的时候 这个柱状体错位了,但是我其他的都正常哇,故寻求各位大佬帮助

1个回答

您好,

SuperMap iClient3D for Cesium产品默认球体是圆球,场景内的模型缓存数据为S3M 3.0版本数据,即椭球数据,会导致部分模型出现错位现象。根据这种错位情况,需要在前端初始化部件之前手动转换为椭球体,参考代码如下:

var obj = [6378137.0, 6378137.0, 6356752.3142451793]; 
Cesium.Ellipsoid.WGS84 = Object.freeze(new Cesium.Ellipsoid(obj[0], obj[1], obj[2])); 
var viewer = new Cesium.Viewer('cesiumContainer'); 

iServer预览默认添加了这段代码,如果是既有圆球又有椭球的数据,也可以使用该方法转椭球,圆球的数据会自动转到椭球。

希望能够帮助到您!

895EXP 2024年07月15日
...