You are here:GeoTux»Geo-Foros»PostgreSQL/PostGIS

Estadísticas

Invitados: 101
Usuarios registrados: 3236
Usuarios en línea:
-
Registrados hoy:
-

Registro

Redifusión (RSS)

Blogs y Noticias:
Recibe las actualizaciones en Geo-Noticias y Geo-Blogs

Recibir por e-mail
Recibir Geo-Noticias y Geo-Blogs por e-mail

¿Qué es esto?

Welcome, Guest
Username Password: Remember me
  • Page:
  • 1
  • 2

TOPIC: PostgreSQL/PostGIS

Re: PostgreSQL/PostGIS 19 Mar 2012 18:23 #720

  • eflorezs
  • OFFLINE
  • Aparecid@
  • Posts: 2
  • Karma: 0
gracias viejo me sirvio el procedure, lo que pasa es que estaba bastante confundido pero ya estoy empenzando a entender el postgis. le cambie el 4326 por el 3116 de colombia porque en algunos casos me devuelve un punto que no es el mas cercano, ademas de esto despues de crear la base de datos con la plantilla template_postgis elimine las 2 tablas que crea por defecto. sera ese el problema? debo dejar esas tablas aparte de las que yo cree o las puedo eliminar?

gracias de nuevo por la colaboracion

Re: PostgreSQL/PostGIS 19 Mar 2012 21:49 #721

  • tuxman
  • OFFLINE
  • Vive aquí
  • Posts: 285
  • Karma: 6
Seguro, las dos tablas que mencionas son tablas de metadatos, importantes no solo para PostGIS mismo sino para que aplicaciones SIG conozcan fácilmente cuáles son las tablas con datos espaciales en una Base de Datos. Así que no debes borrarlas.

Si las tablas por defecto te estorban (por decirlo así) puedes organizar tus tablas espaciales en esquemas (schemas) que vienen siendo como carpetas para una BD de PostgreSQL, excepto porque los esquemas no pueden anidarse, es decir, un esquema no puede estar dentro de un esquema como si pueden las carpetas en un sistema operativo.

Re: PostgreSQL/PostGIS 23 Mar 2012 10:54 #722

  • tuxman
  • OFFLINE
  • Vive aquí
  • Posts: 285
  • Karma: 6
Por cierto, en la sección Geo-Descargas podrás encontrar documentación sobre PostGIS, por ejemplo en [1] tienes un tutorial que te guía en la creación de bases de datos espaciales y de operaciones espaciales sobre los datos.

[1] geotux.tuxfamily.org/index.php/es/geo-de...al-de-9im-en-postgis
The following user(s) said Thank You: cgamboass

Re: PostgreSQL/PostGIS 31 May 2012 05:40 #756

  • cgamboass
  • OFFLINE
  • Aparecid@
  • Posts: 1
  • Karma: 0
Hola tuxman.

El aporte pasado me ayudo a resolver un problema que tenia de excelente manera.

Ahora me surgue una pregunta. Puedo colocar ese codigo (de abajo) en una funcion o procedimiento almacenado que en lugar de 7.6287 51.95308 los reciba por variable???

---------------------------
SELECT gid, ST_Distance_Spheroid(
ST_GeomFromText('POINT(7.6287 51.95308)',4326),
ST_GeomFromText('POINT(' || longitud || ' ' || latitud || ')',4326),
'SPHEROID["WGS 84",6378137,298.257223563]') AS distancia
FROM mi_tabla
ORDER BY distancia ASC
LIMIT 1;
---------------------------

Probando con el siguiente codigo pero genera un error:


create or replace function optener_parada_cercana(lon varchar(30), lat varchar(30))
returns table(longitud double precision, latitud double precision, nombre varchar(30))
as $$

SELECT longitud, latitud, ST_Distance_Spheroid(
ST_GeomFromText('POINT('|| lon ||' '|| lat ||')',4326),
ST_GeomFromText('POINT(' || longitud || ' ' || latitud || ')',4326),
'SPHEROID["WGS 84",6378137,298.257223563]') AS distancia
FROM paradas
ORDER BY distancia ASC
LIMIT 3;
$$

LANGUAGE SQL;

y este es el error que se genera:

ERROR: no existe la columna «lon»
LINE 11: ST_GeomFromText('POINT('|| lon ||' '|| lat ||')',4326),
^

********** Error **********

ERROR: no existe la columna «lon»
Estado SQL:42703
Caracter: 400

Gracias..!!!

Re: PostgreSQL/PostGIS 03 Jun 2012 22:51 #761

  • tuxman
  • OFFLINE
  • Vive aquí
  • Posts: 285
  • Karma: 6
Hola cgamboass,

prueba la siguiente función:

CREATE OR REPLACE FUNCTION obtener_parada_cercana(longitude double precision, latitude double precision, OUT gid integer, OUT distancia double precision) RETURNS SETOF record
AS $$
BEGIN
RETURN query SELECT t.gid, ST_Distance_Spheroid(
ST_GeomFromText('POINT(' || longitude || ' ' || latitude || ')',4326),
ST_GeomFromText('POINT(' || t.longitud || ' ' || t.latitud || ')',4326),
'SPHEROID["WGS 84",6378137,298.257223563]') AS distancia
FROM my_table t
ORDER BY distancia ASC
LIMIT 3;
END;
$$
LANGUAGE plpgsql;
 
ALTER FUNCTION public.obtener_parada_cercana(longitude double precision, latitude double precision, OUT gid integer, OUT distancia double precision) OWNER TO postgres;



Saludos,

Tuxman

Re: PostgreSQL/PostGIS 12 Nov 2012 22:52 #840

  • jaime86
  • OFFLINE
  • Visitante casual
  • Posts: 5
  • Karma: 0
hola buenas tardes disculpen pero alguien me podria ayudar como puedo asignarle el srid a una tabla geografica.... gracias...

Re: PostgreSQL/PostGIS 12 Nov 2012 23:18 #841

  • tuxman
  • OFFLINE
  • Vive aquí
  • Posts: 285
  • Karma: 6
Creo que para eso puedes usar la función UpdateGeometrySRID:

http://postgis.refractions.net/docs/UpdateGeometrySRID.html

Nota: Si te refieres a una tabla con geometrías del tipo "Geography" de PostGIS, estas solamente soportan el SRID 4326 (WGS84).
Last Edit: 12 Nov 2012 23:25 by tuxman.
  • Page:
  • 1
  • 2
Time to create page: 0.57 seconds
 

¿Dónde nos leen?

Usuario aleatorio

Últimos Geo-Foros

No posts to display.

Últimos comentarios