.
Une superposition de tuiles est un ensemble d'images qui sont affichées au-dessus des tuiles de la carte de base. Ces tuiles peuvent être transparentes, ce qui vous permet d'ajouter des éléments géographiques à des cartes existantes. Une superposition de tuiles présente les propriétés suivantes:
- Fournisseur de carrelage
TileProvider
fournit les images utilisées dans la superposition de tuiles. Vous devez spécifier le fournisseur de tuiles avant de l'ajouter à la carte. Une fois ajouté, le fournisseur de tuiles ne peut plus être modifié. Cependant, vous pouvez modifier son comportement afin qu'il renvoie différentes images pour des coordonnées spécifiques. Si les tuiles fournies par le fournisseur de tuiles changent, vous devez appelerclearTileCache()
pour vous assurer que les tuiles précédentes ne seront plus affichées.- z-index
- Ordre dans lequel cette superposition de tuiles est dessinée par rapport aux autres superpositions (y compris les
GroundOverlay
, lesCircle
, lesPolyline
et lesPolygon
, mais pas lesMarker
). Une superposition avec un z-index plus grand est superposée aux superpositions avec des z-indices plus petits. L'ordre des superpositions ayant le même z-index est arbitraire. La valeur par défaut de la propriété zIndex est 0. - Transparence
- Transparence de la superposition de tuiles dans la plage
[0..1]
, où0
signifie que la superposition est opaque et1
signifie que la superposition est entièrement transparente. Si le bitmap spécifié est déjà partiellement transparent, la transparence de chaque pixel est mise à l'échelle en conséquence.Par exemple, si un pixel du bitmap présente une valeur alpha de 200 et que vous spécifiez la transparence de la superposition de tuiles avec la valeur 0,25, le pixel est affiché à l'écran avec une valeur alpha de 150. La spécification de cette propriété est facultative et la transparence par défaut est de 0 (opaque). - Visibilité
- Indique si la superposition de tuiles est visible ou invisible, c'est-à-dire si elle est dessinée sur la carte. Une superposition de tuiles invisible n'est pas tracée, mais conserve toutes ses autres propriétés. La valeur par défaut est
true
, c'est-à-dire visible.
Vous ne devez appeler que les méthodes de cette classe sur le thread principal. Dans le cas contraire, vous obtiendrez un IllegalStateException
.
Coordonnées de tuile
Notez que la projection du monde est projetée grâce à la projection de Mercator (voir Wikipédia). Le côté gauche (ouest) de la carte correspond à -180 degrés de longitude et le côté droit (est) de la carte correspond à 180 degrés de longitude. Pour qu'elle soit carrée, le côté supérieur (nord) de la carte correspond à 85.0511 degrés de latitude et le côté inférieur (sud) à -85.0511 degrés de latitude. Les zones en dehors de cette plage ne sont pas affichées.
À chaque niveau de zoom, la carte est divisée en tuiles, et seules les tuiles qui chevauchent l'écran sont téléchargées et affichées. Chaque tuile est carrée et la carte est divisée en tuiles comme suit:
- Au niveau de zoom 0, une tuile représente le monde entier. Les coordonnées de cette tuile sont (x, y) = (0, 0).
- Au niveau de zoom 1, le monde est divisé en quatre tuiles disposées en une grille de 2 x 2.
- …
- Au niveau de zoom N, le monde est divisé en 4 N tuiles disposées en une grille de 2N x 2N.
GoogleMap.getMinZoomLevel
et que le niveau de zoom maximal est de GoogleMap.getMaxZoomLevel
.
Les coordonnées des tuiles sont mesurées à partir de l'angle supérieur gauche (nord-ouest) de la carte. Au niveau de zoom N, les valeurs x
des coordonnées de tuile varient de 0 à 2N - 1, et vont d'ouest en est. La valeur y
va de 0 à 2N - 1 et augmente du nord au sud.
Exemple
GoogleMap map; // ... get a map.
TileProvider tileProvider; // ... create a tile provider.
TileOverlay tileOverlay = map.addTileOverlay(
new TileOverlayOptions().tileProvider(tileProvider));
Récapitulatif des méthodes publiques
void |
clearTileCache()
Efface le cache des tuiles de sorte que toutes les tuiles soient à nouveau demandées à
TileProvider . |
booléen |
est égal(e) à(Objet autre)
Teste si
TileOverlay est égal à un autre. |
booléen |
getFadeIn
Détermine si les tuiles de superposition doivent apparaître en fondu.
|
String |
getId
Récupère l'identifiant de cette superposition de tuiles.
|
float (nombre à virgule flottante) |
getTransparency()
Récupère la transparence de cette superposition de tuiles.
|
float (nombre à virgule flottante) |
getZIndex
Récupère le zIndex de cette superposition de tuiles.
|
int | |
booléen |
isVisible()
Récupère la visibilité de cette superposition de tuiles.
|
void |
remove
Supprime cette superposition de tuiles de la carte.
|
void |
setFadeIn(fondu booléen)
Détermine si les tuiles de superposition doivent apparaître en fondu.
|
void |
setTransparency(transparence flottante)
Définit la transparence de cette superposition de tuiles.
|
void |
setVisible(valeur booléenne visible)
Définit la visibilité de cette superposition de tuiles.
|
void |
setZIndex(zIndex flottant)
Définit le zIndex de cette superposition de tuiles.
|
Récapitulatif des méthodes héritées
Méthodes publiques
public void clearTileCache ()
Efface le cache des tuiles de sorte que toutes les tuiles soient à nouveau demandées à TileProvider
.
Les tuiles actuelles de cette superposition de tuiles seront également supprimées de la carte après avoir appelé cette méthode. L'API gère un petit cache de tuiles en mémoire. Si vous souhaitez mettre en cache les tuiles plus longtemps, vous devez implémenter un cache sur disque.
public boolean est égal à (Object other)
Teste si TileOverlay
est égal à un autre.
Paramètres
other | un Object . |
---|
Renvoie
- Valeur "true" si les deux objets sont le même objet, autrement dit, == other.
public boolean getFadeIn ()
Détermine si les tuiles de superposition doivent apparaître en fondu.
Renvoie
true
si les tuiles doivent apparaître en fondu,false
dans le cas contraire.
public String getId ()
Récupère l'identifiant de cette superposition de tuiles.
public floatgetTransparency()
Récupère la transparence de cette superposition de tuiles.
Renvoie
- la transparence de cette superposition de tuiles.
float public getZIndex ()
Récupère le zIndex de cette superposition de tuiles.
Renvoie
- zIndex de la superposition de tuiles.
public inthashCode()
public boolean isVisible ()
Récupère la visibilité de cette superposition de tuiles. Notez que cette commande ne renvoie pas si la superposition de tuiles se trouve réellement dans la fenêtre d'affichage de l'écran, mais si elle est dessinée si elle est contenue dans la fenêtre d'affichage de l'écran.
Renvoie
- la visibilité de cette superposition de tuiles.
public void supprimer ()
Supprime cette superposition de tuiles de la carte.
public void setFadeIn (valeur booléenne booléenne)
Détermine si les tuiles de superposition doivent apparaître en fondu.
Paramètres
fondu | true pour afficher les tuiles en fondu ; false pour les afficher instantanément.
|
---|
public void setTransparency (transparence flottante)
Définit la transparence de cette superposition de tuiles. Pour en savoir plus, consultez la documentation située en haut de ce cours.
Paramètres
transparence | Une valeur flottante comprise entre [0..1] et 0 signifie que la superposition de tuiles est opaque et 1 signifie que la superposition de tuiles est transparente.
|
---|
public void setVisible (valeur booléenne visible)
Définit la visibilité de cette superposition de tuiles. Lorsqu'elle n'est pas visible, la superposition de tuiles n'est pas dessinée, mais elle conserve toutes ses autres propriétés. Les superpositions de tuiles sont visibles par défaut.
Paramètres
visible | true pour rendre cette superposition visible ; false pour la rendre invisible.
|
---|
public void setZIndex (float zIndex)
Définit le zIndex de cette superposition de tuiles. Pour en savoir plus, consultez la documentation située en haut de ce cours.
Paramètres
z-index | zIndex de cette superposition de tuiles. |
---|