Bonjour.Ajouter des kilomètres à un point de la carte
Je voudrais savoir comment ajouter des kilomètres à un point de la carte (latitude/longitude).
Par exemple: La ville de Jaraguá do Sul se trouve à la latitude -26,462049, longitude -49,059448. Je veux ajouter 100 kilomètres en haut, en bas et sur les côtés. Je veux faire un carré et obtenir les nouveaux points.
Comment faire cela?
Je l'ai essayé:
<?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;
?>
Mais il est de retour faux cordinates. Je vous remercie!
Merci beaucoup.
Les 2 réponses jusqu'à présent sont l'approche générale. Mais si la précision n'est pas critique, et si la zone géographique d'intérêt est limitée - en particulier, dans une bande étroite de latitude - alors vous pouvez tromper ces fonctions. Je ne serais pas en mesure de fournir des détails sur «la largeur d'un groupe» et «combien d'imprécision». Puis, si la portée géographique est limitée, vous pouvez simplement faire une table de consultation :-) – Smandoli
Si vous spécifiez plus sur votre application, vos objectifs finaux ou vos outils de travail, vous pouvez obtenir des nouvelles sur une solution spécifique (par exemple, CoreLocation pour iPhone) – Smandoli
Je crée une application PHP et j'ai une table de base de données (villes) avec chaque ville de mon État (Santa Catarina). Dans ce tableau, j'ai des champs de latitude/longitude. L'utilisateur entre dans la ville et j'ai besoin de créer un carré imaginaire de 100km pour trouver des entreprises proches de lui. Désolé pour mon anglais et désolé pour le manque d'informations. Merci les gars! – proveyourselfthom