Skip to content

切片与网格集

概览

本章主要讲述Geoserver中切片相关的参数。包括:

  • 切片原理
  • 网格集
  • 磁盘定额和BlobStores
  • 切片图层和图层预切片

一、切片原理

切片原理参考csdn文章WEBGIS基础(地图切片).

二、网格集

1.网格集列表

点击左侧菜单"Tile Caching -> 网格集"进入网格集列表页面,在页面上方提供了“添加新网格集”和“删除已选网格集”按钮。网格集列表包括如下字段:

  • 网格集:定义的网格集名称
  • 坐标系:网格集的坐标系
  • 切片大小:切片的大小
  • 缩放层级:最大的缩放层级
  • 硬盘占用:磁盘占用情况

同时在每个网格集后面提供了快捷按钮“创建副本”,可以复制当前网格集。

2. 添加/编辑网格集

点击“添加新网格集”跳转到新建网格集页面,如下图所示。定义网格集的参数有:

  • 名称:网格集的名称,如Tile512
  • 坐标系:网格集的坐标系,如EPSG:3857
  • 网格集边界:网格集的边界范围,如[-20037508.34,-20037508.34,20037508.34,20037508.34]
  • 切片大小:切片的宽度和高度,如[512, 512]
  • Tile Matrix Set:定义切片每一级的分辨率等信息

每一级的分辨率等信息可通过如下代码进行计算:

js
const size = 512, origin = 20037508.34, minZoom = 0, maxZoom = 18
const res = []
for (let zoom = minZoom; zoom <= maxZoom; zoom++) {
  if(zoom === 0) {
    res.push([zoom, (origin * 2) / size])
  } else {
    res.push([zoom, res[res.length - 1][1] / 2])
  }
}
console.log(res.map(r => r.join('->')).join('\r\n'))

计算得到的值如下:

txt
0->78271.516953125
1->39135.7584765625
2->19567.87923828125
3->9783.939619140625
4->4891.9698095703125
5->2445.9849047851562
6->1222.9924523925781
7->611.4962261962891
8->305.74811309814453
9->152.87405654907226
10->76.43702827453613
11->38.218514137268066
12->19.109257068634033
13->9.554628534317017
14->4.777314267158508
15->2.388657133579254
16->1.194328566789627
17->0.5971642833948135
18->0.29858214169740677

定义好切片规则后使用该切片时的参数如下:

txt
http://localhost:8080/geoserver/gwc/service/wmts?
 layer=lzugis:base_province&
 tilematrixset=Tile512&
 Service=WMTS&
 Request=GetTile&
 Version=1.0.0&
 Format=image/png&
 TileMatrix=zoom4&
 TileCol=12&
 TileRow=6

3. 删除网格集

点击选中网格集,点击“删除已选网格集”按钮,弹出确认对话框,点击“确定”即可删除。

三. 切片默认配置

点击左侧菜单“Tile Caching -> Caching Defaults”进入切片默认配置页面,该页面用于配置切片默认配置,是一个全局配置,页面如下图所示。

切片全局配置包括:

  • Provided Services:提供的服务
    • Enable direct integration with GeoServer WMS(跟Geoserver的WMS直接集成)
    • Explicitly require TILED Parameter(明文显示切片参数)
    • Enable WMS-C Service(启用WMS-C服务)
    • Enable TMS Service(启用TMS服务)
    • Enable Data Security(启用数据安全)
  • Default Caching Options for GeoServer Layers
    • Default Tile Image Formats for(默认格式)
    • Default Cached Gridsets(默认网格集)

四、Disk Quota磁盘定额

如无特殊需求,此配置一般不做修改。可根据实际情况进行调整。

五、BlobStores

1. 列表

点击左侧菜单“Tile Caching -> BlobStores”进入BlobStores管理页面,该页面用于配置BlobStores,是一个全局配置,页面如下图所示。

2. 新增/修改

点击“Add New”按钮,进入到新增页面,如下图所示。 新增信息包括:

  • 类型,选择类型为File BlobStore,为文件型存储;
  • 名称,输入名称;
  • 是否启用
  • 是否默认
  • Base Directory,基础路径
  • File System Block Size,文件大小,根据需求进行修改,默认为4096
  • Tiles directory layout,文件组织形式,可选择GeoWebCache defaultTMS layoutSLIPPY

六、切片图层

1. 切片图层列表

点击左侧菜单“Tile Caching -> 切片图层”进入切片图层页面,界面如下。 在列表上方有三个按钮:“添加新的缓存图层"、”移除新的缓存图层“、”清空所有缓存“。列表信息包括:

  • 类型:图层类型,以图标的方式展示
  • 图层名称
  • 硬盘配额
  • 硬盘占用
  • BlobStore
  • 启用
  • 预览,根据默认切片参数和切片图层定义时指定的格式,提供通过openlayers进行预览的功能
  • 操作,包括Seed/TruncateEmpty两个操作。

2. 添加新的缓存图层

点击“添加新的缓存图层”按钮可添加新的切片图层,不过一般在新增图层(组)的时候已经定义好了切片图层。

3. 预切片与清空

点击操作列"Seed/Truncate",进入预切片界面,如下图所示。

设置Create a new task下的参数,开始进行预切片。

点击Empty清空已有的切片。

4. 删除切片图层

选中图层,点击上方”移除新的缓存图层“即可删除。

5. 清空所有缓存

点击”清空所有缓存“可清除所有缓存切片。