.
Una superposición de suelo es una imagen que se fija a un mapa. Una superposición de suelo tiene las siguientes propiedades:
- Cargo
- Existen dos maneras de especificar la posición de la superposición de suelo:
- Uso de una ubicación: Debes proporcionar una imagen de la superposición de suelo, una
LatLng
a la que se fijará el anclaje y el ancho de la superposición (en metros). De forma predeterminada, el anclaje se encuentra un 50% desde la parte superior de la imagen y un 50% desde su izquierda. Esto se puede cambiar. De manera opcional, puedes proporcionar la altura de la superposición (en metros). De lo contrario, esta se calculará automáticamente para conservar las proporciones de la imagen. - Uso de límites: Debes proporcionar un
LatLngBounds
que contendrá la imagen.
IllegalArgumentException
cuando esta se agregue al mapa. Además, solo debes especificar la posición con uno de estos métodos en el objetoGroundOverlayOptions
; de lo contrario, se arrojará unaIllegalStateException
cuando se especifique con un segundo método. - Uso de una ubicación: Debes proporcionar una imagen de la superposición de suelo, una
- Imagen
- Es la imagen (como
BitmapDescriptor
) que se usará en esta superposición. La imagen se ajustará para que se ajuste a la posición proporcionada. Debes especificar una imagen antes de agregar la superposición de suelo al mapa. De lo contrario, se arrojará unaIllegalArgumentException
cuando lo agregues al mapa. - Rumbo
- Es la cantidad a la que se debe rotar la imagen en el sentido de las manecillas del reloj. El centro de la rotación será el ancla de la imagen. Esto es opcional, y el rumbo predeterminado es 0; es decir, la imagen está alineada de modo que la dirección hacia arriba sea el norte.
- zIndex
- Es el orden en el que se dibuja esta superposición de suelo con respecto a otras superposiciones (incluidos los objetos
Polyline
yTileOverlay
, pero no losMarker
). Una superposición con un zIndex más grande se dibuja sobre las superposiciones con zIndex más pequeños. El orden de las superposiciones con el mismo valor de zIndex es arbitrario. Esto es opcional, y el valor predeterminado del zIndex es 0. - Transparencia
- Transparencia de la superposición de suelo en el rango
[0..1]
, en el que0
significa que la superposición es opaca y1
significa que es completamente transparente. Si el mapa de bits especificado es parcialmente transparente, la transparencia de cada píxel se ajustará 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 suelo en 0.25, el píxel se renderizará en la pantalla con un valor alfa de 150). La especificación de esta propiedad es opcional y la transparencia predeterminada es 0 (opaco). - Visibilidad
- Indica si la superposición de suelo es visible o invisible, es decir, si se dibujó en el mapa. Una superposición de suelo invisible no se dibuja, pero conserva todas las demás propiedades.
Esto es opcional, y la visibilidad predeterminada es
true
, es decir, visible. - Posibilidad de hacer clics
- Si deseas controlar los eventos que se activan cuando el usuario hace clic en la superposición de suelo, establece esta propiedad en
true
. Puedes cambiar este valor en cualquier momento. El valor predeterminado esfalse
. Si esta propiedad se configura comotrue
, tu app recibirá notificaciones para elGoogleMap.OnGroundOverlayClickListener
registrado a través desetOnGroundOverlayClickListener(GoogleMap.OnGroundOverlayClickListener)
. - Etiqueta
- Es un
Object
asociado a la superposición de suelo. Por ejemplo,Object
puede contener datos sobre lo que representa la superposición de suelo. Esto es más fácil que almacenar unMap<GroundOverlay, Object>
separado. Como otro ejemplo, puedes asociar un ID deString
correspondiente al ID de un conjunto de datos. El SDK de Google Maps para Android no lee ni escribe esta propiedad.
Los métodos de esta clase se deben llamar en el subproceso de IU de Android. De lo contrario, se arrojará una IllegalStateException
durante el tiempo de ejecución.
Ejemplo
GoogleMap map = ...; // get a map.
BitmapDescriptor imageDescriptor = ...; // get an image.
LatLngBounds bounds = ...; // get a bounds
// Adds a ground overlay with 50% transparency.
GroundOverlay groundOverlay = map.addGroundOverlay(new GroundOverlayOptions()
.image(imageDescriptor)
.positionFromBounds(bounds)
.transparency(0.5));
Resumen de métodos públicos
boolean |
es igual a(Otro objeto)
Comprueba si este
GroundOverlay es igual a otro. |
float |
getBearing()
Obtiene el rumbo de la superposición de suelo en grados en sentido horario partiendo del norte.
|
LatLngBounds |
getBounds()
Obtiene los límites de la superposición de suelo.
|
float |
getHeight()
Obtiene la altura de la superposición de suelo.
|
Cadena |
getId()
Obtiene el ID de esta superposición de suelo.
|
LatLng |
getPosition()
Obtiene la ubicación del punto de anclaje.
|
Objeto |
getTag()
Obtiene la etiqueta del círculo.
|
float |
getTransparency()
Obtiene la transparencia de esta superposición de suelo.
|
float |
getWidth()
Obtiene el ancho de la superposición de suelo.
|
float |
getZIndex()
Obtiene el zIndex de esta superposición de suelo.
|
int |
hashCode()
|
boolean |
isClickable()
Obtiene la posibilidad de hacer clics en la superposición de suelo.
|
boolean |
isVisible()
Obtiene la visibilidad de esta superposición de suelo.
|
void |
remove()
Elimina esta superposición de suelo del mapa.
|
void |
setBearing(rumbo flotante)
Establece el rumbo de la superposición de suelo (la dirección en la que apunta el eje vertical de la superposición de suelo) en grados en sentido horario partiendo del norte.
|
void |
setClickable(booleano en el que se puede hacer clic)
Establece la posibilidad de hacer clics en la superposición de suelo.
|
void |
setDimensions(ancho flotante, altura del número flotante)
Establece las dimensiones de la superposición de suelo.
|
void |
setDimensions(ancho flotante)
Establece el ancho de la superposición de suelo.
|
void | |
void |
setPosition(LatLng latLng)
Establece la posición de la superposición de suelo cambiando la ubicación del punto de anclaje.
|
void |
setPositionFromBounds(límites de LatLngBounds)
Establece la posición de la superposición de suelo ajustándola al
LatLngBounds determinado. |
void |
setTag(etiqueta de objeto)
Establece la etiqueta de la superposición de suelo.
|
void |
setTransparency(transparencia de número de punto flotante)
Establece la transparencia de esta superposición de suelo.
|
void |
setVisible(booleano visible)
Establece la visibilidad de esta superposición de suelo.
|
void |
setZIndex(zIndex flotante)
Establece el zIndex de esta superposición de suelo.
|
Resumen de métodos heredados
Métodos públicos
público booleano es igual a (otro objeto)
Comprueba si este GroundOverlay
es igual a otro.
Parámetros
otro | un objeto Object . |
---|
Devuelve
- true si ambos objetos son el mismo objeto, es decir, este == otro.
public float getBearing ()
Obtiene el rumbo de la superposición de suelo en grados en sentido horario partiendo del norte.
Devuelve
- el rumbo de la superposición de suelo.
public LatLngBounds getBounds ()
Obtiene los límites de la superposición de suelo. Se ignora la rotación de la superposición de suelo.
Devuelve
- Un
LatLngBounds
que contiene la superposición de suelo, ignorando la rotación
public float getHeight ()
Obtiene la altura de la superposición de suelo.
Devuelve
- la altura de la superposición de suelo en metros.
String pública getId ()
Obtiene el ID de esta superposición de suelo. El id será único entre todos los GroundOverlays de un mapa.
Devuelve
- el ID de esta superposición de suelo.
público LatLng getPosition ()
Obtiene la ubicación del punto de anclaje.
Devuelve
- la posición en el mapa (un
LatLng
)
objeto público getTag ()
Obtiene la etiqueta del círculo.
Devuelve
- la etiqueta si se configuró con
setTag
;null
si no se estableció ninguna
público flotante getTransparency ()
Obtiene la transparencia de esta superposición de suelo.
Devuelve
- la transparencia de esta superposición de suelo.
public float getWidth ()
Obtiene el ancho de la superposición de suelo.
Devuelve
- el ancho de la superposición de suelo en metros.
public float getZIndex ()
Obtiene el zIndex de esta superposición de suelo.
Devuelve
- el zIndex de la superposición de suelo.
public int hashCode ()
público booleano isClickable ()
Obtiene la posibilidad de hacer clics en la superposición de suelo. Si se puede hacer clic en la superposición de suelo, tu app recibirá notificaciones al GoogleMap.OnGroundOverlayClickListener
cuando el usuario haga clic en la superposición de suelo. El objeto de escucha de eventos se registra a través de setOnGroundOverlayClickListener(GoogleMap.OnGroundOverlayClickListener)
.
Devuelve
true
si se puede hacer clic en la superposición de suelo; de lo contrario, muestrafalse
.
público booleano isVisible ()
Obtiene la visibilidad de esta superposición de suelo. Ten en cuenta que no se muestra si la superposición de suelo realmente está en pantalla, sino si se dibujará si está contenida en el viewport de la cámara.
Devuelve
- la visibilidad de esta superposición de suelo.
public void remove ()
Elimina esta superposición de suelo del mapa. Una vez que se quita una superposición de suelo, no se define el comportamiento de ninguno de sus métodos.
público público setBearing (rumbo de número de punto flotante)
Establece el rumbo de la superposición de suelo (la dirección en la que apunta el eje vertical de la superposición de suelo) en grados en sentido horario partiendo del norte. La rotación se realiza sobre el punto de anclaje.
Parámetros
bearing | rumbo en grados en el sentido de las manecillas del reloj desde el norte |
---|
público público setClickable (booleano en el que se puede hacer clic)
Establece la posibilidad de hacer clics en la superposición de suelo. Si se puede hacer clic en la superposición de suelo, tu app recibirá notificaciones al GoogleMap.OnGroundOverlayClickListener
cuando el usuario haga clic en la superposición de suelo. El objeto de escucha de eventos se registra a través de setOnGroundOverlayClickListener(GoogleMap.OnGroundOverlayClickListener)
.
Parámetros
se le puede hacer clic | Nueva configuración de posibilidad de hacer clics para la superposición de suelo. |
---|
public void setDimensions (float width, float height)
Establece las dimensiones de la superposición de suelo. La imagen se estirará para que se ajuste a las dimensiones correspondientes.
Parámetros
ancho | ancho en metros |
---|---|
alto | altura en metros |
public void setDimensions (ancho flotante)
Establece el ancho de la superposición de suelo. La altura de la superposición de suelo se adaptará en consecuencia para preservar la relación de aspecto.
Parámetros
ancho | ancho en metros |
---|
público void setImage (BitmapDescriptor imageDescriptor)
Establece la imagen para la superposición de suelo. La imagen nueva ocupará los mismos límites que la imagen anterior.
Parámetros
imageDescriptor | El BitmapDescriptor que se usará para esta superposición de suelo
|
---|
público público setPosition (LatLng latLng)
Establece la posición de la superposición de suelo cambiando la ubicación del punto de anclaje. Conserva todas las demás propiedades de la imagen.
Parámetros
latLng | Un objeto LatLng , que es la nueva ubicación para colocar el punto de anclaje.
|
---|
público void setPositionFromBounds (límites de LatLngBounds)
Establece la posición de la superposición de suelo ajustándola al LatLngBounds
determinado. Este método ignorará la rotación (rumbo) de la superposición de suelo al posicionarla, pero el rumbo se seguirá usando cuando se dibuje.
Parámetros
límites | Un objeto LatLngBounds en el que se debe colocar la superposición de suelo
|
---|
public void setTag (etiqueta de objeto)
Establece la etiqueta de la superposición de suelo.
Puedes usar esta propiedad para asociar un elemento Object
arbitrario con esta superposición de suelo.
Por ejemplo, Object
puede contener datos sobre lo que representa la superposición de suelo. Esto es más fácil que almacenar un Map<GroundOverlay, Object>
separado. Como otro ejemplo, puedes asociar un ID de String
que corresponde al ID de un conjunto de datos. El SDK de Google Maps para Android no lee ni escribe esta propiedad. Es tu responsabilidad llamar a setTag(null)
para borrar la etiqueta cuando ya no la necesites y evitar fugas de memoria en tu app.
Parámetros
etiqueta de política | si es nulo, se borra la etiqueta. |
---|
público void setTransparency (transparencia de número de punto flotante)
Establece la transparencia de esta superposición de suelo. Consulta la documentación en la parte superior de esta clase para obtener más información.
Parámetros
transparencia | un número de punto flotante en el rango [0..1] , donde 0 significa que la superposición de suelo es opaca y 1 significa que la superposición de suelo es transparente.
|
---|
público público setVisible (boolean visible)
Establece la visibilidad de esta superposición de suelo. Cuando no está visible, una superposición de suelo no se dibuja, pero conserva todas las demás propiedades.
Parámetros
visible | Si es true , la superposición de suelo es visible; si es false , no es visible.
|
---|
público público setZIndex (float zIndex)
Establece el zIndex de esta superposición de suelo. Consulta la documentación en la parte superior de esta clase para obtener más información.
Parámetros
zIndex | el zIndex de esta superposición de suelo |
---|