Cómo configurar y saber que proyección tienen las tablas en postgis

Solo disponible en BuenasTareas
  • Páginas : 6 (1293 palabras )
  • Descarga(s) : 0
  • Publicado : 3 de septiembre de 2012
Leer documento completo
Vista previa del texto
¿Cómo configurar y saber que proyección tienen las tablas en PostGis?
En esta oportunidad hablaremos como saber que proyección tienen las tablas que están en PostGis y como configurarlas ya que son necesarias para ciertas funciones de transformación u operaciones geométricas que puede hacer esta herramienta. Pero antes hablaremos de unas tablas que son importantes para el funcionamiento de estasoperaciones. Estas tablas son “spatial_ref_sys” y “geometry_columns”, estas tablas por lo general se crean por defecto cuando creamos una nueva base de datos.

En la tabla “spatial_ref_sys”veremos las proyecciones soportadas por el PostGis. Y tiene estas columnas:
SRID: código único que está asociado a una única proyección en PostGis.
AUTH_NAME: aparece el nombre de la fuente de estos códigosque es EPSG que son las siglas de European Petroleum Survey Group (http://www.epsg.org/).
AUTH_SRID: son los códigos ideados por las organizaciones que están en la columna AUTH_NAME y en todos los casos son de la EPSG.
SRTEXT: parámetros de la proyección asociados a los códigos de las columnas SRID y AUTH_SRID.
PROJ4TEXT: parámetros de la proyección según el PROJ4
Quizá para nuestro ejemploel más útil será el SRID y el SRTEXT ya que es un código único y nombre de la proyección la cual estará proyectada nuestra tabla
Para el caso de Perú, tenemos estas proyecciones que usamos:
srid | auth_name | auth_srid | Proyección Geográfica / UTM |
4326 | EPSG | 4326 | Geográficas WGS 84 |
4248 | EPSG | 4248 | Geográficas PSAD 56 |
24877 | EPSG | 24877 | PSAD 56 Zona 17 S |
24878 |EPSG | 24878 | PSAD 56 Zona 18 S |
24879 | EPSG | 24879 | PSAD 56 Zona 19 S |
32717 | EPSG | 32717 | WGS 84 Zona 17 S |
32718 | EPSG | 32718 | WGS 84 Zona 18 S |
32719 | EPSG | 32719 | WGS 84 Zona 19 S |
En la tabla “geometry_columns” Veremos los nombres de las tablas, las proyecciones y el tipo de geometría que tienen, y está compuesta por 8 columnas de las cuales las más importantes paraeste momento son:
F_TABLE_NAME: nombre de una tabla que está en la base de datos de PostGis.
F_GEOMETRY_COLUMN: nombre de la columna que están contenidas las geometrías de la tabla.
SRID: código de proyección que está en la tabla “spatial_ref_sys”.
Recuérdese que estas tablas siempre deben estar presentes en las bases de datos que tengamos en el PostGis.
Ahora veremos 3 casos que nos podríamosencontrar al tratar de configurar y saber que proyección tienen las tablas en PostGis:
A) Cuando recién estoy por importar un archivo shp al Postgis:
El PostGis no lee los archivos prj asociados a los archivos shp, así que debemos de darle la proyección que se encuentran para que la tabla que será creada a partir de este shp herede su proyección. Si por ejemplo si queremos llevar el shape“aeródromos.shp” y si queremos que la tabla que crearemos con el nombre “OPCION_01” este con la proyección PSAD56 / Zona 18S, lo haremos de esta manera:

Para comprobar que tiene una proyección veremos que en la tabla “geometry_columns” se encuentre el nombre de la tabla que acabamos de importar con el código SRID de la proyección que le corresponde. Otra forma es hacer click derecho sobre la tablacreada y vamos a propiedades y luego aparecerá la ventana de las propiedades y vamos a la pestaña de “Constraints”, aparecerán 2 columnas, en la columna “Constraint_name” buscamos la entrada “enforce_srid_the_geom”y en la otra columna que dice “Definition” debe estar algo como “st_srid(the_geom) = 24878” donde 24878 la proyección PSAD56 / Zona 18S para es el código SRID de la proyección de la tabla“OPCION _01”.

Otra forma es poner esta sentencia en el SQL:
Select st_SRID(the_geom) from “OPCION_1”
Donde nos mostrara en el “Output pane” un mensaje que nos mostrara el 24878 para cada geometría de la columna the_geom.

B) Ya tengo una tabla en PostGis y tiene como proyección -1, ¿cómo configuro su proyección?
Para este caso, primero, verificamos la proyección que tiene esta tabla,...
tracking img