PostGIS中带有度和米的不同ST_Distance计算

问题描述

我注意到,有时几何类型的ST_distance结果与地理类型的结果不正确。 例如:

SELECT ST_distance('SRID=4326;MULTIpolyGON(((13.1654379639367 48.0163296656575,13.1654405823308 48.0163326202901,13.1654809135407 48.0163781648167,13.1655095556032 48.0164104945946,13.1656825124596 48.0166031792699,13.1658285825017 48.0167559797112,13.1658385904811 48.0167667179682,13.1660097634653 48.0169315381006,13.1661737540995 48.0170911295992,13.166336100685 48.0172329598378,13.1677079127931 48.0150783894135,13.1677278111466 48.0150450062427,13.1670716137939 48.0148839705059,13.1667911667995 48.0148062288149,13.1665512255895 48.0147411405409,13.1665145733757 48.0147311909654,13.1654379639367 48.0163296656575)))'::geometry,'SRID=4326;POINT(16.096346 47.2786129)'::geometry);

以度为单位返回3.0197908442784636。

但是,当计算相同形状的距离(以米为单位)时:

 SELECT ST_distance(gg1,gg2) from (select 'SRID=4326;MULTIpolyGON(((13.1654379639367 48.0163296656575,13.1654379639367 48.0163296656575)))'::geography as gg1,'SRID=4326;POINT(16.096346 47.2786129)'::geography as gg2) as foo;

它返回0米。这是不对的。通过查看wkt游乐场中的形状,距离确实远大于0米。

我可能做错了什么吗? 谢谢!

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...