首页 / 浏览问题 / 三维GIS / 问题详情
最新版S3MTiles示例中怎么修改代码,从而加载自己发布的三维服务
4EXP 2022年03月12日

使用产品:iserver 8c 810 操作系统:win7 x64

在打开最新版WEDGL(10.2.1)包中的S3MTiles示例后,怎么修改代码,从而加载出自己发布的三维服务。

原始OSGB坐标为EPSG:4544,发布后的config文件内容为:{"asset":"SuperMap","crs":"epsg:4544","dataType":"RealityMesh","extensions":{"attachFiles":[],"levels":[],"pointCloudLayers":[],"s3m:FileType":"OSGBFile","s3m:TextureCompressionType":"DXT","s3m:VertexCompressionType":"NONE","scales":[],"vol":[]},"geoBounds":{"bottom":3353819.484863281,"left":310080.1201171875,"right":312558.5936279297,"top":3356811.597045898},"heightRange":{"max":1543.411254882813,"min":799.1400756835938},"lodType":"Replace","position":{"units":"Meter","x":311274.0,"y":3355232.0,"z":0.0},"pyramidSplitType":"Unknown","tiles":[{"boundingbox":{"max":{"x":1284.084228515625,"y":1120.551270539976,"z":1409.19946011630},"min":{"x":-1191.830797697368,"y":-1407.124276132295,"z":799.1400722380607}},"url":"./Tile_0000_0000_-0001_0000/Tile_0000_0000_-0001_0000.s3mb"},{"boundingbox":{"max":{"x":1050.596071879069,"y":1577.029303810813,"z":1543.411271550105},"min":{"x":-900.5634825345543,"y":-160.5813717134870,"z":814.60058593750}},"url":"./Tile_0000_0000_-0001_0001/Tile_0000_0000_-0001_0001.s3mb"}],"version":1.0,"wDescript":{"category":"","range":{"max":0.0,"min":0.0}}}

1个回答

您好,您按一下操作进行改写:

1.场景打开正确,URL为发布服务的realspace路径

2.图层属性设置正确

3.删除掉原代码的相机视角(如图中,删除设置相机视角部分的代码
4,151EXP 2022年03月14日

我现在就是在idesktop里面能加载出我发布的三维场景,但是模型是飘在空中的。但是通过iserver中的data和scence,用WebGL3D浏览打开过后什么都没有。如图所示。另外,请问你说的第二条图层属性设置具体是需要设置些什么呢

您好:

1.var promise = scene.open();//后面的括号中,填上您发布数据的realspace的路径,例:http://localhost:8090/iserver/services/3D-test-test0314/rest/realspace
2.图层属性设置即示例所示属性填写,包括图层的url,数据源名称,数据集名称和关键字段
3.图层URL示例:http://localhost:8090/iserver/services/3D-test-test0314/rest/realspace/scenes/test@test0314/layers/图层名

你好,我按照你说的方法试了,还是不行。我把相机参数去掉过后还是一样。我自己的模型显示不出来,结果如下图,

您好,您的数据是精模BIM数据还是倾斜摄影数据呢。如果是倾斜摄影的数据,建议您这边进行倾斜入库生成S3M数据再发布。

还有就是,您的原始数据的EPSG为4544坐标系,为2000对应的投影坐标系,麻烦您这边在桌面对原数据进行投影转换,转换为2000的地理坐标系。之后再缓存进行发布。

最后,var layer获取的应该是根据图层名进行获取,我看您的代码后面的JJX13应该是场景名称吧?图层名是Config0308.您的属性和数据基本没有填写正确的,麻烦仔细检查一下。另外,示例中的这个是属性查询服务,如果按照您的第一张图来看的话,您发布的没有数据,完全没有必要去写这一段代码。
是倾斜数据,请问具体是怎么把原始OSGB数据转为地理坐标系呢。

您好,倾斜入库的方法详细您可以查看官博 https://blog.csdn.net/THEDEAMON/article/details/85246722 ,另外倾斜入库之前需要先生成配置文件。两个功能在桌面中是放在一起的。

分别是三维数据——数据管理——生成配置文件,以及三维数据——数据处理——倾斜入库。

最后,在这两个步骤中, 都会有一个叫:“投影设置”的功能,可以进行投影转换,进行坐标系的修改。详细的修改注意事项三言两语说不太明白,您这边选择2000地理坐标系即可。

另外,推荐您这边下载我们官方的离线帮助文档,基本的功能都非常方便的就可以查询到。可以节省您的大量时间。

...