Overlay riquadro

pubblica final class TileOverlay estende Object

Un overlay riquadro è un insieme di immagini visualizzate sopra i riquadri della mappa base. Questi riquadri possono essere trasparenti e ti permettono di aggiungere elementi alle mappe esistenti. Un overlay riquadro ha le seguenti proprietà:

Fornitore di riquadri
TileProvider fornisce le immagini utilizzate nell'overlay del riquadro. Devi specificare il fornitore di riquadri prima che venga aggiunto alla mappa. Il fornitore di riquadri non può essere modificato una volta aggiunto; tuttavia, puoi modificare il comportamento del fornitore di riquadri in modo che restituisca immagini diverse per coordinate specifiche. Se i riquadri forniti dal fornitore dei riquadri cambiano, devi chiamare clearTileCache() successivamente per assicurarti che i riquadri precedenti non vengano più visualizzati.
Z-index
L'ordine in cui l'overlay riquadro viene disegnato rispetto ad altri overlay (inclusi GroundOverlay, Circle, Polyline e Polygon ma non Marker). Un overlay con uno z-index più grande viene disegnato sopra gli overlay con indici z più piccoli. L'ordine delle sovrapposizioni con lo stesso z-index è arbitrario. Il valore predefinito di zIndex è 0.
Trasparenza
Trasparenza dell'overlay del riquadro nell'intervallo [0..1], dove 0 indica che l'overlay è opaco e 1 indica che l'overlay è completamente trasparente. Se la bitmap specificata è già parzialmente trasparente, la trasparenza di ciascun pixel verrà scalata di conseguenza (ad esempio, se un pixel nella bitmap ha un valore alfa di 200 e specifichi la trasparenza dell'overlay del riquadro come 0,25, il pixel verrà visualizzato sullo schermo con un valore alfa di 150). La specifica di questa proprietà è facoltativa e la trasparenza predefinita è 0 (opaca).
Visibilità
Indica se l'overlay del riquadro è visibile o invisibile, ovvero se è disegnato sulla mappa. Un overlay riquadro invisibile non viene tracciato, ma mantiene tutte le altre proprietà. Il valore predefinito è true, ovvero visibile.

Devi chiamare i metodi in questa classe solo nel thread principale. In caso contrario, verrà visualizzato un IllegalStateException.

Coordinate dei riquadri

Si noti che il mondo viene proiettato utilizzando la proiezione di Mercatore (vedi Wikipedia) con il lato sinistro (ovest) della mappa corrispondente a -180 gradi di longitudine e il lato destro (est) della mappa corrispondenti a 180 gradi di longitudine. Per rendere la mappa quadrata, il lato superiore (nord) della mappa corrisponde a 85,0511 gradi di latitudine, mentre il lato inferiore (sud) corrisponde a -85,0511 gradi di latitudine. Le aree al di fuori di questo intervallo di latitudine non vengono visualizzate.

A ogni livello di zoom, la mappa viene divisa in riquadri e vengono scaricati e visualizzati solo i riquadri che si sovrappongono allo schermo. Ogni riquadro è quadrato e la mappa è divisa in riquadri come segue:

  • A livello di zoom 0, un riquadro rappresenta il mondo intero. Le coordinate di quel riquadro sono (x, y) = (0, 0).
  • Al livello di zoom 1, il mondo è diviso in 4 riquadri disposti in una griglia 2 x 2.
  • ...
  • A livello di zoom N, il mondo è diviso in 4N riquadri disposti in una griglia 2N x 2N.
Tieni presente che il livello di zoom minimo supportato dalla fotocamera (che può dipendere da vari fattori) è GoogleMap.getMinZoomLevel e il livello massimo di zoom è GoogleMap.getMaxZoomLevel.

Le coordinate dei riquadri sono misurate dall'angolo in alto a sinistra (nord-ovest) della mappa. A livello di zoom N, i valori x delle coordinate dei riquadri sono compresi tra 0 e 2N - 1 e aumentano da ovest a est, mentre i valori di y vanno da 0 a 2N - 1 e aumentano da nord a sud.

Esempio

GoogleMap map; // ... get a map.
 TileProvider tileProvider; // ... create a tile provider.
 TileOverlay tileOverlay = map.addTileOverlay(
     new TileOverlayOptions().tileProvider(tileProvider));
 

Riepilogo del metodo pubblico

void
clearTileCache()
Cancella la cache dei riquadri in modo che tutti i riquadri vengano richiesti nuovamente da TileProvider.
boolean
uguale a(oggetto altro)
Verifica se questo TileOverlay è uguale a un altro.
boolean
getFadeIn()
Riconosce se i riquadri overlay devono apparire con dissolvenza in entrata.
Stringa
getId()
Ottieni l'ID di questo overlay riquadro.
float
getTransparency()
Ottieni la trasparenza dell'overlay di questo riquadro.
float
getZIndex()
Restituisce lo zIndex di questo overlay del riquadro.
int
boolean
isVisible()
Restituisce la visibilità dell'overlay di questo riquadro.
void
remove()
Rimuove l'overlay di questo riquadro dalla mappa.
void
setFadeIn(dissolvenza booleana)
Consente di impostare se i riquadri di overlay devono apparire con dissolvenza in entrata.
void
setTransparency(trasparenza mobile)
Imposta la trasparenza dell'overlay di questo riquadro.
void
setVisible(boolean visibile)
Imposta la visibilità dell'overlay di questo riquadro.
void
setZIndex(zIndex in virgola mobile)
Imposta il valore zIndex per l'overlay di questo riquadro.

Riepilogo del metodo ereditato

Metodi pubblici

Public void clearTileCache ()

Cancella la cache dei riquadri in modo che tutti i riquadri vengano richiesti nuovamente da TileProvider. Anche i riquadri correnti di questo overlay di riquadri verranno cancellati dalla mappa dopo aver richiamato questo metodo. L'API gestisce una piccola cache in memoria di riquadri. Se vuoi memorizzare i riquadri nella cache più a lungo, devi implementare una cache su disco.

Public booleano uguale a (Object other)

Verifica se questo TileOverlay è uguale a un altro.

Parametri
altro un Object.
Ritorni
  • true se entrambi gli oggetti sono lo stesso oggetto, ovvero questo == other.

pubblico booleano getFadeIn ()

Riconosce se i riquadri overlay devono apparire con dissolvenza in entrata.

Ritorni
  • true se i riquadri devono dissolversi in entrata; false in caso contrario.

Stringa pubblica getId ()

Ottieni l'ID di questo overlay riquadro.

float pubblico getTransparency ()

Ottieni la trasparenza dell'overlay di questo riquadro.

Ritorni
  • la trasparenza dell'overlay di questo riquadro.

numero in virgola mobile getZIndex ()

Restituisce lo zIndex di questo overlay del riquadro.

Ritorni
  • lo zIndex dell'overlay del riquadro.

pubblici int hashCode ()

pubblici booleano isVisible ()

Restituisce la visibilità dell'overlay di questo riquadro. Tieni presente che ciò non indica se l'overlay del riquadro si trova effettivamente all'interno dell'area visibile dello schermo, ma se verrà disegnato se è contenuto nell'area visibile dello schermo.

Ritorni
  • la visibilità di questo overlay di riquadro.

Public void remove ()

Rimuove l'overlay di questo riquadro dalla mappa.

Public void setFadeIn (boolean fadeIn)

Consente di impostare se i riquadri di overlay devono apparire con dissolvenza in entrata.

Parametri
fadeIn true per far scomparire i riquadri; false per visualizzarli istantaneamente.

Public void setTransparency (trasparenza fluttuante)

Imposta la trasparenza dell'overlay di questo riquadro. Per ulteriori informazioni, consulta la documentazione all'inizio di questa lezione.

Parametri
trasparenza adeguata una virgola mobile nell'intervallo [0..1], dove 0 indica che l'overlay riquadro è opaco e 1 indica che l'overlay riquadro è trasparente.

Public void setVisible (boolean visible)

Imposta la visibilità dell'overlay di questo riquadro. Quando non è visibile, l'overlay riquadro non viene disegnato, ma conserva tutte le altre proprietà. Gli overlay riquadro sono visibili per impostazione predefinita.

Parametri
visibile true per rendere visibile questo overlay; false per renderlo invisibile.

Public void setZIndex (zIndex in virgola mobile)

Imposta il valore zIndex per l'overlay di questo riquadro. Per ulteriori informazioni, consulta la documentazione all'inizio di questa classe.

Parametri
zIndex lo zIndex di questo overlay di riquadro.