Si, escribi a esa lista también, y recibi otras ideas tambien, además de
la de A Neuman
Voy a explorar y les cuento
Saludos y gracias por la ayuda!
Natalia
El 16/09/2015 a las 08:57 a.m., Jorge Tornero - Listas escribió:
Es en la línea de lo sugerido por A. Neumann en la otra lista (QGIS-users)
Ya nos cuentas la solución!!
Saludos, Jorge
El 16/09/15 a las 13:56, Schroeder Natalia escribió:
Muchas gracias Jorge!
Voy a explorar tus ideas, suenan muy bien
un saludo!
Natalia
El 16/09/2015 a las 04:07 a.m., Jorge Tornero - Listas escribió:
Buenos días, Natalia:
Se me ocurre una solución relativamente sencilla, aunque fuera de
QGIS (aunque desde luego, creo que sería relativamente fácil y
sencillo hacerlo a través de la consola python, que los expertos hablen)
La cosa es utilizar la fórmula directa de Vincenty para calcular el
punto final a partir del inicial, un rumbo y una distancia.
Una implementación en Python de esa fórmula de Vincenty la tomé
prestada en su momento para hacer el plugin Transectizer. Puedes
tomarla del plugin (función vinc_pt del archivo transectizer.py), o
del sitio original del código (hay un enlace en mi código). Yo he
puesto una versión 'lista para usar' de la función en un gist:
https://gist.github.com/jtornero/9f3ddabc6a89f8292bb2
Sin perjuicio de que puedes obtener otra fuente (en javascript) muy
bien explicada en:
http://www.movable-type.co.uk/scripts/latlong-vincenty.html
Lo primero te guardas tus puntos en un csv con: Lat_origen,
lon_origen, rumbo_destino, distancia_destino (OJO, Vincenty asume
coordenadas en lat/lon y es preciso que te asegures de usar valores
de radio de elipsoide y achatamiento apropiados) Y que el uso de
Vincenty es apropiado para tu aplicación, en esto otra gente de la
lista podría ayudar
Ahora la cosa sería elaborar un script python para:
1) Cargar los datos csv (o cargar un shp con shapely, desde una base
de datos...)
2) Crear una capa shp de puntos (modulo shapely, por ejemplo)
3) para cada punto de tu csv, obtener las nuevas coordenadas del
punto de destino usando la función vinc_pt y añadirlo como nuevo
punto a la capa que has creado.
Estoy seguro que estos 3 pasos se pueden hacer desde la consola de
python de QGIS sin mayor problema, tomando directamente los puntos
desde tu capa.
Y todo esto sin prejuicio de que, si las distancias que vas a mover
los puntos son pequeñas y tus requerimientos lo permiten, lo mismo
puedes olvidarte de Vincenty y echar mano de cálculos sencillos y
listo. También puedes mirar dentro del código del plugin 'Azimuth
and distance' y ver qué funciones usa para hacer los cálculos y
tratar de aprovechar ese código para el cálculo de la posición final.
Espero te vaya dando una idea
Saludos
Jorge Tornero
El 16/09/15 a las 01:00, Schroeder Natalia escribió:
Hola,
Mi consulta es la siguiente.
Necesito re-posicionar puntos en un mapa, es decir, para cada punto
tengo la distancia desde la posición inicial hacia la nueva
posición final (una linea) y el ángulo al Norte (Azimuth) de esa
linea, y lo que quiero es conocer las coordenadas X e Y de esa
nueva posición, para poder llevar ese punto a su nueva posición. Y
son muchos puntos (mas de 1000) como para hacerlo manualmente.
¿Se entiende?
Este es el esquema:
Según entiendo la herramienta Azimuth and Distance va 'dibujando'
puntos partiendo de azimuths and distances, pero guiándose por el
punto inmediatamente anterior como referencia. Y no me sirve,
porque yo necesito que me tome los puntos intependientemente, no en
relación al inmediatamente anterior, porque mis puntos son
observaciones independientes. ¿Es así o estoy entendiendo mal la
herramienta?
¿Alguna idea para solucionar este problema?
Desde ya muchas gracias
Saludos
Natalia
--
Natalia M. Schroeder
Laboratorio de Interacciones Ecológicas (LIE)
Instituto Argentino de Investigaciones de las Zonas Áridas (IADIZA), CONICET
CC 507, CP 5500, Mendoza, Argentina.
TE: +54-261-5244166
http://personal.mendoza-conicet.gob.ar/natalias/
_______________________________________________
QGIS-es mailing list
[email protected]
http://lists.osgeo.org/cgi-bin/mailman/listinfo/qgis-es
_______________________________________________
QGIS-es mailing list
[email protected]
http://lists.osgeo.org/cgi-bin/mailman/listinfo/qgis-es
--
Natalia M. Schroeder
Laboratorio de Interacciones Ecológicas (LIE)
Instituto Argentino de Investigaciones de las Zonas Áridas (IADIZA), CONICET
CC 507, CP 5500, Mendoza, Argentina.
TE: +54-261-5244166
http://personal.mendoza-conicet.gob.ar/natalias/
_______________________________________________
QGIS-es mailing list
[email protected]
http://lists.osgeo.org/cgi-bin/mailman/listinfo/qgis-es
_______________________________________________
QGIS-es mailing list
[email protected]
http://lists.osgeo.org/cgi-bin/mailman/listinfo/qgis-es
--
Natalia M. Schroeder
Laboratorio de Interacciones Ecológicas (LIE)
Instituto Argentino de Investigaciones de las Zonas Áridas (IADIZA), CONICET
CC 507, CP 5500, Mendoza, Argentina.
TE: +54-261-5244166
http://personal.mendoza-conicet.gob.ar/natalias/
_______________________________________________
QGIS-es mailing list
[email protected]
http://lists.osgeo.org/cgi-bin/mailman/listinfo/qgis-es