坐标参考系配置

添加数据时,geoserver尝试检查数据头以查找epsg代码:

  • 如果数据有一个带有显式epsg代码的crs,并且代码后面的完整crs定义与geoserver中的定义匹配,那么就已经为数据设置了crs。

  • 如果数据有CRS但没有EPSG代码,则可以使用 Find 选择权 使geoserver执行查找操作的页面,其中数据crs与其他所有已知crs进行比较。如果成功,将选择EPSG代码。没有epsg代码的crs的常见情况是shapefiles,其.prj文件包含没有epsg标识符的有效wkt字符串(因为这些是可选的)。

如果找不到EPSG代码,则说明数据没有CRS,或者地理服务器不知道该代码。在这种情况下,有几个选项:

  • 强制声明的CRS,忽略本机CRS。如果已知本地CRS错误,这是最好的解决方案。

  • 从本地重新投影到声明的CRS。这是最好的解决方案,如果本机CRS是正确的,但不能匹配一个EPSG号码。(另一种方法是添加与本机SRS完全匹配的自定义EPSG代码。请参阅 自定义CRS定义 更多信息。)

如果您的数据没有本机CRS信息,唯一的选择是指定/强制EPSG代码。

增加比较公差

使用比较公差对十进制数进行比较。这意味着,作为一个例子,一个椭球的半长轴等于一个候选的epsg的椭球半长轴,前提是它们的差在这个公差范围内。默认值是10 - 9,尽管可以通过将一个Java Java系统属性设置为容器的JVM来指定一个不同的值来更改它。

警告

只有当您知道需要更广泛的公差的用例时,才应该更改默认值。除非确实需要,否则不要更改它(参见下面的示例)。

例子

  • 您的示例数据集是一个兰伯特共形投影,相关的epsg代码定义纬度原点值=25.0。

  • CoverageStore插件通过第三方库公开栅格投影详细信息,第三方库将投影参数定义提供为浮点数。

  • 由于第三方库中发生的底层数学计算,暴露的投影参数会受到一定的精度损失,因此提供的原点纬度为25.0000012,而所有其他参数都符合EPSG定义。

  • 你注意到本地的CRS并没有被正确地识别为预期的EPSG,因为在起源地的纬度上有微小的差别。

在这种情况下,你可以考虑增加一点容忍度。