13 votos

Conversión de geometría de 3 dimensiones a 2 dimensiones

Tengo una tabla de puntos en la que la columna de geometría contiene valores de 3 dimensiones y de 2 dimensiones.Quiero convertir esta geometría de 3 dimensiones a 2 dimensiones.¿Existe alguna función en PostGIS? Por favor, ayúdenme a resolver este problema.

Saludos Sreesha.T.A

0 votos

Me gustaría utilizar ST_Force2D pero dice: function st_force2d(geometry) does not exist ¿Tienes alguna idea? Gracias, Laszlo

18voto

Michael Barker Puntos 8234

http://postgis.net/docs/manual-2.0/ST_Force_2D.html

SELECT ST_Force_2D(the_geom) FROM...

Actualizar la tabla existente

ALTER TABLE your_geo_table ADD geom2d geometry;
UPDATE your_geo_table SET geom2d = ST_Force_2D(the_geom);

Ver también http://postgis.net/docs/

2 votos

Utilice ST_Force2D en lugar de ST_Force_2d . ST_Force_2d fue obsoleta en la versión 2.1.0.

13voto

bob-the-destroyer Puntos 138

Si no quieres añadir una nueva columna también puedes hacer lo siguiente:

ALTER TABLE your_geo_table  
  ALTER COLUMN geom TYPE geometry(YOUR_GEOM_TYPE, YOUR_EPSG) 
    USING ST_Force_2D(geom);

Por ejemplo:

ALTER TABLE your_geo_table  
  ALTER COLUMN geom TYPE geometry(MULTILINESTRING, 4326) 
    USING ST_Force_2D(geom);

0 votos

He probado esta sugerencia en una base de datos que tengo (en mi caso tenía un problema similar pero quería forzar que los puntos fueran 3D), pero me da este error: ERROR: function st_force_3d(geography) does not exist LINE 3: USING ST_Force_3D(geom); ^ HINT: No function matches the given name and argument types. Es posible que tengas que añadir una conversión de tipos explícita. ********** Error ********** ERROR: la función st_force_3d(geom) no existe Estado SQL: 42883 Sugerencia: Ninguna función coincide con el nombre y los tipos de argumentos dados. Es posible que tengas que añadir un reparto de tipos explícito. Carácter: 89

0 votos

Supongo que es porque ST_Force3D trabaja con el tipo de geometría y no con el tipo de geografía.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X