cablop.net – Software Tips

Tips de software, hardware… y algo más

Skip to: Content | Sidebar | Footer

Category: GIS

Obtener el SRID de un archivo .prj para usarlo en PostGIS

29 Agosto, 2009 (11:33) | PostGIS, PostgreSQL 8.3 | By: 天龙

Usualmente los archivos de shapes de GIS traen un archivo .prj adjunto. Este tiene la informacion de la proyeccción y otros datos. Lo abrimos con un editor de texto cualquiera, el contenido es similar al siguiente:
NAD_1983_StatePlane_Massachusetts_Mainland_FIPS_2001 and UNIT["Meter",1.0]
Luego en nuestra base de datos consultamos los SRIDs candidatos con una búsqueda como:
SELECT
srid, srtext, proj4text
FROM
spatial_ref_sys
WHERE
srtext ILIKE ‘%Massachusetts%’
De [...]

Actualizar el SRID en una columna de geometrías en PostGIS

29 Agosto, 2009 (11:28) | PostGIS, PostgreSQL 8.3 | By: 天龙

Hay que cambiar dos valores, el de la tabla geometry_columns y los de cada geometría para que sean acordes.
Esto lo conseguimos mediante estos sqls:
Para modificar los valores a nivel geometry_columns:
SELECT updategeometrysrid(’<tabla>’, ‘<columna_geometria>’, <nuevo_srid>);
Y este para modificar los valores internos:
SELECT setsrid(<columna_geometria>, <nuevo_srid>) FROM <tabla>;
Fuente: [postgis-users] changing srid

Error “column not found in geometry_columns table” al ejecutar “updategeometrySRID”

29 Agosto, 2009 (11:24) | PostGIS, PostgreSQL 8.3 | By: 天龙

Si al ejecutar algo como:
SELECT
updategeometrySRID(’<tabla>’, ‘<columna_geometria>’, <srid>);
obtenemos el siguiente error:
ERROR: column not found in geometry_columns table
CONTEXT: SQL statement “SELECT UpdateGeometrySRID(”,”, $1 , $2 , $3 )”
PL/pgSQL function “updategeometrysrid” line 4 at SQL statement
Este error se debe a que no tenemos resgitrada la columna en la tabla geometry_columns.
En la entrada anterior he citado como [...]

Agregar manualmente una columna de geometrías a geometry_columns en PostGIS

29 Agosto, 2009 (11:18) | PostGIS, PostgreSQL 8.3 | By: 天龙

Si ya hemos creado una columna para las geometrías en nuestra tabla pero la columna no está referida en la tabla geometry_columns debemos agregarla manualmente.
Esto lo logramos con el siguiente sql:
INSERT INTO
geometry_columns
(
f_table_catalog,
f_table_schema,
f_table_name,
f_geometry_column,
coord_dimension,
srid,
“type”
)
SELECT
”,
‘public’,
‘<tabla>’,
‘<columna_geom>’,
ST_CoordDim(<columna_geom>),
ST_SRID(<columna_geom>),
GeometryType(<columna_geom>)
FROM
public.<tabla>
LIMIT
1;

Fuente: “Manually Registering Geometry Columns in geometry_columns” en el manual de PostGIS

Mostrar uDig en otro idioma

29 Agosto, 2009 (11:14) | uDig | By: 天龙

Puede que sea interesante ver como un programa que uno instala abre en español, el idioma que uno habla. Pero en campos muy específicos de conocimiento (¿GIS, diseño gráfico, programación?) uno termina por acostumbrarse a los términos en inglés o el idioma original.
Entonces resulta más cómodo trabajar con la herramienta en inglés.
Para abrir uDig en [...]

pgAdminIII, PostGIS, PostgreSQL 8.x, SQL, template_postgis

29 Agosto, 2009 (11:07) | PostGIS, PostgreSQL 8.3, SQL, pgAdminIII | By: 天龙

Lo intenté, busque en la red, que le añadiera un sleep a la funcion antes del createdb… no, no lo añadí, ya era ir demasiado lejos… con el pgAdminIII… tampoco…
¿De que habló?
Al ejecutar el comando:
createdb -T template_postgis my_spatial_db
la base de datos no se crea y si usamos pgAdminIII nos devuelve el siguiente error:
database “template_postgis” is [...]

Instalar PostGIS en Ubuntu con PostgreSQL 8.3

29 Agosto, 2009 (11:01) | PostGIS, PostgreSQL 8.3, Ubuntu | By: 天龙

Esta instalación se realizó sobre Ubuntu 9.04 con PostgreSQL 8.3.
Instalación de PostGIS
Una vez instalado el PostgreSQL instalamos el PostGIS.
Nos vamos a sentir tentados a instalar el paquete postgis, pero este es un metapaquete que por alguna razón no nos instala el PostGIS.
El que debemos instalar es postgresql-8.3-postgis.
Por consola el comando es:
sudo apt-get install postgresql-8.3-postgis
Con eso [...]