Buongiorno.Aggiungi chilometri a un punto della mappa
Mi piacerebbe sapere come aggiungere chilometri a un punto della mappa (latitudine/longitudine).
Ad esempio: la città Jaraguá do Sul si trova nella latitudine -26.462049, longitudine -49.059448. Voglio aggiungere 100 chilometri su, giù e ai lati. Voglio fare un quadrato e ottenere i nuovi punti.
Come faccio?
ho provato:
<?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;
?>
ma è tornando cordinate sbagliate. Grazie!
Grazie mille.
Le 2 risposte finora sono l'approccio generale. Ma se la precisione non è critica, E se l'area geografica di interesse è limitata - in particolare, entro una banda ristretta di latitudine - allora è possibile fondere queste funzioni. Non sarei in grado di fornire dettagli su "quanto larga banda" e "quanto imprecisione". Quindi, se l'ambito geografico è limitato, puoi semplicemente creare una tabella di ricerca :-) – Smandoli
Se specifichi di più sulla tua app, sugli obiettivi finali o sugli strumenti di lavoro, potresti ricevere notizie su una soluzione specifica (ad esempio, CoreLocation per iPhone) – Smandoli
Sto creando un'applicazione PHP e ho una tabella di database (città) con ogni città nel mio stato (Santa Catarina). In questa tabella, ho campi di latitudine/longitudine. L'utente entra in città e ho bisogno di creare un quadrato immaginario di 100 km per trovare le imprese vicino a lui. Mi dispiace per il mio inglese e mi dispiace per la mancanza di informazioni. Grazie ragazzi! – proveyourselfthom