但凡要干一件稍微有意义的事,总会需要一定的时间积累,甚至还需要下不少的笨工夫,也正因如此,才会让这些最终做成的事更具有价值和意义。
比如我们曾在一个项目的助推下,就干了一件比较有意义的事情,尽管投入了不少时间和精力,但我们认为这是一件值得去做且有意义的事。
是一件什么事呢?
我们切了一套全球地名路网地图,它可以用于与全球卫星影像进行叠加。
要生产一套全球覆盖的透明路网标签,就需要有一套全球矢量数据作为生产的必备物料。
在项目方没有提供全球矢量数据的情况下,我们只有基于OpenStreeMap的数据作为地图生产的基础。
OpenStreetMap官方提供了完整的全球矢量数据pbf文件,欧洲的数据量是最大的,有33.6GB,其次是亚洲,有10.9GB,全球合计65.3GB大小。
全球矢量数据65.3GB
如果一次性将全球65.3GB的矢量数据进行处理的话,实在太大,因此我们将全球数据分成了6批次进行处理。
在生成任务网格时,将每个网格的经度跨度设置为3度,纬度跨度设置为2度,并且特意过滤掉了没有矢量数据的海洋部分。
分六批次的任务网格
每一批次都需要经过数据处理和图例配置,然后渲染切片为DAT文件进行分块存储。
另外,这里的切片同全球卫星影像数据一样,切片的最高级别为水经注的20级。
因此,该地名路网标签可以与全球卫星影像进行叠加,从而解决国外区域没有路网标签的问题。
所不同的是,地名标签在没有矢量数据的区域将不会生成对应的金字塔DAT文件,因为空文件没有意义。
原本认为对全球矢量进行切片是一件并不复杂的事,但开工之后才发现有好多细节需要去处理。
不过其中最为消耗时间和精力的主要是矢量样式配图、数据清洗处理和渲染切图。
矢量数据的配图效果,主要以天地图的地图样式为参考依据。
数据清洗主要包括数据入库、国界和敏感区域的地图合规化处理。
渲染切片在所有工作中花时间最多,除了需要为此专门开发一套切片工具外,切片处理本身还需要花非常多的时间。
为了为了提升数据切片的效率,我们投入了不少硬件设备,其中包括不少昂贵的高速硬盘。
好在,我们历经千难万苦之后,最终还是顺利地向客户完成了交付。
现在,该地图数据已经在其项目产品中投入了使用,从而让我们的工作成果得到了巨大的价值体现。
全球地名路网透明标签瓦片地图有6.59TB大小,也就是约6.6TB大小。
渲染切片完成后共1215042个文件,由于一个分块由一对DAT与IDX文件构成,因此共有607521个金字塔文件。
全球共6.59TB
基于2_1_1和2_2_1两座金字塔为全球前12级数据,如下图所示。
全球地名路网地图
为了让大家更详细地了解该数据的情况,接下来列出每一个部分的文件大小,以及相应的文件列表。
第一部分1.33TB
第一部分140368个文件
第二部分1.42TB
第二部分270054个文件
第三部分1.80TB
第三部分325430个文件
第四部分1.49TB
第四部分299618个文件
第五部分516GB
第五部分145760个文件
第六部分30.3GB
第六部分33808个文件
由于这六部分并没有按规则进行平均分,所在存储大小有比较大的出入,分区如下所示。
分区图
渲染生成后的DAT文件,可以导入到水经微图的任务列表中进行查看,这里分别列出东西半球的效果图。
东半球效果图一
东半球效果图二
东半球效果图三
西半球效果图一
西半球效果图二
西半球效果图三
西半球效果图四
该全球透明标签可以通过水经注地图发布服务中间件进行发布后,在其它GIS平台中进行加载。
现在,你也可以在水经微图中很方便地在线查看该全球地名标签,只需要在“图层”树中勾选“全球标签”选项即可。
为了避免地图标签存在重叠的情况,请确保关闭现有的地名路网标签,这样才可以有最佳的查看效果。
全球标签(一)
全球标签(二)
全球标签(三)
全球标签(四)
全球标签(五)
这里仅为大家例了几个位置的校例效果图,如果有兴趣,请在水经微图中自行查看。
通过这一次的全球切片处理之后,我们总结出了一套全球矢量数据处理、图例配置和高效切片方案,虽然花了不少的时间和精力,但这也的确是一件非常有意义的事。
需要特别说明的是,该切片的坐标投影为WGS84经纬度投影,如果需要一套墨卡托的全球路网地名标签,我们也可以为你提供相应的切片服务。