TileServer-GL 服务端点详解:地图瓦片与静态图像API指南
概述
TileServer-GL 是一个强大的地图瓦片服务器,它提供了多种端点(API接口)来访问地图样式、瓦片数据、静态图像等功能。本文将全面解析这些端点的功能和使用方法,帮助开发者更好地利用TileServer-GL构建地图应用。
样式相关端点
基础样式访问
- 获取单个样式:
/styles/{id}/style.json - 获取所有样式列表:
/styles.json
样式资源
-
精灵图(Sprite):用于存储地图中使用的图标和小图片
- 基础路径:
/styles/{id}/sprite - 支持多分辨率:
@2x、@3x等高DPI版本 - 支持多种格式:
.png、.json等
- 基础路径:
-
字体:用于地图文本渲染
- 路径格式:
/fonts/{fontstack}/{start}-{end}.pbf - 其中
fontstack是字体名称,start和end是Unicode字符范围
- 路径格式:
地图瓦片端点
渲染瓦片
- 基础路径:
/styles/{id}/{z}/{x}/{y}.{format} - 可选参数:
- 瓦片尺寸:
/{tileSize}(默认为256) - 高DPI支持:
@2x等比例因子 - 支持格式:
png、jpg(或jpeg)、webp
- 瓦片尺寸:
瓦片元数据
- 获取TileJSON:
/styles/{id}.json- 包含瓦片的基本信息如边界、缩放级别等
注意:
tileserver-gl-light轻量版不支持渲染瓦片功能
WMTS服务能力
- WMTS(Web Map Tile Service)能力文档:
/styles/{id}/wmts.xml- 提供标准化的WMTS服务描述,可与GIS软件集成
静态图像生成
TileServer-GL提供了强大的静态地图图像生成功能,支持多种定位方式:
1. 基于中心点的静态图
路径格式:/styles/{id}/static/{lon},{lat},{zoom}[@{bearing}[,{pitch}]]/{width}x{height}[@2x].{format}
2. 基于区域的静态图
路径格式:/styles/{id}/static/{minx},{miny},{maxx},{maxy}/{width}x{height}[@2x].{format}
3. 自动适配路径的静态图
路径格式:/styles/{id}/static/auto/{width}x{height}[@2x].{format}
高级参数
静态图像端点支持丰富的查询参数来增强地图表现:
路径绘制
path参数支持多种格式:- 简单坐标串:
lng,lat|lng,lat|... - Google编码折线:
enc:... - 带样式的路径:
stroke:color|width:size|fill:color|...
- 简单坐标串:
标记点
marker参数格式:lng,lat|iconPath|option|option|...- 支持缩放(
scale)和偏移(offset)等选项 - 图标可以是URL或本地路径
- 支持缩放(
其他样式控制
fill/stroke/width:控制路径填充和描边linecap/linejoin:控制线段的端点样式border:为路径添加边框效果padding:为自动适配添加边距
实验性功能:使用
/styles/{id}/static/raw/...可直接使用墨卡托坐标(EPSG:3857)
源数据访问
瓦片数据
- 路径:
/data/{id}/{z}/{x}/{y}.{format}- 支持格式:
pbf、png、geojson(用于调试)
- 支持格式:
高程数据
- 瓦片高程:
/data/{id}/elevation/{z}/{x}/{y} - 坐标高程:
/data/{id}/elevation/{z}/{long}/{lat}- 返回包含坐标和高程信息的JSON对象
辅助功能
静态文件服务
- 路径:
/files/{filename}- 可用于提供GeoJSON等数据文件
- 默认目录:
public/files
列表端点
- 所有TileJSON列表:
/index.json或/rendered.json - 数据源列表:
/data.json - 可用字体列表:
/fonts.json
健康检查
- 端点:
/health- 返回状态码:
503:服务正在启动200:服务正常运行
- 返回状态码:
最佳实践建议
-
性能优化:
- 对于大量数据,建议使用瓦片格式而非完整GeoJSON
- 合理使用高DPI(
@2x)参数平衡质量和性能
-
样式控制:
- 利用路径参数的多重样式能力创建丰富的地图标注
- 通过
padding参数确保关键区域在静态图中完整显示
-
高程数据:
- 地形应用中优先使用坐标高程查询而非瓦片高程
- 注意配置正确的
encoding参数以确保高程数据正确解析
通过掌握这些端点及其参数,开发者可以充分利用TileServer-GL的强大功能,构建高性能、定制化的地图应用。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考



