TileOverlay

La classe publique finale TileOverlay étend l'objet

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 appeler clearTileCache() 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 et Polygon, mais pas les Marker). 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 et 1 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.
Notez que le niveau de zoom minimal accepté par la caméra (qui peut dépendre de divers facteurs) est de 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
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.