Se possiedi già le coordinate delle stazioni di biciclette e se ti fidi di questi dati, basta usarli per disegnare i tuoi indicatori. Ora devi definire cosa significa "vicino".
Avete diverse soluzioni per questo. O scegli di disegnare i marcatori per tutte le stazioni bici all'interno dei limiti della mappa (ma potrebbero essere molti indicatori da disegnare a seconda del livello di zoom, oppure devi impedire che lo script disegni i marcatori prima che venga raggiunto un determinato livello di zoom) oppure puoi disegnare i marker entro n chilometri intorno a una posizione (può essere la posizione dell'utente, le coordinate del centro della mappa, ecc.).
Per la seconda soluzione, e se si archiviano le vostre stazioni di biciclette in un database MySQL, si potrebbe fare una query del genere:
$sql = "SELECT *, (6371 * acos(cos(radians(" . $db->real_escape_string($lat) . ")) * cos(radians(lat)) * cos(radians(lng) - radians(" . $db->real_escape_string($lng) . ")) + sin(radians(" . $db->real_escape_string($lat) . ")) * sin(radians(lat)))) AS distance FROM your_table_name HAVING distance < 15";
$lat
e $lng
essere il centro coordina
lat
e lng
essendo i nomi delle colonne MySQL
15
come il raggio (in km) intorno alle coordinate
Questo utilizza la formula di Haversine. Una buona informazione può essere trovata here.
Spero che questo aiuti, ma non sappiamo davvero come hai organizzato i dati nella tua app. Dacci maggiori informazioni se hai bisogno di più aiuto su questo!
Grazie per la risposta. Sembra che ho bisogno di un'altra chiave API per google places. Sto già utilizzando la chiave di Android Maps per accedere a Maps api, questo è un po 'di confusione per me, devo leggere di più. – Geoplex
Sì, hai ragione. Mentre Google può fornirti molti dati utili, se puoi utilizzare altre fonti attendibili (i tuoi dati, altri fornitori, ecc.), Basta usarli! Quindi non ti affidi a Google per gli aggiornamenti dei dati (che possono essere una lotta) e in molti casi non puoi comunque. – MrUpsidown