2010-10-29 11 views
9

Tengo un método en una API que toma una coordenada lat/long y encontrará otras coordenadas dentro de una distancia especificada. Esa distancia es en radianes.Cálculo de distancia geoespacial con radianes

Todas las matemáticas que hago en estos días se refieren a la contabilidad o quizás a las coordenadas x, y para el diseño de los elementos de la IU, así que agradezco un poco de ayuda para validar estos números.

Permite ignorar a las personas en edificios (altitud) y el hecho de que el planeta no es perfectamente esférico. Entiendo que el método provisto está haciendo la fórmula de Haversine internamente, pero ese detalle está aislado de mí.

Busco en el formula for radians:

θ = s/r, donde θ es el subtendido ángulo en radianes, S es la longitud del arco, y r es el radio

Dada la convenient mean radius of the Earth de:

6371 km (≈3,959 mi)

he visto otros lugares diciendo (6378 kilometros)

Eso significa 1 radian en la Tierra es igual a 6.371 kilometros de longitud de arco. Eso significaría que el radián para encontrar las coordenadas 1 metro sería

(1/6371) × 10 -7
es decir - 1,56961231 × 10 -7 .

¿Es correcto? Si no, ¿dónde es incorrecto lo anterior?

+0

Creo que '(1/6371) × 10-7' es incorrecto, debería haber sido' (1/6371) × 10-3', o tal vez me estoy perdiendo algo? –

Respuesta

10

Es correcto. Aunque me da un poco de pena publicar esto como una respuesta :)

+0

En lo que respecta a la vergüenza, imagine que llego a un acuerdo con esta pregunta. Debería ser una matemática básica, pero tenía que asegurarme de que fuera lo correcto. Vi a uno de los autores decir que un radiante era como 70 millas y se confundió. – blu

+1

@blu Shame Sharing :) –

+0

@blu One radian IS one radius (es decir, 6371 Km) –

Cuestiones relacionadas