0

在 MySql 数据库中,我有如下点(以双精度表示的纬度和经度对):

LATITUDE | LONGITUDE
---------|----------
45.045664| 46.084528
26.938933| 60.903848
       .....

现在,我需要的是从我的数据库中获取这些点(这根本不是问题)并以 WKT 格式回显它们(这部分我不知道)。这个 PHP 脚本将成为 Windows 应用程序使用的 API 的一部分。

所以问题是:如何将点转换为 WKT 格式?有没有我可以使用的插件?哪些是最好的方法?

提前致谢。

更新

输出应该看起来像 WKT 行,例如:

LINESTRING(3 4,10 50,20 25)
4

1 回答 1

1

Mysql 有自己的 GIS 转换函数,可以将存储在其内部几何数据类型中的数据转换为文本表示,例如 WKT。

具体来说,使用ST_AsWKT(g) 或 ST_AsText(g)函数将数据转换为 WKT 格式:

将内部几何格式的值转换为其 WKT 表示形式并返回字符串结果。

mysql> SET @g = 'LineString(1 1,2 2,3 3)'; mysql> SELECT
ST_AsText(ST_GeomFromText(@g));
+--------------------------------+ | ST_AsText(ST_GeomFromText(@g)) |
+--------------------------------+ | LINESTRING(1 1,2 2,3 3)        |
+--------------------------------+

ST_AsText()、ST_AsWKT()、AsText() 和 AsWKT() 是同义词。

于 2016-09-03T10:11:35.573 回答