Una superposición de mosaicos es un conjunto de imágenes que se muestran sobre los mosaicos del mapa base. Estas tarjetas pueden ser transparentes, lo que te permite agregar elementos a los mapas existentes. Una superposición de mosaicos tiene la siguientes propiedades:
- Proveedor de mosaicos
- El objeto
TileProvider
proporciona las imágenes que se usan en la superposición de mosaicos. Debes especifica el proveedor de mosaicos antes de agregarlos al mapa. El proveedor de mosaicos no puede ser cambia una vez que ha sido agregado; Sin embargo, puedes modificar el comportamiento del proveedor de tarjetas para devolver imágenes diferentes para coordenadas específicas. Si los mosaicos proporcionados por la tarjeta cambio de proveedor, debes llamar aclearTileCache()
posteriormente para asegurarte de que el ya no se renderizan los mosaicos anteriores. - Índice Z
- Es el orden en el que se dibuja esta superposición de mosaicos respecto de otras superposiciones (incluidas las
GroundOverlay
,Circle
,Polyline
yPolygon
, pero noMarker
s). Una superposición con un índice z mayor se dibuja sobre las que tienen un índice z más pequeño índices z. Para las superposiciones con el mismo índice Z, el orden es arbitrario. El valor predeterminado zIndex es 0. - Transparencia
- Transparencia de la superposición de mosaicos en el rango
[0..1]
, donde0
representa la superposición es opaca, y1
significa que es completamente transparente. Si el estado especificado mapa de bits ya es parcialmente transparente, se ajustará la transparencia de cada píxel en consecuencia (por ejemplo, si un píxel del mapa de bits tiene un valor alfa de 200 y especificas la transparencia de la superposición de mosaicos en 0.25, entonces el píxel se renderizará en la pantalla con un valor alfa de 150). La especificación de esta propiedad es opcional, y la la transparencia predeterminada es 0 (opaco). - Visibilidad
- Indica si la superposición de mosaicos es visible o invisible, es decir, si se dibuja en el
mapa. Las superposiciones de mosaicos invisibles no se dibujan, pero conservan todas las demás propiedades. El
el valor predeterminado es
true
, es decir, visible.
Solo debes llamar a los métodos de esta clase en el subproceso principal. De lo contrario, se producirán
un objeto IllegalStateException
.
Coordenadas de mosaicos
Observa que el mundo se proyecta con la proyección de Mercator (consulta Wikipedia) con el lado izquierdo (oeste). del mapa correspondiente a -180 grados de longitud y el lado derecho (este) del mapa correspondiente a 180 grados de longitud. Para que el mapa sea cuadrado, el lado superior (norte) de la mapa corresponde a 85.0511 grados de latitud y el lado inferior (sur) del mapa a -85,0511 grados de latitud. Las áreas fuera de este rango de latitud no se representan.
En cada nivel de zoom, el mapa se divide en mosaicos y solo en los mosaicos que se superponen en la pantalla. se descargan y renderizan. Cada mosaico es cuadrado y el mapa se divide en mosaicos de la siguiente manera:
- En el nivel de zoom 0, un mosaico representa el mundo entero. Las coordenadas de ese mosaico son (x, y) = (0, 0).
- En el nivel de zoom 1, el mundo se divide en 4 mosaicos dispuestos en una cuadrícula de 2 x 2.
- …
- En el nivel de zoom N, el mundo se divide en 4N mosaicos dispuestos en un 2N x 2N.
GoogleMap.getMinZoomLevel
y
el nivel de zoom máximo es GoogleMap.getMaxZoomLevel
.
Las coordenadas de los mosaicos se miden desde la esquina superior izquierda (noroeste) del mapa. En
en el nivel de zoom N, los valores de x
de las coordenadas del mosaico varían de 0 a 2N-1 y
aumentan de oeste a este y los valores de y
varían de 0 a 2N-1 y
aumentar de norte a sur.
Ejemplo
GoogleMap map; // ... get a map.
TileProvider tileProvider; // ... create a tile provider.
TileOverlay tileOverlay = map.addTileOverlay(
new TileOverlayOptions().tileProvider(tileProvider));
Resumen de métodos públicos
void |
clearTileCache()
Borra la caché de mosaicos para que se vuelvan a solicitar todos los mosaicos desde
TileProvider . |
boolean |
es igual a(Otro objeto)
Comprueba si este
TileOverlay es igual a otro. |
boolean |
getFadeIn()
Obtiene si se debe aplicar un fundido de entrada a los mosaicos superpuestos.
|
String |
getId()
Obtiene el ID de esta superposición de mosaicos.
|
float |
getTransparency()
Obtiene la transparencia de esta superposición de mosaicos.
|
float |
getZIndex()
Obtiene el zIndex de esta superposición de mosaicos.
|
int |
hashCode()
|
boolean |
isVisible()
Obtiene la visibilidad de esta superposición de mosaicos.
|
void |
remove()
Elimina esta superposición de mosaicos del mapa.
|
void |
setFadeIn(boolean fadeIn)
Establece si se debe aplicar un fundido de entrada a los mosaicos superpuestos.
|
void |
setTransparency(transparencia de número de punto flotante)
Establece la transparencia de esta superposición de mosaicos.
|
void |
setVisible(boolean visible)
Establece la visibilidad de esta superposición de mosaicos.
|
void |
setZIndex(Índice z de número de punto flotante)
Establece el zIndex de esta superposición de mosaicos.
|
Resumen de métodos heredados
Métodos públicos
público anular clearTileCache ()
Borra la caché de mosaicos para que se vuelvan a solicitar todos los mosaicos desde TileProvider
.
Los mosaicos actuales de esta superposición también se borrarán del mapa después de llamarlo.
. La API mantiene una pequeña caché de mosaicos en la memoria. Si quieres almacenar en caché mosaicos
por más tiempo, deberías implementar
un almacenamiento en caché en disco.
público booleano es igual a (Otro objeto)
Comprueba si este TileOverlay
es igual a otro.
Parámetros
otro | un objeto Object . |
---|
Muestra
- true si ambos objetos son el mismo objeto, es decir, this == other.
público booleano getFadeIn ()
Obtiene si se debe aplicar un fundido de entrada a los mosaicos superpuestos.
Muestra
true
para aplicar fundido de entrada a los mosaicosfalse
si no lo son.
público Cadena getId ()
Obtiene el ID de esta superposición de mosaicos.
público número de punto flotante getTransparency ()
Obtiene la transparencia de esta superposición de mosaicos.
Muestra
- la transparencia de esta superposición de mosaicos.
público número de punto flotante getZIndex ()
Obtiene el zIndex de esta superposición de mosaicos.
Muestra
- el zIndex de la superposición de mosaicos.
público número entero hashCode ()
público booleano isVisible ()
Obtiene la visibilidad de esta superposición de mosaicos. Ten en cuenta que esto no muestra si la tarjeta esté en realidad dentro del viewport de la pantalla, pero si se dibujará si contenidos en el viewport de la pantalla.
Muestra
- la visibilidad de esta superposición de mosaicos.
público anular quitar ()
Elimina esta superposición de mosaicos del mapa.
público anular setFadeIn (fundido de entrada booleano)
Establece si se debe aplicar un fundido de entrada a los mosaicos superpuestos.
Parámetros
fadeIn | true para que se atenúe la entrada de los mosaicos false para renderizarlas al instante.
|
---|
público anular setTransparency (transparencia de número de punto flotante)
Establece la transparencia de esta superposición de mosaicos. Consulta la documentación al principio de esta clase para ver más información.
Parámetros
transparencia | un número de punto flotante en el rango [0..1] , donde 0 significa que la tarjeta
superposición es opaca, y 1 significa que la superposición de mosaicos es transparente.
|
---|
público anular setVisible (booleano visible)
Establece la visibilidad de esta superposición de mosaicos. Cuando no está visible, no se dibuja una superposición de mosaicos, pero conserva todas sus demás propiedades. Las superposiciones de mosaicos son visibles de forma predeterminada.
Parámetros
visible | true para que esta superposición sea visible. false para que sea invisible.
|
---|
público anular setZIndex (Índice z de número de punto flotante)
Establece el zIndex de esta superposición de mosaicos. Consulta la documentación al principio de esta clase para obtener más información información.
Parámetros
zIndex | el zIndex de esta superposición de mosaicos. |
---|