|
Página 1 de 1
|
Calcular La Distancia Entre Dos Puntos Geográficos, De Los Que Se Conocen ...
Autor |
Mensaje |
vuott
Analista Programador
Registrado: Agosto 2013
Mensajes: 2086
Edad: 60 Ubicación:
|
Calcular La Distancia Entre Dos Puntos Geográficos, De Los Que Se Conocen Latitud Y Longitud
Hola hermanos,
os dejo esta pagina, que escribí, del WIKI del foro italiano, contenente dos maneras para calcular la distancia entre dos puntos geográficos, conociendo latitud y longitud:
http://www.gambas-it.org/wiki/index...e_e_longitudine
|
#1 Jueves, 01 Febrero 2018, 23:28 |
|
|
jguardon
Administrador
Registrado: Septiembre 2009
Mensajes: 2708
Edad: 57 Ubicación: Granada
|
Re: Calcular La Distancia Entre Dos Puntos Geográficos, De Los Que Se Conocen Latitud Y Longitud
+1
=================== Jesús Guardón
Por favor, usemos el corrector ortográfico antes de pulsar el botón "Enviar".
"uo ǝs ʇɐu pıɟıɔıן ɐdɹǝupǝɹ ɐ dɹoƃɹɐɯɐɹ, soןo ɥɐʎ bnǝ dɹodouǝɹsǝןo"
|
#2 Viernes, 02 Febrero 2018, 00:49 |
|
|
Grandamakulo
Analista Programador
Registrado: Enero 2016
Mensajes: 311
Edad: 55 Ubicación: En un lugar de La Mancha de cuyo nombre me acuerdo perfectamente...
|
Re: Calcular La Distancia Entre Dos Puntos Geográficos, De Los Que Se Conocen Latitud Y Longitud
Hola hermanos,
os dejo esta pagina, que escribí, del WIKI del foro italiano, contenente dos maneras para calcular la distancia entre dos puntos geográficos, conociendo latitud y longitud:
http://www.gambas-it.org/wiki/index...e_e_longitudine
¡¡Chuuuulo!!
Yo lo tengo hecho para distancias angulares entre objetos celestes a partir de las coordenadas equivalentes, ascensión recta y declinación.
|
#3 Viernes, 02 Febrero 2018, 08:47 |
|
|
vuott
Analista Programador
Registrado: Agosto 2013
Mensajes: 2086
Edad: 60 Ubicación:
|
Re: Calcular La Distancia Entre Dos Puntos Geográficos, De Los Que Se Conocen Latitud Y Longitud
Yo lo tengo hecho para......
Eh ! ..y donde está ?
|
#4 Viernes, 02 Febrero 2018, 08:54 |
|
|
Grandamakulo
Analista Programador
Registrado: Enero 2016
Mensajes: 311
Edad: 55 Ubicación: En un lugar de La Mancha de cuyo nombre me acuerdo perfectamente...
|
Re: Calcular La Distancia Entre Dos Puntos Geográficos, De Los Que Se Conocen Latitud Y Longitud
Yo lo tengo hecho para......
Eh ! ..y donde está ?
Lo busco...
|
#5 Viernes, 02 Febrero 2018, 10:24 |
|
|
Grandamakulo
Analista Programador
Registrado: Enero 2016
Mensajes: 311
Edad: 55 Ubicación: En un lugar de La Mancha de cuyo nombre me acuerdo perfectamente...
|
Re: Calcular La Distancia Entre Dos Puntos Geográficos, De Los Que Se Conocen Latitud Y Longitud
Bueno, me ha costado encontrarlo —y eso que hasta tenía el programa en una calculadora CASIO, sí, hombre, de éstas que se programaban en BASIC—, pero aquí está.
La función más directa que has empleado es matemáticamente perfecta, pero tiene el problema de que en los polos puede dar lugar a «cosas divertidas» como división por cero. Claro, que no creo que haya muchos de nosotros que vaya a alguno de los polos , por tanto, la función es completamente válida.
Pero con los astros es distinto, porque puedes necesitar conocer distancias cerca de los polos (p.e. galaxia Polarissima Borealis )
Para solucionar este asunto se puede recurrir a dos métodos. El primero consiste en pasar las coordenadas a cartesianas, considerando un radio arbitrario de la esfera celeste igual a uno, y después calcular el ángulo entre dos vectores. Esto funciona en cualquier condición.
Otro método lo sugiere Jean Meeus y consiste en emplear la antigua función trigonométrica « Verseno», o haversine en la lengua de la Pérfida Albión. Aunque tiene alguna dificultad en torno a los 180º, no es crítica y es mucho más sencillo de programar.
Private Function DistAng(Ar1 As Float, Dc1 As Float, Ar2 As Float, Dc2 As Float) As Float
' **** Cálculo de la distancia angular entre dos objetos celestes.
' <<<< Devuelve la distancia en radianes
' >>>>
' Ar1: Ascensión recta del primer objeto (rad)
' De1: Declinación del primer objeto (rad)
' Ar2: Ascensión recta del segundo objeto (rad)
' De2: Declinación del segundo objeto (rad)
Dim Pas As Float ' Variable de paso, hav(distancia)
Pas = hav(Dc1 - Dc2) + Cos(Dc1) * Cos(Dc2) * hav(Ar1 - Ar2)
Return 2 * ASin(Sqr(Pas))
End
Private Function hav(Ang As Float) As Float
' **** Antigua función trigonométrica Verseno o HAV.
' <<<< Devuelve HAV=(1- cos(ang))/2=sin²(Ang/2) (adimensional)
' >>>>
' Ang: Ángulo (rad)
Return (Sin(Ang / 2)) ^ 2
End
|
#6 Viernes, 02 Febrero 2018, 21:08 |
|
|
vuott
Analista Programador
Registrado: Agosto 2013
Mensajes: 2086
Edad: 60 Ubicación:
|
Re: Calcular La Distancia Entre Dos Puntos Geográficos, De Los Que Se Conocen Latitud Y Longitud
Muchas gracias, Grandamakulo.
|
#7 Sabado, 03 Febrero 2018, 02:17 |
|
|
tincho
Analista Programador
Registrado: Noviembre 2014
Mensajes: 2565
Edad: 48 Ubicación:
|
Re: Calcular La Distancia Entre Dos Puntos Geográficos, De Los Que Se Conocen Latitud Y Longitud
Muy interesante todo.
Gracias
|
#8 Sabado, 03 Febrero 2018, 19:42 |
|
|
Grandamakulo
Analista Programador
Registrado: Enero 2016
Mensajes: 311
Edad: 55 Ubicación: En un lugar de La Mancha de cuyo nombre me acuerdo perfectamente...
|
Re: Calcular La Distancia Entre Dos Puntos Geográficos, De Los Que Se Conocen Latitud Y Longitud
¡¡¡No me he podido aguantar!!!
Tenía que poner el método que me gusta, sí ése que tenía en la calculadora, un pelín más largo, pero mucho más robusto. Sólo que ni siquiera lo he probado .
Ahí queda:
|
#9 Sabado, 03 Febrero 2018, 20:34 |
|
|
|
Temas parecidos
Temas parecidos
|
Página 1 de 1
|
Usuarios navegando en este tema: 0 registrados, 0 ocultos y 1 invitado Usuarios registrados conectados: Ninguno
|
No puede crear mensajes No puede responder temas No puede editar sus mensajes No puede borrar sus mensajes No puede votar en encuestas No puede adjuntar archivos Puede descargar archivos No puede publicar eventos en el calendario
|
|
|
|
|