Skip site navigation (1) Skip section navigation (2)

Re: Creacion de un campo geométrico

From: Miguel Rodríguez Penabad <penabad(at)gmail(dot)com>
To: Yosip Abraham Curiel Jiménez <snake77se(at)gmail(dot)com>
Cc: Lista de Ayuda PostgreSQL en español <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: Creacion de un campo geométrico
Date: 2007-09-21 08:13:36
Message-ID: 95335e4e0709210113p3e02e0e5t28031d43fe64502e@mail.gmail.com (view raw or flat)
Thread:
Lists: pgsql-es-ayuda
El 19/09/07, Yosip Abraham Curiel Jiménez <snake77se(at)gmail(dot)com> escribió:
> Hola a todos,
>
> tengo una duda y quiera su ayuda por favor,
>
> tengo una tabla normal y en ella tengo dos campos que son las coordenadas
> UTM de un punto para cada registro, quisiera generar desde ese par de
> coordenadas un campo geométrico de tipo punto para poderlo llamar desde un
> visualizador (GvSIG).

En primer lugar, supongo que tendrás instalado el paquete postgis. Por
cierto, que los desarrolladores (http://postgis.refractions.net/)
recomiendan usar el paquete que se puede descargar desde su página,
porque es más reciente que el que trae el postgres.

Tu tabla será algo similar a esto:
CREATE TABLE prueba(id serial primary key, punto1 real, punto2 real);
insert into prueba(punto1, punto2) values(1.23, 2.3),(12345.5,4321.3);

Bien: Para una tabla, el campo geométrico lo hay que crear con la
función AddGeometryColumn. Por ejemplo:

SELECT AddGeometryColumn('', 'prueba','punto',-1,'POINT',2);

Y ahora podrías actualizar el campo "punto" de la siguiente forma:
UPDATE prueba
   SET punto = GeomFromText( 'POINT(' || punto1 || ' ' || punto2 || ')' );

Y para ver mis resultados de prueba:
select id, punto1, punto2, AsTexT(punto) from prueba;

gid;punto1;punto2;AsText(punto)
1;1.23;2.3;"POINT(1.23 2.3)"
2;12345.5;4321.3;"POINT(12345.5 4321.3)"

Espero que te sirva. Saludos


-- 
Miguel Rodríguez Penabad

In response to

Responses

pgsql-es-ayuda by date

Next:From: Elton RamosDate: 2007-09-21 11:21:56
Subject: RES: Ayuda tuning PG 8.24
Previous:From: Jaime CasanovaDate: 2007-09-21 05:17:14
Subject: Re: borrar mi correo de esta lista

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group