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 possède 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é. Toutefois, vous pouvez modifier le comportement du fournisseur de tuiles pour qu'il renvoie des images différentes pour des coordonnées spécifiques. Si les tuiles fournies par le fournisseur de cartes changent, vous devez appelerclearTileCache()
par la suite pour vous assurer que les anciennes tuiles ne sont plus affichées.- z-index
- Ordre dans lequel cette superposition de tuiles est dessinée par rapport aux autres superpositions (y compris les
GroundOverlay
,Circle
,Polyline
etPolygon
, mais pas lesMarker
). Une superposition avec un z-index plus grand apparaît sur des superpositions comportant des z-indices plus petits. L'ordre des superpositions ayant le même z-index est arbitraire. Le zIndex par défaut est 0. - Transparence
- Transparence de la superposition de tuiles dans la plage
[0..1]
, où0
signifie que la superposition est opaque et1
signifie qu'elle est totalement 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 a une valeur alpha de 200 et que vous spécifiez la transparence de la superposition de tuiles sur 0,25, le pixel sera 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 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 dessinée, mais conserve toutes ses autres propriétés. La valeur par défaut est
true
, c'est-à-dire visible.
Vous ne devez appeler les méthodes de cette classe que sur le thread principal. Dans le cas contraire, une erreur IllegalStateException
est générée.
Coordonnées de tuile
Notez que le monde est projeté à l'aide de la projection de Mercator (voir Wikipédia) avec le côté gauche (ouest) de la carte correspondant à -180 degrés de longitude et le côté droit (est) de la carte correspondant à 180 degrés de longitude. Pour que la carte 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) de la carte à -85,0511 degrés de latitude. Les zones situées en dehors de cette plage de latitudes 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, chaque 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 4 tuiles disposées en grille 2 x 2.
- ...
- Au niveau de zoom N, le monde est divisé en 4N tuiles organisées dans 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 vont de 0 à 2N -1 et augmentent d'ouest en est, et les valeurs y
vont de 0 à 2N -1 et augmentent 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 cartes afin que toutes les tuiles soient à nouveau demandées à partir de
TileProvider . |
boolean |
est égal à(autre objet)
Vérifie si cet élément
TileOverlay est égal à un autre. |
boolean |
getFadeIn()
Détermine si les tuiles de superposition doivent apparaître en fondu.
|
Chaîne |
getId()
Récupère l'ID de cette superposition de tuiles.
|
float |
getTransparency()
Récupère la transparence de cette superposition de tuiles.
|
float |
getZIndex()
Récupère le zIndex de cette superposition de tuiles.
|
int |
hashCode()
|
boolean |
isVisible()
Récupère la visibilité de cette superposition de tuiles.
|
void |
supprimer()
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 de type "float")
Définit la transparence de cette superposition de tuiles.
|
void |
setVisible(booléen 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 vide clearTileCache ()
Efface le cache des cartes afin que toutes les tuiles soient à nouveau demandées à partir de TileProvider
.
Les tuiles actuelles de cette superposition de tuiles seront également effacées de la carte après l'appel de cette méthode. L'API conserve un petit cache de cartes en mémoire. Si vous souhaitez mettre en cache les cartes plus longtemps, vous devez implémenter un cache sur disque.
public boolean est égal à (objet autre)
Vérifie si cet élément TileOverlay
est égal à un autre.
Paramètres
other | un Object . |
---|
Renvoie
- "true" si les deux objets sont le même, c'est-à-dire que ceci == 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'ID de cette superposition de tuiles.
public float getTransparency ()
Récupère la transparence de cette superposition de tuiles.
Renvoie
- la transparence de cette superposition de tuiles.
public float getZIndex ()
Récupère le zIndex de cette superposition de tuiles.
Renvoie
- le zIndex de la superposition de tuiles.
public int hashCode ()
public boolean isVisible ()
Récupère la visibilité de cette superposition de tuiles. Notez que cette valeur ne permet pas de déterminer si la superposition de tuiles se trouve réellement dans la fenêtre d'affichage de l'écran, mais si elle sera dessinée si elle est contenue dans la fenêtre d'affichage de l'écran.
Renvoie
- la visibilité de cette superposition de tuiles.
public vide remove ()
Supprime cette superposition de tuiles de la carte.
public void setFadeIn (boolean fadeIn)
Détermine si les tuiles de superposition doivent apparaître en fondu.
Paramètres
fadeIn | true pour faire apparaître les tuiles en fondu ; false pour les afficher instantanément.
|
---|
public vide setTransparency (transparence de type "float")
Définit la transparence de cette superposition de tuiles. Pour en savoir plus, consultez la documentation en haut de cette classe.
Paramètres
la transparence | Flottant dans la plage [0..1] , où 0 signifie que la superposition de tuiles est opaque et 1 signifie que la superposition de tuiles est transparente.
|
---|
public void setVisible (boolean 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 les 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 en haut de cette classe.
Paramètres
zIndex | le zIndex de cette superposition de tuiles. |
---|