Differenze tra le versioni di "Ottenere la Latitudine e la Longitudine del punto sulla mappa cliccato con il puntatore del mouse"
Da Gambas-it.org - Wikipedia.
(Creata pagina con "Per ottenere la Latitudine e la Longitudine del punto sulla mappa, ove si è cliccato con il puntatore del mouse, è necessario usare il Metodo ".PixelToMapPointRel()" della C...") |
|||
Riga 26: | Riga 26: | ||
Dim mp As MapPoint | Dim mp As MapPoint | ||
− | mp = MapView1<FONT Color=#B22222>.Map<B>.PixelToMapPointRel</b></font>(<FONT Color=darkgreen>pt</font>) | + | <FONT Color=red>mp</font> = MapView1<FONT Color=#B22222>.Map<B>.PixelToMapPointRel</b></font>(<FONT Color=darkgreen>pt</font>) |
− | + | ||
− | + | <FONT Color=gray>' ''Mostra nell'intestazione della finestra principale il valore della Latitudine e della Longitudine:''</font> | |
− | + | Me.Text = Format(<FONT Color=red>mp</font><FONT Color=blue><B>.Lat</b></font>, "0.000000") & " " & Format(<FONT Color=red>mp</font><FONT Color=blue><B>.Lon</b></font>, "0.000000") | |
'''End''' | '''End''' |
Versione delle 20:58, 21 dic 2021
Per ottenere la Latitudine e la Longitudine del punto sulla mappa, ove si è cliccato con il puntatore del mouse, è necessario usare il Metodo ".PixelToMapPointRel()" della Classe "Map" del Componente "gb.map", al quale va passato un Oggetto di tipo "Point" che dovrà contenere i valori delle Proprietà ".Width" e ".Height" della Classe "Mouse".
Infatti detto Metodo converte le coordinate della superficie grafica, utilizzata per mostrare la mappa, in coordinate geografiche e restituisce un Oggetto di tipo della Classe "MapPoint", dalle cui Proprietà ".Lat" e ".Lon" si otterranno i valori dunque rispettivamente della Latitudine e della Longitudine del punto della mappa ove si è cliccato.
Mostriamo un semplice esempio:
Private MapView1 As MapView Public Sub Form_Open() With Me .W = Screen.AvailableWidth .H = Screen.AvailableHeight .Arrangement = Arrange.Fill End With With MapView1 = New MapView(Me) As "MapView1" .Map.AddTile("GoogleMap", "https://mt0.google.com/vt/lyrs=s&hl=&x={x}&y={y}&z={z}") .Map.Zoom = 15 .Map.Center = New MapPoint(41.89018, 12.49230) End With End Public Sub MapView1_MouseUp() Dim pt As New Point(Mouse.X, Mouse.Y) Dim mp As MapPoint mp = MapView1.Map.PixelToMapPointRel(pt) ' Mostra nell'intestazione della finestra principale il valore della Latitudine e della Longitudine: Me.Text = Format(mp.Lat, "0.000000") & " " & Format(mp.Lon, "0.000000") End