Saltar al contenido

Insertar centroides de polígonos en una columna adicional en PostGIS

Hola usuario de nuestro sitio, encontramos la respuesta a tu pregunta, deslízate y la hallarás a continuación.

Solución:

Si quieres columnas x e y:

ALTER TABLE "test_table" ADD x double precision;
ALTER TABLE "test_table" ADD y double precision;
UPDATE "test_table" SET x = ST_X(ST_Centroid(the_geom));
UPDATE "test_table" SET y = ST_Y(ST_Centroid(the_geom));

Si prefiere una columna de geometría (ajuste el nombre del esquema y CRS para que se ajuste a sus necesidades):

SELECT AddGeometryColumn ('test_schema','test_table','centroid_geom',4326,'POINT',2);
UPDATE "test_table" SET centroid_geom = ST_Centroid(the_geom);

Debe utilizar la función ST_X.

Suponiendo que desea llenar una columna de una tabla que ya tiene una columna de geometría con la coordenada x del centroide, puede usar algo como:

UPDATE test_table
SET x = ST_X(ST_Centroid(the_geom));

Si necesita algo diferente, publique la estructura completa de la tabla si necesita ayuda más precisa.

Es una Geometría (un Punto de hecho). Lo que está viendo es la representación de texto del punto como Binario conocido (WKB) para fines de depuración, probablemente desee texto conocido (WKT) (consulte https://postgis.net/docs/using_postgis_dbmanagement.html#OpenGISWKBWKT) ,

select
  ST_AsText(ST_Centroid(a.the_geom) )
FROM 
  "test_table" AS a

Mostrará lo que quieres ver.

Para hacer la suma, necesita una columna de geometría en lugar de un doble. Para esto, debe usar addGeometryColumn, que maneja toda la contabilidad necesaria para usted (cosas como agregar la columna a los metadatos de las columnas de geometría, etc.).

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *