Autor
|
Tema: Dirección entre dos puntos (Latitud-Longitud) (Leído 12,498 veces)
|
Shell Root
|
Es posible saber la dirección de un trayecto si tengo la Lat-Lon inicial y la final... Por ejemplo si tengo PI=Punto Inicial; PF= Punto Final.
PI ----> PF ó PF <---- PI o Quizás diagonal.
No se donde poner esto, así que lo pongo en programación general.
|
|
|
En línea
|
Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.
|
|
|
_Enko
|
Sabiendo coordenadas inicial (x1, y1) y la coordenadas finales (x2, y2) podrias calcular el Vector Direccion
dx=x2-x1; dy=y2 - y1;
teniendo el vector direccion dx:dy (ojo, no son coordenadas, es la direccion)
Puedes calcular el angulo angle=atan2(dy, dx)
y si lo quieres en radianes angled= atan2 (y,x) * 180 / PI;
|
|
|
En línea
|
|
|
|
Shell Root
|
Bueno, lo entiendo, aunque lo estaba haciendo alrevez :/, podríamos darme un ejemplo para graficar el angulo? Supongo que sería algo así, | 180 | 90 ------------- 270 | 360 |
|
|
« Última modificación: 28 Junio 2011, 21:06 pm por Shell Root »
|
En línea
|
Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.
|
|
|
_Enko
|
No te entiendo.... te refieres como una manecilla de reloj?
x1= 0; y1 = 0; angulo = 90 Distancia = 10 anguloRadianes = angulo * Pi / 180; x2 = sin(anguloRadianes) * Distancia; y2 = cos(anguloRadianes) * Distancia. Linea(x1,y1, x2, y2)
|
|
|
En línea
|
|
|
|
Shell Root
|
A lo que me refiero es que necesito saber si la dirección de las 2 posiciones, es de izq a der, o der a izq, etc... Supongo que el angulo debería ser entre los 360° Esta dirección es más que todo para poder mostrar una imagen de una fecha, y son 4 posibles imagenes, que son estás... 1. ---> "Izq-Der"
2. <--- "Der-Izq"
3. - - -> "Diagonal Izq-Der"
4. - "Diagonal Der-Izq" - <-
|
|
« Última modificación: 29 Junio 2011, 02:30 am por Shell Root »
|
En línea
|
Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.
|
|
|
criskapunk
Desconectado
Mensajes: 277
|
No estoy seguro, pero podrias hacer algo asi. PI = (xi; yi) PF = (xf; yf) PFPI = PF - PI = (xf - xi; yf - xi). Y a partir de los valores que te de: Si (xf - xi) es positivo e (yf - xi) es positivo = 1º cuadrante. Si (xf - xi) es negativo e (yf - xi) es positivo = 2º cuadrante. Si (xf - xi) es negativo e (yf - xi) es negativo = 3º cuadrante. Si (xf - xi) es positivo e (yf - xi) es negativo = 4º cuadrante. Si alguno de los valores da 0, te toca calcular si esta a 0, 90, 180 o 270 grados. Un saludo
|
|
|
En línea
|
|
|
|
Shell Root
|
Yo lo tenia así, pero no me funciona en algunos casos... :/ resLat = inicio[0] - fin[0]; resLon = inicio[1] - fin[1]; if( (resLat < 0) && ( resLon < 0) ){ return "--->"; }else if( (resLat > 0) && ( resLon < 0) ){ return "Diag-->"; }else if( (resLat < 0) && ( resLon > 0) ){ return "<--Diag"; }else if( (resLat > 0) && ( resLon > 0) ){ return "<---"; }
|
|
|
En línea
|
Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.
|
|
|
criskapunk
Desconectado
Mensajes: 277
|
Esto... resLat = inicio[0] - fin[0]; resLon = inicio[1] - fin[1];
No seria asi? resLat = fin[0] - inicio[0]; resLon = fin[1] - inicio[1];
|
|
|
En línea
|
|
|
|
Shell Root
|
.., aunque lo estaba haciendo alrevez :/,
|
|
|
En línea
|
Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.
|
|
|
criskapunk
Desconectado
Mensajes: 277
|
En que casos no te funciona?
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Calcular kilometros en latitud y longitud xD
Foro Libre
|
Kase
|
3
|
4,679
|
3 Agosto 2011, 23:42 pm
por raul338
|
|
|
latitud y longitud de ip del usario?
Desarrollo Web
|
Kase
|
4
|
4,557
|
20 Agosto 2012, 05:41 am
por Graphixx
|
|
|
Duda con Algoritmo para ver todos los caminos de longitud r entre cada ...
Programación General
|
peterk07
|
1
|
2,187
|
6 Julio 2014, 06:32 am
por El Benjo
|
|
|
[C] Obtener valores decimales en un programa de distancia entre dos puntos
Programación C/C++
|
pinecore
|
6
|
3,148
|
10 Diciembre 2016, 08:32 am
por pinecore
|
|
|
Programa calculo de distancia y pendiente entre dos puntos
Programación C/C++
|
Davorso
|
0
|
2,216
|
2 Octubre 2019, 19:52 pm
por Davorso
|
|