Tengo una capa en ESPG 4326 y quiero reproyectarla a ESPG 3857. Estoy usando esta consulta SQL:
ALTER TABLE table
ALTER COLUMN geom TYPE geometry(Geometry, 3857)
USING ST_Transform(ST_SetSRID(geom, 4326), 3857)
;
Pero estoy recibiendo este error:
ERROR: transform: no se pudo proyectar el punto (271600 5.1817e+006 0): la latitud o la longitud superaron los límites (-14) Estado SQL: XX000
Leí en algún lugar que debería intercambiar la latitud y la longitud, pero cuando abro la capa en QGIS (desde la base de datos) con la proyección esperada (ESPG 3857) parece estar todo bien. No puedo exportar desde QGIS y volver a importar a PostGIS porque la capa es demasiado grande, por lo que necesito cambiar la proyección en PostGIS directamente.
¿Alguna sugerencia?
2 votos
Parece que tus puntos ya están en 3857, por lo que no necesitas transformarlos.
2 votos
Y si, por alguna razón, la columna especifica EPSG:4326, simplemente llame a
ALTER TABLE
conUSING ST_SetSRID(geom, 3857);
0 votos
@geozelot okey, ahora está en ejecución, está tardando un poco porque es una tabla grande, pero veamos si funciona.
0 votos
@IanTurton pero si miro la estructura SQL, la columna geom está en (geometry, 4326).
0 votos
Estoy haciendo esta reproyección porque necesito intersectar esta capa con otra. Lo que no entiendo es que ambas capas solo se superponen si una de ellas está en 3857 y la otra está en 4326. Si reproyecto ambas en 4326, no se superponen porque una de las dos no aparece donde debería :/ ¿alguna idea de por qué?
2 votos
Por lo general, no es recomendable ignorar el mensaje de error al planificar tu respuesta a ese mensaje. A pesar de los metadatos, al menos algunas de tus características no están en grados decimales. Necesitas identificar los sistemas de coordenadas correctos antes de realizar la superposición.