【问题标题】:Get projection limits from Postgis从 Postgis 获取投影限制
【发布时间】:2016-01-26 13:12:34
【问题描述】:

我以纬度/经度坐标对收到对我的 API 的空间查询。我的空间数据在不覆盖整个地球的投影中,因此某些查询超出了范围。

我想用有用的错误消息来回复错误的查询。与其尝试在 GIS 规范或标准中找出每个投影的边界(并从中获得正确的纬度/经度对),我想知道我是否可以询问 Postgis 的限制或询问特定点是否是在限制范围内,以及以何种方式是错误的。这样我就可以轻松支持许多预测。

看起来 Postgis 有这个信息,因为对于错误的查询,它会这样回答:

transform: couldn't project point (-77.0331 -12.1251 0):
    latitude or longitude exceeded limits (-14)

我正在通过 Geodjango 距离查询(django.contrib.gis.geos.geometry.GEOSGeometry.distance 函数)使用 Postgis。

【问题讨论】:

    标签: postgis spatial geodjango


    【解决方案1】:

    PostGIS 或 PROJ.4(关注 this thread)没有这些界限。每个投影的边界都是唯一的,并且传统上由设计投影的权威机构发布。

    此数据的主要来源之一是 https://www.epsg-registry.org 点击“按代码检索”和(例如)27200,然后查看“使用区域”字段。

    许多相同的信息在(例如)http://epsg.io/27200 处重复并寻找“界限”。

    如果你需要这些数据,我建议你做一个新表来收集它。

    【讨论】:

    • 谢谢你。如果不了解数据库中的这些界限,我想知道为什么我会收到有关限制的错误消息...使用外部表当然是可行的解决方案。如果没有人找到更简单的方法,我会将您的方法标记为已回答。
    猜你喜欢
    • 2018-10-25
    • 2015-12-25
    • 2015-07-27
    • 1970-01-01
    • 2021-06-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-06
    相关资源
    最近更新 更多