Re: consulta sobre postgis para encontrar un punto concreto

From: josego <josego(at)simgia(dot)com>
To: Mario Sileone <msileone(at)gmail(dot)com>
Cc: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: consulta sobre postgis para encontrar un punto concreto
Date: 2011-08-25 17:55:17
Message-ID: 4E568C85.10702@simgia.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

El 25/08/11 10:48, Mario Sileone escribió:
> El 25/08/2011 11:33, josego escribió:
>> Hola a todos.
>> Tengo una base de datos espacial. En una tabla tengo el nombre de calle,
>> la geometría y su numero de inicio y su fin.
>> Ejemplo la calle SICILIA tiene una geomertia con un numero de inicio 100
>> hasta 200.
>>
>> En la tabla existen nueve filas sobre la calle SICILIA con su geometría
>> especifica pero con números diferentes. Osea cada cien números. Lo que
>> quisiera hacer una consulta que si yo introduzco un numero a la calle
>> SICILIA por ejemplo 150 me ubique mas o menos en ese punto.
>>
>> *Lo que hice es esta sentencia -->
>> SELECT
>> X(startPoint(calle.the_geom)) as coordenada_inicio_X,
>> Y(startPoint(calle.the_geom)) as coordenada_inicio_Y,
>> calle.gid
>> FROM
>> calles_polyline AS calle
>> WHERE
>> calle.calle = 'SICILIA' and ((calle.desde <= 100) and (calle.hasta >=
>> 199));*
>>
>>
>> Pero me coloca el punto inicial que comienza la calle con su numero. Yo
>> quisiera que me coloque el punto exacto. como podría hacer??.
>>
>> muchas gracias, jose
>
> Mira: hay un par de funciones muy interesantes para lo que estás
> buscando.
>
> una de ellas y la que más puede resultarte es
> ST_Line_Interpolate_Point(geometría, posicion), que toma el largo de
> la geometría como una razón de 0 a 1, y si le pasas en posición el
> parámetro 0,5 te devolverá un punto en la mitad de la geometría.
>
> Si esto lo pasas a una diferencia entre la altura final y la inicial,
> sabiendo que tu geometría tiene una razón entre 0 y 1, creo que tienes
> la solución.
>
> Saludos.
>
>
Muchas gracias.. Estuve viendo la función y creo que me va ayudar lo que
necesito. Ahora el problema que tengo que el tipo de dato es un
multilinestring y no un linestring. No se como podría resolver eso. Si
alguien tiene alguna idea. Estoy buscando y no encuentro anda..
desde ya muchas gracias
saludos, jose

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message manuel antonio ochoa 2011-08-25 18:10:46 Regresa el Numero de filas afectadas en un funcion
Previous Message Roberto Andrade Fonseca 2011-08-25 15:44:41 Re: [pgsql-es-ayuda] "Estoy creando un sistema operativo (libre), sólo por hobby"