地图瓦片生产最佳实践

在生产地图瓦片的过程中,不同的数据类型、业务需求和技术环境可能导致瓦片生成效率、存储成本和渲染效果存在一些差异。

本文旨在提供一套地图瓦片生产的最佳实践,涵盖瓦片类型选择、机器与参数配置、以及地图数据优化等建议,帮助您高效、稳定地生成高质量的地图瓦片。

瓦片类型说明

瓦片类型

SuperMap iDesktopX支持生成矢量瓦片或栅格瓦片,这两种瓦片类型对应的应用场景不同,可根据具体的应用场景来选择瓦片类型。

瓦片类型 瓦片特点 应用场景
栅格瓦片 二进制图片、渲染最快、无客户端要求。 业务底图、不需交互查询。
矢量瓦片 像素坐标、风格样式复杂、需客户端解析动态绘制。 高精显示、动态修改风格样式、属性查询。

矢量瓦片遵循Mapbox MVT规范,风格样式遵循Mapbox GL 8版本的style.json标准规范;故超图地图生成矢量瓦片时存在风格样式与Mapbox风格样式的转义,有些风格样式不支持,可能导致矢量瓦片效果与原始不一致。可以通过手动调整样式来解决。

数据和坐标系要求

瓦片类型 数据要求 坐标系要求
栅格瓦片 不支持视频数据集、模型数据集、体数据集。 无。
矢量瓦片 仅支持点线面和文本数据集。 不支持平面坐标系。

配置推荐

机器配置推荐

对切瓦片效率影响较大的硬件是CPU性能和磁盘IO性能,故推荐采用CPU主频高、固态磁盘的机器来做切瓦片任务。原始地图数据建议存储在固态磁盘,读取效率最高。结果瓦片对存储磁盘不做要求,因为写瓦片对IO要求不高。

地图范围 CPU逻辑核数 内存大小 磁盘与网络IO
区县级 16 32GB 固态磁盘500MB/s、千兆网络带宽(共享目录建议千兆网络)。
 
市级 32 64GB
省级 64 128GB
全国 128 256GB

原始地图优化推荐

在生产瓦片之前,需先优化数据、优化地图的配置,以此追求更高效的瓦片渲染效率。可以通过地图选项卡—>制图组—>性能诊断分析出优化项。一般情况下地图刷新在1秒内(更高要求可参考300毫秒),可认为达到标准。对于没有达到标准的地图建议先进行地图优化,可以提高切图效率。可对下面常见的问题重点关注:

  • 坐标系:检查数据坐标系和地图坐标系是否一致,建议用户先将数据的坐标系转换为地图显示坐标系。
  • 对节点密集的对象进行抽稀,减少节点冗余。
  • 对包含了太多子对象的对象进行拆分,减少对象的复杂程度。
  • 对地图中的过小对象使用过滤条件进行过滤,可以在不影响地图所承载的信息量的情况下,将提升地图浏览速度。
  • 进行反走样后矢量地图中的线型和文本看起来更光滑,提高视觉感受,但会造成性能下降。因此在使用反走样时,需要浏览速度和性能之间寻找一种平衡,既要达到浏览效果最佳,也要保证浏览速度。
  • 对比较复杂的地图,要避免对象节点过多,可以考虑进行光滑处理或者重采样。

关于地图性能诊断的详细内容可参见:地图性能优化

参数推荐

瓦片类型 参数推荐 参数优势 特殊场景备注
栅格瓦片 瓦片格式:webp 体积小、清晰度高 追求无损精度,推荐PNG+压缩比例90%
瓦片大小:256x256 通用 高分屏手机端追求高清地图时,推荐512x512 + 120
分辨率:96 通用
勾选忽略无效数据区域瓦片 减少空白瓦片 -
存储格式:紧凑、MongoDB 方便共享、迁移 -
开启基础比例尺 效率高:仅当地图中只有栅格、镶嵌数据集才生效 基础比例尺与影像分辨率的比例尺接近。如:0.5米分辨率对应比例尺(1/2257)
不勾选完成填充瓦片 通用 仅当需合并瓦片时才勾选
进程数:默认 CPU逻辑核数调度更高效 -
矢量瓦片 勾选生成字体缓存文件 - -
勾选分离数据与风格 方便瓦片更新 -
勾选添加所有属性字段值 可查询属性 当不需查询属性时可不勾,减少瓦片体积
勾选抽稀显示 提高渲染效率 -
存储格式:紧凑、MongoDB 方便共享、迁移 -
进程数:默认 CPU逻辑核数调度更高效 -
栅格/矢量 瓦片范围:频繁访问的地图区域 以降低生成和存储瓦片的成本。例如,在访问世界地图时,对于广大的无人区,可以不生成瓦片。 -
瓦片原点:地图左上角 以便与 SuperMap iServer瓦片原点保持一致。在根据需求修改地图瓦片的范围信息时,也需要保持瓦片原点是整幅地图范围。 -

