首页 / 浏览问题 / WebGIS / 问题详情
rest地图服务和rest三维服务展示
11EXP 2023年10月31日
前端怎样将rest地图服务和rest三维服务展示

1个回答

不太明白您所说的三维地图和二维地图这两个分别是什么。

地图服务就是地图服务,三维服务就是三维服务,地图服务可以放在三维场景。

地图理论上是没有高度的,只是一个影像数据,按照加载顺序决定上下顺序

更没有嵌入这个说法
4,151EXP 2023年10月31日
就是地图服务和三维服务怎么一起展示的,地图服务在下方,然后这个三维的是在上方

http://support.supermap.com.cn:8090/webgl/Cesium/examples/webgl/examples.html#layer

我建议您在这里看一下示例或者到我们官方的GIS学堂中看下教程

地图服务和三维服务的加载方式差不多,只是使用的是不同的接口

如果您在桌面中,已经把地图和三维数据在场景中打开,且发布的是工作空间

那么打开工作空间就直接有这两个数据

如果您在发布的工作空间只有场景,那么scene.open打开场景后,在场景中按照之前发您的博客,加载二维地图即可

如果您是分别发布的这两种服务

地图服务加载方式不变,三维服务的接口是addS3MTilesLayerByScp

具体可查看APIhttp://support.supermap.com.cn:8090/webgl/Cesium/docs/Documentation/Scene.html?classFilter=sce

是分别发布了地图服务和rest三维服务,也就是前端使用Cesium展现的话,先加载地图服务,最后在加载三维服务吗?没有搜到相关的代码,有点迷crying

还有就是,最后加载三维服务的时候不要配置什么吗?那这个三维的怎么就刚好落在了地图服务的指定位置呢
我给您发的每一个网址都是有相关代码的...

甚至API里也都是有代码片段的

您发布三维服务时候的scp文件里面就有它的位置信息

地图同理

下图写法,并未能加载rest地图服务 ,同时控制台会报错(如第二张图片)

您好,关于这这块的问题还是想跟您请教,地块加载不出来

十分想和您吐槽一下,我所说的您有很多都没有去看。

首先就是您这个问题属于三维GIS问题,问题分类麻烦选三维GIS,WebGIS是二维专用的。(您后续的所有问题都选成了WebGIS)

其次就是我之前发您的https://blog.csdn.net/supermapsupport/article/details/128492592 这个博客

这个博客里面的示例代码是有服务地址的

完全可以通过服务地址看到这个服务是到哪一步的时候去进行加载(map/地图名)

您再看下您上面的第二个截图,里面的这个地址后缀是.png,这个和地图服务没有半点关系

如果您是想说您地图名就叫这个的话

您可以了解一下js的ASCII URL 编码对照表,https://blog.csdn.net/weixin_42537413/article/details/108149567

需要对特殊字符进行转义(里面的.和斜杠)

发布服务的那位同事说,是rest地图服务和rest三维服务一起加载,所有就是不明白您说的先按照正常的地图服务加载,然后再使用addS3MTilesLayerByScp这个api,这个很迷,您给我发的博客我也看到了,就是服务地址感觉不对,然后也是直报错,

然后就是想问您,rest地图服务和rest三维服务一起加载,地图服务要怎么先展现,然后又怎么就能展现三维服务的呢?
我是一点关于这块的都没有做过,真的是一点都不懂,大佬别生气indecision

如果没有接触过建议是看看Supermap的GIS学堂http://edu.supermap.com/

不然我和您说的您未必都听的懂

不是先什么服务后什么服务的问题,我和您详细说一下

1.因为是三维的,所以要在三维场景中查看,所以肯定就有scene.open这个步骤

2.在有了场景的情况下,加载服务就可以了,顺序不论

3.之前说的顺序,是在发布工作空间的情况下,这种情况下先加载场景,场景中会带上发布的工作空间中的三维服务图层

4.至于报错,就是服务地址的问题,就是上面那个回复,通过url的/来判断到哪一层,然后你就用哪一层的url去加载

...