Ottenere coordinate dalla geometria in PostGIS?


Risposte:



71

Utilizzare ST_AsText per visualizzare l'oggetto punto:

SELECT ST_AsText(the_geom) 
       FROM myTable;

Per visualizzare X , Y e l'oggetto geom:

SELECT ST_X(the_geom), ST_Y(the_geom), ST_AsText(the_geom) 
       FROM myTable;

3
Credo che ST_X e ST_Y funzioneranno solo con punti. Non funzionano con poligoni o linee.
Devdatta Tengshe,

hai ragione Devdatta. funziona solo per punti. ST_X: restituisce la coordinata X del punto o NULL se non disponibile. L'input deve essere un punto. ho aggiornato la mia risposta.
Aragona,

7
Per poligoni / linee, usast_x(st_centroid(the_geom))
Steve Bennett,

11

Con un tavolo in UTM

SELECT 
ST_X(table.geometry) AS X1, --point x
ST_Y(table.geometry) AS Y1, --point y
ST_X(ST_TRANSFORM(table.geometry,4674)) AS LONG, -- longitude point x SIRGAS 2000
ST_Y(ST_TRANSFORM(table.geometry,4674)) AS LAT, --latitude point y SIRGAS 2000
ST_ASTEXT(table.geometry) AS XY, --wkt point xy
ST_ASTEXT(ST_TRANSFORM(table.geometry,4674)) AS LongLat --using st_transform to get wkt with longitude and latitude (4674 is the SIRGAS 2000 SRC by south america)
FROM
table 

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.