Differenze tra le versioni di "Ottenere un file png dalla mappa mostrata da una MapView"
Da Gambas-it.org - Wikipedia.
(3 versioni intermedie di uno stesso utente non sono mostrate) | |||
Riga 1: | Riga 1: | ||
− | Possiamo ottenere un file di formato PNG dalla mappa mostrata da una MapView, usando le risorse del Componente ''gb.media''. | + | Possiamo ottenere un file di formato PNG dalla mappa mostrata da una MapView <SUP>[[[#Note|nota 1]]]</sup>, usando anche le risorse del Componente ''gb.media''. |
− | Mostriamo un esempio pratico: | + | Mostriamo un esempio pratico (è necessario attivare anche i Componenti ''gb.map'' e ''gb.media'' ): |
Private MapView1 As MapView | Private MapView1 As MapView | ||
Riga 11: | Riga 11: | ||
With Me | With Me | ||
.W = Screen.AvailableWidth | .W = Screen.AvailableWidth | ||
− | .H = Screen. | + | .H = Screen.Height * 0.9 |
.Arrangement = Arrange.Fill | .Arrangement = Arrange.Fill | ||
End With | End With | ||
Riga 48: | Riga 48: | ||
pl.Play() | pl.Play() | ||
pl.Stop() | pl.Stop() | ||
+ | pl.Close | ||
End | End | ||
− | + | ||
− | + | ||
− | + | ||
− | + | =Note= | |
− | + | [1] Vedere anche: [[Ottenere un'Image dalla mappa mostrata da una MapView]] | |
− | |||
− | |||
− | |||
− | |||
− |
Versione attuale delle 04:16, 5 giu 2024
Possiamo ottenere un file di formato PNG dalla mappa mostrata da una MapView [nota 1], usando anche le risorse del Componente gb.media.
Mostriamo un esempio pratico (è necessario attivare anche i Componenti gb.map e gb.media ):
Private MapView1 As MapView Public Sub Form_Open() Dim mp As New MapPoint(41.89030, 12.49237) With Me .W = Screen.AvailableWidth .H = Screen.Height * 0.9 .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 = mp End With End Public Sub MapView1_MouseUp() ' Se si clicca sulla "MapView" con il tasto destro del mouse, si avvierà la procedura per ottenere il file PNG: If Not Mouse.Right Then Return Dim pl As MediaPipeline Dim src, con, png, snk As MediaControl pl = New MediaPipeline src = New MediaControl(pl, "ximagesrc") src["xid"] = MapView1.Id ' Assegna il numero identificativo della "MapView", della quale si otterrà il file PNG con = New MediaControl(pl, "videoconvert") png = New MediaControl(pl, "pngenc") snk = New MediaControl(pl, "filesink") snk["location"] = "/tmp/immagine_mappa.png" src.LinkTo(con) con.LinkTo(png) png.LinkTo(snk) ' Crea il file PNG e poi chiude il flusso di dati: pl.Play() pl.Stop() pl.Close End
Note
[1] Vedere anche: Ottenere un'Image dalla mappa mostrata da una MapView