Hola Polifemo
Supongo que la respuesta que donde dices que ya has encontrado la fórmula es.wikipedia.org/ ...e_Vincenty se refiere a mi comentario ¿no?
Mis conocimientos matemáticos no son muy amplios así que lo que veo casi me parece chino
De cualquier forma, muchas gracias
Enhorabuena Morta: la verdad es que aún no había tenido tiempo de ponerme con tu código.
¿Te has fijado que tienes la función dibujar_circulo() dentro de createMultiGeometry()?, ademas al estar return ring; fuera de la primera no se si te dará algún tipo de problema (creo que si pues ring está declarada como variable local y por lo tanto no debería llegar a la segunda función).
Que sepas (a modo de curiosidad) que para el calculo de las distancias aplica trigonometría esférica. Y probablemente la razón por la que en los primeros ejemplos los cículos parecían elipses sería que utilizaban trigonometría plana (o del espacio Euclídeo).
Una cosilla mas para que la tengas presente en un futuro. Las distancias que calculas van a ser bastante aproximadas, pero mantienen un error en tanto que aquí:
Code::
//convertimos el radio segun el elipsoide de referencia WGS 84 en.wikipedia.org/wiki/..._the_Earth
var d_radio = radio/6378137;
para calcular la distancia angular tomas el radio ecuatorial (el ideal sería el correspondiente a la latitud de tu trabajo).
El caso es que me ocurre una cosa curiosa. Si dibujo el circulo en las coordenadas 0,0 (como hacen en los ejemplos), aparece un circulo perfecto pero cuando las coordenadas se van aproximando hacia el norte o el sur, el circulo se va conviertiendo en un ovalo.
¿Alguien sabe por qué ocurre esto? y mejor aún ¿alguien sabe como solucionarlo?