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 formas de especificar la posición de la superposición de suelo:
- Con una ubicación: Debes proporcionar una imagen de la superposición de suelo, un
LatLng
en el que se fijará el ancla y el ancho de la superposición (en metros). De forma predeterminada, el anclaje está un 50% desde la parte superior de la imagen y un 50% desde la izquierda de ella. Esto se puede cambiar. De manera opcional, puedes proporcionar la altura de la superposición (en metros). Si no proporcionas la altura de la superposición, se calculará automáticamente para conservar las proporciones de la imagen. - Usa un límite: Debes proporcionar un
LatLngBounds
que contendrá la imagen.
IllegalArgumentException
cuando se agregue la superposición de suelo. Además, solo debes especificar la posición usando uno de estos métodos en el objetoGroundOverlayOptions
; de lo contrario, se arrojará unaIllegalStateException
cuando se especifique con un segundo método. - Con una ubicación: Debes proporcionar una imagen de la superposición de suelo, un
- De imagen
- La imagen (como
BitmapDescriptor
) que se usará para esta superposición Se ajustará la escala de la imagen para adaptarla a la posición proporcionada. Debes especificar una imagen antes de agregar la superposición de suelo al mapa; de lo contrario, se mostrará unaIllegalArgumentException
cuando se agregue al mapa. - Orientación
- Cantidad que se debe rotar la imagen en el sentido de las agujas 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 se alinea para que el Norte quede arriba.
- Índice Z
- Es el orden en el que se dibuja esta superposición de suelo con respecto a otras superposiciones (incluidas
Polyline
yTileOverlay
, pero noMarker
). Una superposición con un zIndex más grande se dibuja sobre las superposiciones con zIndexes más pequeños. El orden de las superposiciones con el mismo valor de zIndex es arbitrario. Esto es opcional y el valor predeterminado de zIndex es 0. - Transparencia
- La transparencia de la superposición de suelo en el rango
[0..1]
, donde0
significa que la superposición es opaca y1
significa que es completamente transparente. Si el mapa de bits especificado ya es parcialmente transparente, se ajustará la transparencia de cada píxel según corresponda (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 como 0.25), se procesará el píxel 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 dibuja en el mapa. No se dibuja una superposición de suelo invisible, pero se conservan todas las demás propiedades.
Esto es opcional y la visibilidad predeterminada es
true
, es decir, visible. - Hacer clic
- 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 objeto
Object
asociado con 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 deben llamarse en el subproceso de la IU de Android. De lo contrario, se arrojará una IllegalStateException
en 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 |
equals(Objeto otro)
Comprueba si este
GroundOverlay es igual a otro. |
flotante |
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.
|
flotante |
getHeight()
Obtiene la altura de la superposición de suelo.
|
String |
getId()
Obtiene este ID de superposición de suelo.
|
LatLng. |
getPosition()
Obtiene la ubicación del punto de anclaje.
|
Objeto |
getTag()
Obtiene la etiqueta para el círculo.
|
flotante |
getTransparency()
Obtiene la transparencia de esta superposición de suelo.
|
flotante |
getWidth().
Obtiene el ancho de la superposición de suelo.
|
flotante |
getZIndex()
Obtiene el zIndex de esta superposición de suelo.
|
int |
hashCode()
|
boolean |
isClickable()
Obtiene la posibilidad de hacer clic en la superposición de suelo.
|
boolean |
esVisible()
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 a 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 clic en la superposición de suelo.
|
void |
setDimensions(ancho flotante, altura 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 al cambiar la ubicación del punto de anclaje.
|
void |
setPositionFromBounds(límites LatLngBounds)
Establece la posición de la superposición de suelo ajustándola a la
LatLngBounds especificada. |
void |
setTag(etiqueta de objeto)
Establece la etiqueta para la superposición de suelo.
|
void |
setTransparency(transparencia 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
Booleano público es igual a (Otro objeto)
Comprueba si este GroundOverlay
es igual a otro.
Parámetros
otro | un Object |
---|
Resultado que se muestra
- true si ambos objetos son el mismo objeto, es decir, esto == otro.
public float getBearing ()
Obtiene el rumbo de la superposición de suelo en grados en sentido horario, partiendo del norte.
Resultado que se muestra
- el rumbo de la superposición de suelo.
público LatLngBounds getBounds ()
Obtiene los límites de la superposición de suelo. Ignora la rotación de la superposición de suelo.
Resultado que se muestra
- Un objeto
LatLngBounds
que contiene la superposición de suelo y se ignora la rotación.
public float getHeight ()
Obtiene la altura de la superposición de suelo.
Resultado que se muestra
- la altura de la superposición de suelo en metros.
public String getId ()
Obtiene este ID de superposición de suelo. El ID será único entre todas las superposiciones de suelo de un mapa.
Resultado que se muestra
- esta superposición de suelo.
público LatLng getPosition ()
Obtiene la ubicación del punto de anclaje.
Resultado que se muestra
- la posición en el mapa (un objeto
LatLng
).
public Object getTag ()
Obtiene la etiqueta para el círculo.
Resultado que se muestra
- la etiqueta si se configuró una etiqueta con
setTag
;null
si no se configuró ninguna.
public float getTransparency ()
Obtiene la transparencia de esta superposición de suelo.
Resultado que se muestra
- la transparencia de esta superposición de suelo.
flotante público getWidth ()
Obtiene el ancho de la superposición de suelo.
Resultado que se muestra
- el ancho de la superposición de suelo en metros.
flotante público getZIndex ()
Obtiene el zIndex de esta superposición de suelo.
Resultado que se muestra
- el índice Z de la superposición de suelo.
public int hashCode ()
Booleano público isClickable ()
Obtiene la posibilidad de hacer clic en la superposición de suelo. Si se puede hacer clic en la superposición de suelo, tu app recibirá notificaciones para GoogleMap.OnGroundOverlayClickListener
cuando el usuario haga clic en ella. El objeto de escucha de eventos se registra mediante setOnGroundOverlayClickListener(GoogleMap.OnGroundOverlayClickListener)
.
Resultado que se muestra
true
si se puede hacer clic en la superposición de suelo; de lo contrario, muestrafalse
.
Booleano público isVisible ()
Obtiene la visibilidad de esta superposición de suelo. Ten en cuenta que esto no muestra si la superposición de suelo está en pantalla, sino si se dibujará si está contenida en la ventana gráfica de la cámara.
Resultado que se muestra
- visibilidad de esta superposición de suelo.
vacío público quitar ()
Elimina esta superposición de suelo del mapa. Después de quitar una superposición de suelo, el comportamiento de todos sus métodos no está definido.
vacío público setBearing (rumbo flotante)
Establece el rumbo de la superposición de suelo (la dirección a 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 sentido horario a partir del norte |
---|
vacío público setClickable (booleano en el que se puede hacer clic)
Establece la posibilidad de hacer clic en la superposición de suelo. Si se puede hacer clic en la superposición de suelo, tu app recibirá notificaciones para GoogleMap.OnGroundOverlayClickListener
cuando el usuario haga clic en ella. El objeto de escucha de eventos se registra mediante setOnGroundOverlayClickListener(GoogleMap.OnGroundOverlayClickListener)
.
Parámetros
se le puede hacer clic | Nueva configuración de clic para la superposición de suelo. |
---|
vacío público setDimensions (ancho flotante, altura flotante)
Establece las dimensiones de la superposición de suelo. La imagen se estirará para ajustarse a las dimensiones.
Parámetros
ancho | ancho en metros |
---|---|
alto | altura en metros |
vacío público 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 |
---|
vacío público setImage (DescriptorDescriptor imageDescriptor)
Establece la imagen de la superposición de suelo. La imagen nueva ocupará los mismos límites que la imagen anterior.
Parámetros
imagenDescriptor | el BitmapDescriptor que se usará para esta superposición de suelo.
|
---|
vacío público setPosition (LatLng latLng)
Establece la posición de la superposición de suelo al cambiar la ubicación del punto de anclaje. Conserva todas las demás propiedades de la imagen.
Parámetros
latLng | Un LatLng es la nueva ubicación para colocar el punto de anclaje.
|
---|
void público setPositionFromBounds (BoundBounds límites)
Establece la posición de la superposición de suelo ajustándola a la LatLngBounds
especificada. Este método ignorará la rotación (rumbo) de la superposición de suelo cuando se la coloque, pero se seguirá usando cuando se dibuje.
Parámetros
límites | un elemento LatLngBounds en el que se colocará la superposición de suelo
|
---|
vacío público setTag (etiqueta de objeto)
Establece la etiqueta para la superposición de suelo.
Puedes usar esta propiedad para asociar un 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
correspondiente 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 la app.
Parámetros
etiqueta de política | Si es nulo, la etiqueta se borra. |
---|
vacío público setTransparency (transparencia 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 , que es transparente.
|
---|
vacío público setVisible (booleano visible)
Establece la visibilidad de esta superposición de suelo. Cuando no es visible, no se dibuja una superposición de suelo, pero conserva todas las demás propiedades.
Parámetros
visible | si es true , entonces la superposición de suelo es visible; si es false , no es
|
---|
public void 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
Índice Z | el índice Z de esta superposición de suelo |
---|