Italian Cordinate GPS da indirizzi.

luciano deri

Active Member
Licensed User
Salve, vorrei visualizzare più punti su google Maps. Mi sembra di aver capito che è una funzione possibile solo su Google Earth attraverso un file .kml in cui sono indicate le coordinate. Purtroppo ho solo una lista di indirizzi, come faccio a ricavarne le coordinate?
Ci sono altri metodi?
Saluti e grazie.
 

sirjo66

Well-Known Member
Licensed User
Guarda qui una pagina che ho scritto in JavaScript:
http://quiz2.altervista.org/maps.htm

Se inserisci un indirizzo vedrai che il punto si sposta.
Con Javascript mi sembra che puoi gestire al massimo 10 punti, se devi utilizzarne di più devi usare i file .KML come ho fatto io per caricare i dati dei ripetitori

Sergio
 

luciano deri

Active Member
Licensed User
Ottimo lavoro sirjo66.
Con il KML riesco a vedere tutti i punti se ho le coordinate.
La domanda per adesso senza risposta è: Come faccio a sapere le coordinate di un indirizzo?
 

sirjo66

Well-Known Member
Licensed User
Beh, pensavo che non serviva spiegarti il tutto, comunque, vai sulla pagina che ti ho indicato e vai a vedere il relativo sorgente.
Posizionati alla riga n. 360 e da lì comincia la routine per trasformare l'indirizzo in coordinate

L'indirizzo che l'utente ha digitato viene copiato sulla variabile "ind" e poi, dalla riga 383 in poi viene trasformato in coordinate,
ricavandosi il punto esatto alla riga 389: results[0].geometry.location

Se hai bisogno di ulteriori dettagli chiedi

Sergio
 

luciano deri

Active Member
Licensed User
Non ho esperienza di javascript tuttavia avevo capito che la cosa funzionava da quelle parti, ma non so come implementare qualcosa di analogo su B4A
 

luciano deri

Active Member
Licensed User
B4X:
Sub Geodec_GeocodeDone(Results() As Address, Tag As Object)
    If Results.Length>0 Then
        Dim Address1 As Address
        Dim i As Int
        For i=0 To Results.Length-1
            Address1=Results(i)
            lat = Address1.Latitude
            longi =  Address1.Longitude
            nmk = nmk + i
            Dim str As String
            If Address1.Thoroughfare <> Null Then
                str = Address1.Thoroughfare
            Else   
                str = Address1.FeatureName
            End If
            mk(nmk) = gmap.AddMarker(lat,longi,str)
            Dim cp As CameraPosition
            cp.Initialize(lat,longi, 9)
            gmap.AnimateCamera(cp)
        Next
    Else
        Msgbox("GetFromLocation", "No Latitude and Longitude found for the LocationName")
    End If
    ProgressDialogHide
End Sub
Ok, fatto. Bisogna usare le librerie Geocorder e GoogleMaps
 
Last edited:
Top