首页 / 浏览问题 / 组件GIS / 问题详情
c# iobject 三维场景中添加天地图
5EXP 2022年08月26日

在桌面版中,添加在线地图时,加载的是二维图层,能够正常显示。

但在 10i 组件中,使用如下代码,尝试添加到三维场景中,却没有效果

Layer3D layer3d = sceneControl.Scene.Layers.Add(@"http://t0.tianditu.gov.cn/img_c/wmts?tk=<token>", Layer3DType.WMTS, "img", true);

请问如何将天地图添加到三维场景?以及没有显示的原因是什么?

1个回答

您好,根据您粘贴的代码,您的代码中没有添加天地图服务的token,所以无法从天地图服务正常获取地图。

希望可以帮到您。
2,163EXP 2022年08月26日
您好,我把token的部分删除了,实际使用中是添加了token的
建议检测一下iObjects .NET组件包\Bin\log目录中有没有异常日志信息输出。

如果没有的话,建议您在iDesktop桌面端尝试将此天地图服务添加到三维球面场景看看能否正常加载。
您好,iDesktop桌面端没有问题,可以看到很精细的底图。

但是我自己的组件上,只能放缩到一定范围,再缩小范围无法加载精细的底图,请问这是天地图的限制吗
天地图的token是有层级限制的
您好,天地图有层级限制,但是桌面端和组件端能够加载的层级应该是一致的,建议您先从iDesktop安装目录\bin目录中移除Cache和CloudCache后再试试

好的谢谢您!另外,我想请问一下,想要添加osm地图,下面代码中的地址需要换成什么呢

Layer3D layer3d = sceneControl.Scene.Layers.Add(@"http://t0.tianditu.gov.cn/img_c/wmts?tk=<token>", Layer3DType.WMTS, "img", true);

您好,把Layer3DType的类型换成OpenStreetMaps

谢谢您的回答!
...