Cuadro delimitador para la tabla PostGIS

14

¿Existe una manera fácil de obtener el cuadro delimitador para una tabla completa en PostGIS?

    
pregunta Ulrik 23.09.2011 - 19:45

3 respuestas

22

ST_Extent debería hacer el truco.

  

ST_Extent: una función agregada que devuelve el cuadro delimitador que delimita filas de geometrías.

Aplicado de esta manera:

SELECT ST_Extent(the_geom) as table_extent FROM your_table;
    
respondido por el underdark 23.09.2011 - 20:39
9

Como @underdark post, st_extent hará el trabajo, pero tenga en cuenta que no devolverá una geometría. Si necesita un tipo de geometría, debe usar algo como

SELECT ST_SetSRID(ST_Extent(the_geom),THE_SRID) as table_extent FROM your_table;

También si lo que necesitas es obtener el cuadro delimitador de cada una de las filas, creo que puedes usar esta oración:

SELECT ST_SetSRID(ST_Extent(the_geom),THE_SRID) as table_extent FROM your_table GROUP BY gid;

Suponiendo que gid es la clave principal de la tabla

    
respondido por el Francisco Puga 24.09.2011 - 12:40
2

Otra posibilidad es usar la función ST_Envelope , que devuelve una geometría con SRID,

  

ST_Envelope: devuelve una geometría que representa el cuadro delimitador de   geometría suministrada

, junto con la función agregada ST_Union para obtener la unión de todas las geometrías (o la unión de sus respectivas envolturas) de la siguiente manera:

SELECT ST_Envelope(ST_Union(geom)) AS table_extent FROM your_table

o

SELECT ST_Envelope(ST_Union(ST_Envelope(geom))) AS table_extent FROM your_table

La segunda opción debería ser más rápida, ya que simplifica la operación de unión mediante el uso de envolturas de geometrías individuales.

vea Fuente .

    
respondido por el tinlyx 02.05.2017 - 07:36

Lea otras preguntas en las etiquetas