【问题标题】:how to calculate the overlap area - postgis, postgres?如何计算重叠区域 - postgis,postgres?
【发布时间】:2018-06-05 15:32:23
【问题描述】:

如何计算重叠面积?

select ST_Area(ST_Overlaps(geometrya, geometryb)::geometry) from table_name;

错误消息无法将布尔类型转换为几何

【问题讨论】:

    标签: postgresql postgis overlap area


    【解决方案1】:

    ST_OVERLAPS 返回一个布尔值,指示几何图形是否相互重叠。要获取交叉点的几何形状,您可以使用ST_INTERSECTION

    select ST_Area(ST_INTERSECTION(geometrya, geometryb)) from table_name
     WHERE ST_Overlaps(geometrya, geometryb);
    

    【讨论】:

    • 但交集与重叠不同?
    • @user nyes... 如果一个几何体包含另一个几何体,则重叠为假。除此之外,公共区域是十字路口。查看更新的答案
    • 谢谢!但看起来我遇到了障碍,我的几何坐标采用 (x,y,0) 的形式,ST_area 给出非零值示例 - “2.6030917519796e-05”。
    • 看看ST_SnapToGrid 以避免这些微小的重叠/脱节
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-30
    • 2017-06-07
    • 1970-01-01
    • 2021-11-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多