SuperMap iClient3D for WebGL教程(影像篇)-OpenStreetMap

版权声明:本文为博主原创文章,欢迎转载,SuperMap技术问答社区 http://ask.supermap.com https://blog.csdn.net/supermapsupport/article/details/89448516

作者:为梦齐舞

本文同步更新于简书文章https://www.jianshu.com/p/1609a02dc88f
据百度百科介绍:OpenStreetMap(简称OSM,中文是公开地图)是一个网上地图协作计划,目标是创造一个内容自由且能让所有人编辑的世界地图。
OSM是一款由网络大众共同打造的免费开源、可编辑的地图服务。OpenStreetMap它是利用公众集体的力量和无偿的贡献来改善地图相关的地理数据。OSM是非营利性的,它将数据回馈给社区重新用于其它的产品与服务。而其他地图则是将大多数的地图数据出售给第三方;苹果、微软、签到服务Foursquare在内的多家知名公司相继弃用谷歌地图,转而拥抱OpenStreetMap。
SuperMap iClient3D for WebGL支持多种服务来源的高精度影像地图服务的加载和渲染,本文将一起来学习下使用OpenStreetMap。
一、认识createOpenStreetMapImageryProvider
根据UrlTemplateImageryProvider进行封装,遵循地图图块使用政策Tile Usage Policy
OpenStreetMap参数
url:OpenStreetMap服务器URL,可以根据填写不同的url加载不同的地图风格。默认为https://a.tile.openstreetmap.org
fileExtension:请求瓦片的格式,默认为png
rectangle:定义数据显示的范围,可以设置为Rectangle,限制数据的显示范围
minimumLevel:最小的瓦片层级,一般more为0,从最小比例尺开始渲染
maximumLevel:最大的瓦片层级,一般为undefined无限制。
二、重要参数介绍
1、url:填写不同的url加载不同的地图风格
图1 https://a.tile.openstreetmap.org
图1 https://a.tile.openstreetmap.org
图2 https://c.tile.thunderforest.com/cycle
图2 https://c.tile.thunderforest.com/cycle
图3 https://b.tile.thunderforest.com/transport
图3 https://b.tile.thunderforest.com/transport
图4 https://tile-a.openstreetmap.fr/hot
图4 https://tile-a.openstreetmap.fr/hot
目前找到这四种,其实OpenStreetMap地图也是有Token的,见上图2和图3,有两幅影像有水印
但是目前createOpenStreetMapImageryProvider中并未提供Token参数,大家可以根据UrlTemplateImageryProvider自己扩展url中添加上apikey即可

let url="https://b.tile.thunderforest.com/cycle/{z}/{x}/{y}.png?apikey=申请的key值"
      let openStreetLayer = new Cesium.UrlTemplateImageryProvider({ url: url });
      viewer.imageryLayers.addImageryProvider(openStreetLayer);

图5 去掉水印
图5 去掉水印
三、使用方法

let osm = Cesium.createOpenStreetMapImageryProvider({
        url: "https://tile-a.openstreetmap.fr/hot",
        fileExtension:"png"
      });
      viewer.imageryLayers.addImageryProvider(osm);

四、效果展示

效果展示

猜你喜欢

转载自blog.csdn.net/supermapsupport/article/details/89448516