首页 > 其他分享 >MapLibre/Martin | 使用Martin发布MBTiles地图切片包

MapLibre/Martin | 使用Martin发布MBTiles地图切片包

时间:2024-07-16 14:30:06浏览次数:23  
标签:ol martin MBTiles 切片 Martin MapLibre world cities

什么是 Martin

Martin 是一个高性能的地图切片服务器,使用Rust编写,支持PostGISMBTilesPMTiles

什么是 MBTiles

MBTiles 是个sqlite文件,也就是说MBTiles文件是个单文件数据库。截至本文写作时,最新标准是1.3.
MBTIles利用了数据库的索引机制,避免相同内容的切片重复占用空间,同时也有了 SQLITE 数据库单文件的优点,非常方便传输与利用。

Tiles 表

CREATE TABLE tiles (
    zoom_level  INTEGER, -- Z
    tile_column INTEGER, -- Y
    tile_row    INTEGER, -- X
    tile_data   BLOB);   -- 切片数据

CREATE UNIQUE INDEX tile_index on tiles (
    zoom_level, tile_column, tile_row);

Metadata 表

CREATE TABLE metadata (name text, value text);

元信息字段

  • name
  • format
  • bounds
  • center
  • minzoom
  • maxzoom
  • attribution
  • description
  • type
  • version
  • json

为什么使用 MBTiles

相关文章

  • MapLibre踩坑之官网demo
    第一步,下载工程gitclonehttps://github.com/maplibre/maplibre-react-native.git第二步,运行工程cdmaplibre-react-native/exampleyarninstall #多次执行,直到没有错误提示yarnreact-nativerun-android第三步,排错Didn'tfindclass"com.facebook.drawee.backends.p......
  • (数据科学学习手札158)基于martin为在线地图快速构建精灵图服务
    本文示例代码已上传至我的Github仓库https://github.com/CNFeffery/DataScienceStudyNotes1简介大家好我是费老师,martin作为快速发展中的新一代开源高性能地图服务框架,在之前的两篇文章中,我已为大家分别介绍过使用martin快速发布矢量切片地图服务(https://www.cnblogs.co......
  • Martingale
    条件期望\(\newcommand{\E}{\mathbb{E}}\)对于随机变量\(Y\)和事件\(B\),我们定义\(Y\)关于\(B\)条件期望为\(\E[Y\midB]=\dfrac{\E[Y\cdot\mathbb{1}_B]}{P(B)}\),直观理解为在已知\(Y\)发生时\(X\)的平均取值。现在我们希望定义一个随机变量\(Y\)关于另一个随机变量\(X\)的条......
  • 重构: 改善既有代码的设计pdf电子版 Martin Fowler
    重构:改善既有代码的设计pdf电子版MartinFowler原作名: Refactoring:ImprovingtheDesignofExistingCode出版年: 2010ISBN: 9787115221704连接提取码:abj3计科是这样一门科学:它相信所有问题都可以通过增加一个间接层来解决。与《设计模式》成为面向对象的姐妹书:设计模......
  • Spring: SmartInitializingSingleton
    packagecn.edu.tju.service3;importorg.springframework.beans.factory.SmartInitializingSingleton;importorg.springframework.stereotype.Component;@ComponentpublicclassMySmartServiceimplementsSmartInitializingSingleton{@Overridepublicvo......
  • (数据科学学习手札153)基于martin的高性能矢量切片地图服务构建
    本文示例代码已上传至我的Github仓库https://github.com/CNFeffery/DataScienceStudyNotes1简介大家好我是费老师,在日常研发地图类应用的场景中,为了在地图上快速加载大量的矢量要素,且方便快捷的在前端处理矢量的样式,且矢量数据可以携带对应的若干属性字段,目前主流的做法......
  • (数据科学学习手札153)基于martin的高性能矢量切片地图服务构建
    本文示例代码已上传至我的Github仓库https://github.com/CNFeffery/DataScienceStudyNotes1简介大家好我是费老师,在日常研发地图类应用的场景中,为了在地图上快速加载大量的矢量要素,且方便快捷的在前端处理矢量的样式,且矢量数据可以携带对应的若干属性字段,目前主流的做法......
  • GeoServer入门学习:05-多层级MBTiles规范数据发布
    一、开篇本篇演示如何在GeoServer中发布多层级的MBTiles数据,在发布之前,需要配置MBTiles扩展包,如果没有配置WPS扩展包的话,还需要配置一并进行配置。如上图所示,默认情况下GeoServer并未包含MBTiles扩展包,因此,在《新建数据源》的时候是没有发布MBTiles数据的入口。 二、下载WPS扩展包......
  • Martin Fowler谈《重构HTML:改善Web应用的设计》
    MartinFowler谈《重构HTML:改善Web仅仅十余年,Web就从一门大有希望的技术演变成了世界基础设施的重要组成部分。在这个绚丽迷人的年代中,涌现了许多有用的资源。一如往常,我们在追求最佳实践的过程中不断地学习技术,而技术本身的成熟也促使我们更好地使用它。无论多么复杂的Web应......
  • maplibre-gl加载天地图影像
    要在MapLibreGL中加载天地图的影像底图,需要使用天地图的瓦片服务URL,并将其添加为栅格图层。以下是一个示例代码片段,展示如何在MapLibreGL中加载天地图的影像底图://创建地图实例varmap=newmaplibregl.Map({container:'map-container',//替换为你的地图容器的......