算法参数推荐配置

生成地图瓦片的部分关键参数存储在bin\supermap.xml文件中,可对下面这些参数的默认值进行调整。

参数名称 默认值 参数含义 推荐值 参数作用
HPMapCacheThreadNum 0 生成缓存使用的线程数量 CPU核数 加速缓存生成
MapVectorTileGroupSize 4 每批次生成矢量瓦片个数为4x4 资源丰富可适当增加 处理效率更高
MVTMaxSimplifyLevel 12 生成矢量瓦片抽稀的最大比例尺 12 加速矢量瓦片的渲染
MapCacheSolidFileEnabled false 生成原始栅格缓存时是否生成.solid文件 false 可加速纯色瓦片的渲染
MosaicBuildSingleEnabled true 是否启用单幅大影像模式执行镶嵌数据集地图切片 true 加速镶嵌数据集地图切片效率,需满足条件:
1.地图图层为镶嵌数据集
2.存储均为本地磁盘目录
3.勾选基础比例尺
4.全幅范围
MosaicBuildSingleMinSize 50000*50000 自定义单幅大影像的尺寸 50000*50000
MosaicBuildSingleNumOfProcessor 1 机器的物理处理器(CPU)的个数 实际物理处理器个数
MosaicBuildSingleProcessCount 2 单幅大影像模式生成瓦片时的处理线程个数 -

其他

  1. 选择合适的比例尺系列

    为图层设置合适的比例尺级别能够在浏览地图时更完整、更美观地显示各种地理要素,同时避免在浏览地图时出现跳跃显示问题。因此在制图时需要考虑不同比例尺下的地理要素是否显示,或者显示何种形态。比如在小比例尺级别下,建议用线数据集表达河流,而在大比例尺级别下,可以使用面数据集表达河流。如下图:左边为小比例尺地图、右边为大比例尺地图。

  2. 瓦片路径设置

    如果生成的瓦片要在 SuperMap iServer服务端发布,可以直接将瓦片路径设置为SuperMap iServer根目录\webapps\iserver\output\cache,否则瓦片拷贝可能会花费比较长的时间。

  3. 保持工作空间一致

    工作空间中的地图参数决定了 SuperMap iServer使用瓦片文件中瓦片图片命名,因此需要保证用于制作瓦片的工作空间中的地图和用于 SuperMap iServer发布的工作空间中的地图一致。影响参数包括地图的风格、数据的连接情况、图层顺序、默认比例尺、地图范围等。因此生产瓦片后,尽量不要对工作空间的地图进行修改,以保证发布的地图与用于制作瓦片的地图一致。

    同时需要保持地图中所有图层可用,所有图层对应的数据集和数据源在工作空间中都存在。对数据集中对象的编辑,如添加、删除、更新等,不会影响编辑区域以外的瓦片图片(只需通过 SuperMap iServer 更新这部分区域的瓦片即可)。

  4. 瓦片图片与出图设备无关的特性

    如果 SuperMap iDesktopX 与 SuperMap iServer不在同一台机器上,有可能由于设备显示地图分辨率不同,从而不同设备上的瓦片不能很好地一起使用,例如拼接出现问题等。SuperMap iDesktopX支持配置地图瓦片与设备显示分辨率无关。具体的操作方法如下:

    • SuperMap iDesktopX安装根目录的 bin 目录下的 SuperMap.xml 配置文件中的 CustomDPIEnable 属性为 true。
      图:SuperMap 的 SuperMap.xml 文件
    • 修改相应的SuperMap iServer安装目录\support\objectsjava 的 bin 目录下 SuperMap.xml 文件中的 CustomDPIEnable 属性为 true。
    • 保持桌面和服务器中两个 SuperMap.xml 文件的 CustomDPIX 和 CustomDPIY 的取值相同。
  5. SuperMap iDesktopX生成的地图瓦片,如需在SueprMap iServer服务端发布,则生成紧凑型地图瓦片时,不要对瓦片进行加密,否则在服务端发布会有问题。

相关主题

地图瓦片

瓦片类型

瓦片存储格式