<html>
<head>
<meta content="text/html; charset=windows-1252"
http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
Muchas gracias Jorge!<br>
Voy a explorar tus ideas, suenan muy bien<br>
un saludo!<br>
Natalia<br>
<br>
<div class="moz-cite-prefix">El 16/09/2015 a las 04:07 a.m., Jorge
Tornero - Listas escribió:<br>
</div>
<blockquote cite="mid:55F91514.5020906@gmail.com" type="cite">
<meta content="text/html; charset=windows-1252"
http-equiv="Content-Type">
<div class="moz-cite-prefix">Buenos días, Natalia:<br>
<br>
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)<br>
<br>
La cosa es utilizar la fórmula directa de Vincenty para calcular
el punto final a partir del inicial, un rumbo y una distancia.<br>
<br>
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:<br>
<br>
<a moz-do-not-send="true" class="moz-txt-link-freetext"
href="https://gist.github.com/jtornero/9f3ddabc6a89f8292bb2">https://gist.github.com/jtornero/9f3ddabc6a89f8292bb2</a><br>
<br>
Sin perjuicio de que puedes obtener otra fuente (en javascript)
muy bien explicada en:<br>
<br>
<a moz-do-not-send="true" class="moz-txt-link-freetext"
href="http://www.movable-type.co.uk/scripts/latlong-vincenty.html">http://www.movable-type.co.uk/scripts/latlong-vincenty.html</a><br>
<br>
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<br>
<br>
Ahora la cosa sería elaborar un script python para:<br>
<br>
1) Cargar los datos csv (o cargar un shp con shapely, desde una
base de datos...)<br>
2) Crear una capa shp de puntos (modulo shapely, por ejemplo)<br>
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.<br>
<br>
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.<br>
<br>
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.<br>
<br>
Espero te vaya dando una idea<br>
<br>
Saludos <br>
<br>
<br>
Jorge Tornero<br>
<br>
<br>
<br>
El 16/09/15 a las 01:00, Schroeder Natalia escribió:<br>
</div>
<blockquote cite="mid:55F8A323.9000705@mendoza-conicet.gob.ar"
type="cite">
<meta http-equiv="content-type" content="text/html;
charset=windows-1252">
Hola,<br>
Mi consulta es la siguiente. <br>
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. <br>
¿Se entiende?<br>
Este es el esquema:<br>
<br>
<img shrinktofit="true"
src="cid:part3.02040206.05040506@mendoza-conicet.gob.ar"
alt=""><br>
<br>
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? <br>
¿Alguna idea para solucionar este problema?<br>
Desde ya muchas gracias<br>
Saludos<br>
Natalia
<pre class="moz-signature" cols="72">--
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
<a moz-do-not-send="true" class="moz-txt-link-freetext" href="http://personal.mendoza-conicet.gob.ar/natalias/">http://personal.mendoza-conicet.gob.ar/natalias/</a></pre>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<br>
<pre wrap="">_______________________________________________
QGIS-es mailing list
<a moz-do-not-send="true" class="moz-txt-link-abbreviated" href="mailto:QGIS-es@lists.osgeo.org">QGIS-es@lists.osgeo.org</a>
<a moz-do-not-send="true" class="moz-txt-link-freetext" href="http://lists.osgeo.org/cgi-bin/mailman/listinfo/qgis-es">http://lists.osgeo.org/cgi-bin/mailman/listinfo/qgis-es</a>
</pre>
</blockquote>
<br>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<br>
<pre wrap="">_______________________________________________
QGIS-es mailing list
<a class="moz-txt-link-abbreviated" href="mailto:QGIS-es@lists.osgeo.org">QGIS-es@lists.osgeo.org</a>
<a class="moz-txt-link-freetext" href="http://lists.osgeo.org/cgi-bin/mailman/listinfo/qgis-es">http://lists.osgeo.org/cgi-bin/mailman/listinfo/qgis-es</a>
</pre>
</blockquote>
<br>
<pre class="moz-signature" cols="72">--
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
<a class="moz-txt-link-freetext" href="http://personal.mendoza-conicet.gob.ar/natalias/">http://personal.mendoza-conicet.gob.ar/natalias/</a></pre>
</body>
</html>