Buenos días.Añadir kilómetros a un punto del mapa
Me gustaría saber cómo agrego kilómetros a un punto del mapa (latitud/longitud).
Por ejemplo: La ciudad de Jaraguá do Sul se encuentra en latitud -26.462049, longitud -49.059448. Quiero agregar 100 kilómetros arriba, abajo y a los lados. Quiero hacer un cuadrado y obtener los nuevos puntos.
¿Cómo puedo hacer eso?
lo probé:
<?php
$distance = 100;
$earthRadius = 6371;
$lat1 = -26.4853239150483;
$lon1 = -49.075927734375;
$bearing = 0;
$lat2 = asin(sin($lat1) * cos($distance/$earthRadius) + cos($lat1) * sin($distance/$earthRadius) * cos($bearing));
$lon2 = $lon1 + atan2(sin($bearing) * sin($distance/$earthRadius) * cos($lat1), cos($distance/$earthRadius) - sin($lat1) * sin($lat2));
echo 'LAT: ' . $lat2 . '<br >';
echo 'LNG: ' . $lon2;
?>
pero es regresar cordinates equivocadas. ¡Gracias!
Muchas gracias.
Las 2 respuestas hasta ahora son el enfoque general. Pero si la precisión no es crítica, Y si el área geográfica de interés es limitada, específicamente dentro de una banda de latitud estrecha, entonces puede cambiar estas funciones. No podría proporcionar detalles de "qué ancho tiene una banda" y "cuánta imprecisión". Por otra parte, si el alcance geográfico es limitado, puede hacer una tabla de búsqueda :-) – Smandoli
Si especifica más acerca de su aplicación, objetivos finales o herramientas de trabajo, puede obtener noticias sobre una solución específica (por ejemplo, CoreLocation para iPhone) – Smandoli
Estoy creando una aplicación PHP y tengo una tabla de base de datos (ciudades) con cada ciudad en mi estado (Santa Catarina). En esta tabla, tengo campos de latitud/longitud. El usuario ingresa a la ciudad y necesito crear un cuadrado imaginario de 100km para encontrar empresas cerca de él. Disculpa mi inglés y disculpa por la falta de información. ¡Gracias chicos! – proveyourselfthom