postgis with ruby​​ on rails查询multipolygon

时间:2012-12-02 16:16:37

标签: android json postgresql postgis arrays

如果我对我的postgis数据库进行查询以获取我的区域,我会为我的LatLon列返回以下内容:

SELECT id, ST_AsText(latlon) AS geom FROM district;

MULTIPOLYGON(((16.4747103091463 48.2753153528078,16.4744319731163 48.275314069121,16.4743511374383 48.2753128173411,16.4743147576862 48.2753108825757,16.474247514683 48.275304398381,16.474205201686 48.2753004022899)))

但是我应该如何在我的java安卓应用程序中使用它?

结构似乎不正确..因为如果我想开始使用它..我首先要删除括号,然后是“MULTIPOLYGON”。这似乎也不太舒服......

不应该更像下面这样吗?如果是,我怎样才能实现这种输出格式?

{ "type": "MultiPolygon",
  "coordinates": [
    [[[102.0, 2.0], [103.0, 2.0], [103.0, 3.0], [102.0, 3.0], [102.0, 2.0]]],
    [[[100.0, 0.0], [101.0, 0.0], [101.0, 1.0], [100.0, 1.0], [100.0, 0.0]],
     [[100.2, 0.2], [100.8, 0.2], [100.8, 0.8], [100.2, 0.8], [100.2, 0.2]]]
    ]
  }

1 个答案:

答案 0 :(得分:2)

ST_AsText转换为Well-known text,而ST_AsGeoJSON转换为GeoJSON。尝试:

SELECT id, ST_AsGeoJSON(latlon) AS geom FROM district;