Distancia entre dos coordenadas usando C

C – Distancia entre dos coordenadas

Hoy te mostraré cómo calcular la distancia entre dos puntos del globo terráqueo a partir de las coordenadas de los mismos, usando el lenguaje de programación C. Por ejemplo, sabremos la distancia que hay entre dos ciudades o lugares usando solo sus coordenadas.

Al final tendremos un programa en C que nos dirá la distancia que hay entre dos puntos en línea recta, con el resultado en kilómetros que al final podremos convertir a otra unidad como metros o millas.

Por cierto, vamos a usar la fórmula del semiverseno, también conocida como Haversine.

Nota: esto es distinto a calcular la distancia entre dos puntos de un plano cartesiano, aquí vamos a calcular la distancia entre dos puntos geográficos, es decir, dos lugares del planeta Tierra.

(más…)

API para obtener ubicación

Hoy te mostraré cómo puedes obtener la ubicación de un usuario o visitante de tu sitio web a través de su IP, consumiendo una API para la geolocalización o ubicación a partir de la IP.

De este modo vas a poder conocer la ubicación del usuario (con latitud y longitud) sin solicitarle permisos extra, aunque quiero dejar claro que obtener la ubicación por IP es mucho menos precisa que obtenerla a través del GPS.

Si solo quieres una ubicación aproximada, esta API funcionará de maravilla y al final vas a tener las coordenadas de su ubicación.

(más…)

Acceder a la ubicación con JavaScript

Resumen: en este post vamos a ver cómo obtener la ubicación del usuario (coordenadas) usando JavaScript.

Gracias a este método podremos obtener la ubicación precisa de un teléfono, tableta o computadora, pues mientras se cuente con un navegador actualizado y GPS o internet se puede obtener la latitud y longitud de un dispositivo.

Para acceder a la ubicación con JavaScript vamos a usar navigator.geolocation y su método getCurrentPosition.

También vamos a manejar los permisos de acceso a la ubicación desde el navegador.

Puedes acceder a la demostración aquí, y al repositorio en GitHub aquí.

(más…)