文章目录
- 前言
- 一、Geoserver的三种SRS处理
- 二、对Bounding Boxes计算的影响
- 总结
前言
今天来看看Geoserver中发布图层时的坐标参考处理这一项。根据Geoserver官方文档,坐标参考系统 (CRS) 定义了地理参考空间数据与地球表面实际位置的关系。CRS 是更通用的模型(称为空间参考系统 (SRS))的一部分,该模型包括通过坐标和地理标识符进行引用。GeoServer 需要知道数据的坐标参考系统。此信息用于计算纬度/经度边界框并在 WMS 和 WFS 请求期间重新投影数据。
一、Geoserver的三种SRS处理
根据官方文档,官方给出的三种SRS处理分别是Force declared(强制声明)、Reproject from native(从本机重新投影)、Keep native(保持原生)。如下图为发布图层/编辑图层时srs处理选项,不同选项对于下面的计算边框有影响。
Force declared 强制声明(默认):强制将声明的 SRS 覆盖原生 SRS,通常是最佳操作方案,声明的代码来自 EPSG 数据库,其中包含大量额外信息,从有效的 EPSG 代码、有效区域开始,再到数据库中的链接,以找到最佳转换步骤到其他坐标参考系统(如果需要重新投影)。当源没有原生 CRS、有错误的 CRS 或有与 EPSG 代码匹配的 CRS 时使用此选项。(由官方文档翻译而来)
Reproject from native(从本机重新投影):当本机数据集具有与任何官方 EPSG 都不匹配的 CRS 时,应使用此设置。OGC 协议需要为图层宣传 EPSG 代码,使用此设置将宣传声明的代码,并且将根据需要动态地从本机进行重新投影(如果请求第三个 CRS,则重新投影将直接从本机转到声明的 CRS)(由官方文档翻译而来)
Keep native(保持原生):此设置应在极少数情况下使用。保持原生意味着使用功能文档中声明的 CRS,但在所有其他请求中使用原生 CRS(中间不进行重新投影,除非客户端明确请求)。如果源是 Shapefile,则这尤其成问题,因为 PRJ 文件缺少 EPSG 数据库提供的所有额外信息(例如,它将在 GML 输出中破坏 WFS 1.1 和 2.0 SRS 声明)。此设置用于 WMS 是主要目标的情况,并且原生 CRS 和声明的 CRS 差异很小,从而避免动态重新投影和基准更改。
官方对SRS处理给出的建议是使用强制声明作为主要选项,当源数据与任何 EPSG 代码不匹配时才从本机重新投影,并且仅当您真正知道自己在做什么时才保持原生。
二、对Bounding Boxes计算的影响
Bounding Boxes(原生边界框),原生 SRS 中指定的数据边界。可以通过单击“从数据计算”按钮生成,也可以通过单击“从 SRS 边界计算”按钮从 SRS 定义生成。
使用的 SRS 取决于所选的SRS 处理:当选择Force declared 强制声明(默认)或Reproject from native(从本机重新投影)时,使用声明的 SRS,否则使用原生 SRS。如果 SRS 没有定义边界,则不会生成任何边界。
总结
提示:今天简单读了官方发布图层文档中的SRS处理部分,大部分情况下该选项选择Force declared 强制声明(默认) 是最佳的。