¿Cómo recuperar las esquinas del cuadro delimitador de ST_Extent?

14

¿Hay alguna forma de obtener la latitud / longitud de las esquinas del cuadro delimitador que obtuvimos de ST_Extent?

select ST_Extent(geom) from tableName;
    
pregunta Vicky 24.09.2011 - 06:54

1 respuesta

24

ST_Extent devuelve una caja compuesta de xmin, ymin, xmax, ymax (coordenadas inferior izquierda, superior derecha):

osm=# select st_extent(way) from planet_osm_point;
                            st_extent                                
-------------------------------------------------------------------------
 BOX(2259828.73261444 5412478.55751597,3301031.7673783 6147766.43413396)

Para recuperar el punto correspondiente a la parte inferior izquierda, puede crear un punto compuesto por la coordenada X inferior izquierda (st_xmin) y la coordenada Y inferior izquierda (st_ymin), por ejemplo:

osm=# select st_astext(st_makepoint(st_xmin(st_extent(way)), st_ymin(st_extent(way)))) 
      from planet_osm_point;
            st_astext                 
------------------------------------------
 POINT(2259828.73261444 5412478.55751597)

Tenga en cuenta que dado que st_extent devuelve un cuadro delimitador, elimina el SRID de su geometría, por lo que puede desear agregarlo a su punto recién creado (estoy usando 900913 para coincidir con el SRID de mis datos OSM):

osm=# select st_asewkt(st_setsrid(st_makepoint(st_xmin(st_extent(way)), st_ymin(st_extent(way))), 900913)) 
      from planet_osm_point;
            st_astext                 
------------------------------------------
 SRID=900913;POINT(2259828.73261444 5412478.55751597)
    
respondido por el diciu 24.09.2011 - 08:36

Lea otras preguntas en las etiquetas