发现
命令行工具开发者工具
VersaTiles:地图瓦片转换与服务工具
用 Rust 编写的地图瓦片工具箱,可转换、检查并本地服务多种瓦片格式。
- 浏览
- 1
- 访问
- 0
- 下载
- 0
- 版本
- v5.6.0
- 平台
- macOS、Linux
该作品还没有经过官方审核。访问演示、下载或复制命令前,请自行确认来源可信。
详细介绍
项目简介
VersaTiles 是一个用 Rust 编写的地图瓦片处理与服务工具,核心围绕「瓦片容器」工作:按缩放级别 z、列 x、行 y 组织的文件或目录。它支持 .versatiles、.pmtiles、.mbtiles、.tar 以及普通目录等格式,可用于格式转换、区域裁剪、瓦片合并、信息查看和本地 HTTP 服务。项目同时提供 Rust 库,仓库还提供 Node.js 绑定。
主要功能
- 多格式互转:在
.versatiles、.pmtiles、.mbtiles、.tar和目录之间读取、写入。 - 远程读取:通过 HTTPS 读取远程
.versatiles与.pmtiles,也可通过 SFTP 读写远程文件(需启用sftpfeature)。 - convert:转换瓦片格式,支持
--min-zoom/--max-zoom过滤、--bbox区域裁剪、--bbox-border增加边界瓦片、--compress设置压缩方式,以及--tile-format重编码栅格或矢量瓦片。 - 其他命令:
merge合并多个瓦片容器,probe查看瓦片信息,reduce将瓦片集裁剪到样式实际绘制的范围,serve通过 HTTP 提供瓦片,mosaic拼接影像镶嵌图。 - 坐标处理:支持
--swap-xy交换 X/Y 坐标、--flip-y垂直翻转瓦片。 - 高程瓦片:对声明为
dem/mapbox、dem/terrarium、dem/versatiles的高程瓦片,在不指定质量参数时按无损方式重编码;avif/jpg有损格式需要显式指定质量。
安装与使用
Linux 可使用安装脚本:
curl -Ls "https://github.com/versatiles-org/versatiles-rs/releases/latest/download/install-unix.sh" | sudo sh
macOS 通过 Homebrew:
brew tap versatiles-org/versatiles
brew trust versatiles-org/versatiles
brew install versatiles
也可以用 Cargo 安装:
cargo install versatiles
NixOS 可将 versatiles 加入 environment.systemPackages;Docker 镜像为 versatiles/versatiles;Node.js 绑定包为 @versatiles/versatiles-rs。
快速体验:
versatiles --version
versatiles convert --bbox=13.0,52.3,13.8,52.7 --bbox-border=3 https://download.versatiles.org/osm.versatiles berlin.versatiles
versatiles probe berlin.versatiles
versatiles serve berlin.versatiles
serve 启动后默认可在 http://localhost:8080 访问。
注意事项
- 远程 HTTP(S) 读取和 SFTP 读写仅适用于可流式读取的单文件格式
.versatiles与.pmtiles;.mbtiles、.tar和目录主要用于本地。 - SFTP 连接会按 OpenSSH 的
accept-new策略校验~/.ssh/known_hosts。将VERSATILES_SFTP_KNOWN_HOSTS设为off会关闭校验,仅适合主机密钥会按设计变化的场景,同时也会失去对中间人攻击的防护。 - 不同平台的安装脚本和构建步骤可能依赖系统组件,使用前请确认当前系统与依赖条件。
本作品整理自 GitHub 开源项目 versatiles-org/versatiles-rs,原作者 @versatiles-org,许可证 MIT。中文介绍由 AI 根据项目 README 整理,以原仓库为准。
更新记录
- v5.6.0当前版本
v5.6.0 扩展 TileSchema:新增 Custom 与 landcover 变体,解析更宽松,不再实现 Copy;未知但格式正确的 tile_schema 会在读写、转换和服务时保留。
评论