乐趣区

关于gis:如何不改源码让maputnik支持geoserver

前段时间分享了如何让矢量瓦片配图神器 maputnik 反对 geoserver,文章中的解决方案是,通过批改 maputnik 源码,在界面上减少 tms 协定选项,从而让 maputnik 反对 geoserver 公布的矢量瓦片。

前两天工作时发现,不批改 maputnik 源码,也能让它反对 geoserver 矢量瓦片。

原理如下:

  1. maputnik 实质上是 mapboxgl style 文件的编辑器,style 文件是个 json 格局数据。
  2. mapboxgl 自身是反对 geoserver tms 协定矢量瓦片的,在 style 文件中进行相干配置就能够实现。
  3. maputnik 中的地图应用 mapboxgl 实现,不反对 geoserver 是因为界面上没有配置 tms 协定的选项,导致无奈生成蕴含 tms 协定配置的 style 文件。
  4. maputnik 反对 style 文件的导入、导出、编辑性能,咱们能够在配置 geoserver 数据源后,导出 style 文件,在 style 文件中手工增加 tms 协定相干配置,再导回 maputnik,从而让它反对 geoserver 矢量瓦片。

具体操作办法如下:

  1. 关上 maputnik,配置 geoserver 数据源。
  2. 把 style 文件下载到本地。
  3. 关上下载的 style 文件,在 source 中找到刚增加的 geoserver 数据源,手动增加 tms 协定选项。
  4. 从新导入 style 文件。
  5. 后续增加的 geoserver 图层就能失常显示了。

和之前批改源码的计划比拟:

  1. 这次的计划简略灵便,普适性强,后续再遇到相似 mapboxgl 反对但 maputnik 不反对的问题,都能够应用这种形式疾速解决。
  2. 批改源码的计划对于 react 框架不熟的同学可能比拟吃力,但如果解决了,后续应用就会很不便,一劳永逸。
  3. docker 版本的 maputnik,无奈批改源码,只能应用这次的计划解决。

总结:

  1. style 文件是 maputnik 和 mapboxgl 连贯的惟一纽带。
  2. maputnik 实质上是一个 mapboxgl style 文件的编辑器。
  3. maputnik 没有笼罩到 style 文件的所有选项,导致它不反对 geoserver 的矢量瓦片。
  4. maputnik 没有笼罩到的选项,能够通过导入、导出性能,手工编辑 style 文件来实现。

<br/>

<br/>


原文地址:http://gisarmory.xyz/blog/index.html?blog=maputnikGeoserverVectorTiles2

关注《GIS 兵器库》,第一工夫取得更多高质量 GIS 文章。

本文章采纳 常识共享署名 - 非商业性应用 - 雷同形式共享 4.0 国内许可协定 进行许可。欢送转载、应用、从新公布,但务必保留文章署名《GIS 兵器库》(蕴含链接:http://gisarmory.xyz/blog/),不得用于商业目标,基于本文批改后的作品务必以雷同的许可公布。

退出移动版