【问题标题】:Postgis geometry format manipulationPostgis 几何格式操作
【发布时间】:2020-02-11 11:03:29
【问题描述】:

您好,我有两个关于 postgis 几何格式的问题:

如何确定这种几何格式(ewkb、hexewkb ...)是什么?

"0101000020110F0000000000003087094100000080B6415741"

如何将 wkt 转换为 EWKB?

【问题讨论】:

    标签: postgresql postgis


    【解决方案1】:

    要检查几何是否有效(无论格式如何),您可以使用 ST_IsValid - 或 ST_IsValidReason 以防您想知道它失败的原因。

    SELECT ST_IsValid('0101000020110F0000000000003087094100000080B6415741');
     st_isvalid 
    ------------
     t
    (1 Zeile)
    

    如果出于某种原因您想测试几何是否以某种格式编码,请尝试 ST_GeomFrom* 函数并在失败时捕获错误消息,例如

    SELECT ST_GeomFromWKB('POINT(1 2)');
    FEHLER:  Invalid endian flag value encountered.
    
    
    SELECT ST_GeomFromText('POINT(1 2)');
                  st_geomfromtext               
    --------------------------------------------
     0101000000000000000000F03F0000000000000040
    (1 Zeile)
    

    要将其转换为EWKB,请尝试ST_AsEWKB

    SELECT ST_AsEWKB('0101000020110F0000000000003087094100000080B6415741');
                          st_asewkb                       
    ------------------------------------------------------
     \x0101000020110f0000000000003087094100000080b6415741
    (1 Zeile)
    

    延伸阅读:Convert geometry to various formats

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-05-04
      • 1970-01-01
      • 1970-01-01
      • 2017-03-04
      • 1970-01-01
      • 2020-01-28
      • 1970-01-01
      相关资源
      最近更新 更多