Classe OverlayView
Classe
google.maps.OverlayView
Implemente essa classe se quiser exibir tipos personalizados de objetos de sobreposição no mapa.
Herde dessa classe definindo o protótipo da sua sobreposição: MyOverlay.prototype = new google.maps.OverlayView();
. O construtor OverlayView
é garantido como uma função vazia.
É necessário implementar três métodos: onAdd()
, draw()
e onRemove()
.
- No método
onAdd()
, crie objetos DOM e adicione-os como filhos dos painéis. - No método
draw()
, posicione esses elementos. - No método
onRemove()
, remova os objetos do DOM.
setMap()
com um objeto Map
válido para acionar a chamada para o método onAdd()
e setMap(null)
para acionar o método onRemove()
. O método setMap()
pode ser chamado no momento da construção ou a qualquer momento depois, quando a sobreposição precisar ser mostrada novamente após a remoção. O método draw()
será chamado sempre que uma propriedade do mapa mudar e puder alterar a posição do elemento, como zoom, centro ou tipo de mapa.
Essa classe estende
MVCObject
.
Acesse chamando const {OverlayView} = await google.maps.importLibrary("maps")
ou const {OverlayView} = await google.maps.importLibrary("streetView")
.
Consulte Bibliotecas na API Maps JavaScript.
Construtor | |
---|---|
OverlayView |
OverlayView() Parâmetros:nenhum
Cria um OverlayView . |
Métodos estáticos | |
---|---|
preventMapHitsAndGesturesFrom |
preventMapHitsAndGesturesFrom(element) Parâmetros:
Valor de retorno:nenhum
Impede que eventos de clique, toque, arrasto e roda do elemento sejam propagados para o mapa. Use isso para evitar arrastar e aumentar o zoom do mapa, além de eventos de "clique" no mapa. |
preventMapHitsFrom |
preventMapHitsFrom(element) Parâmetros:
Valor de retorno:nenhum
Impede que o clique ou toque no elemento se propague até o mapa. Use isso para evitar que o mapa acione eventos de "clique". |
Métodos | |
---|---|
draw |
draw() Parâmetros:nenhum
Valor de retorno:nenhum
Implemente esse método para desenhar ou atualizar a sobreposição. Use a posição de projection.fromLatLngToDivPixel() para posicionar corretamente a sobreposição em relação aos MapPanes. Esse método é chamado depois de onAdd() e quando o zoom ou o centro muda. Não é recomendável fazer trabalhos computacionalmente caros nesse método. |
getMap |
getMap() Parâmetros:nenhum
Valor de retorno:
Map|StreetViewPanorama |
getPanes |
getPanes() Parâmetros:nenhum
Valor de retorno:
MapPanes|null Retorna os painéis nos quais essa OverlayView pode ser renderizada. Os painéis não são inicializados até que onAdd seja chamado pela API. |
getProjection |
getProjection() Parâmetros:nenhum
Valor de retorno:
MapCanvasProjection Retorna o objeto MapCanvasProjection associado a este OverlayView . A projeção não é inicializada até que onAdd seja chamada pela API. |
onAdd |
onAdd() Parâmetros:nenhum
Valor de retorno:nenhum
Implemente esse método para inicializar os elementos DOM de sobreposição. Esse método é chamado uma vez após setMap() ser chamado com um mapa válido. Nesse ponto, os painéis e a projeção terão sido inicializados. |
onRemove |
onRemove() Parâmetros:nenhum
Valor de retorno:nenhum
Implemente esse método para remover os seus elementos do DOM. Esse método é chamado uma vez após uma chamada para setMap(null). |
setMap |
setMap(map) Parâmetros:
Valor de retorno:nenhum
Adiciona uma superposição ao mapa ou panorama. |
Herdado:addListener ,
bindTo ,
get ,
notify ,
set ,
setValues ,
unbind ,
unbindAll
|
Interface MapPanes
Interface google.maps.MapPanes
Propriedades | |
---|---|
floatPane |
Tipo:
Element Este painel contém a janela de informações. Fica acima de todas as sobreposições do mapa (Painel 4). |
mapPane |
Tipo:
Element Este é o painel mais baixo e fica acima dos blocos. Ele não recebe eventos DOM. (painel 0). |
markerLayer |
Tipo:
Element Este painel contém marcadores. Ele não recebe eventos DOM. (painel 2). |
overlayLayer |
Tipo:
Element Este painel contém polilinhas, polígonos, sobreposições de solo e sobreposições de camada de blocos. Ele não recebe eventos DOM. (painel 1). |
overlayMouseTarget |
Tipo:
Element Esse painel contém elementos que recebem eventos DOM. (painel 3). |
Interface MapCanvasProjection
Interface google.maps.MapCanvasProjection
Esse objeto é disponibilizado para o OverlayView
no método de desenho. A inicialização até que draw seja chamado não é garantida.
Métodos | |
---|---|
fromContainerPixelToLatLng |
fromContainerPixelToLatLng(pixel[, noClampNoWrap]) Parâmetros:
Valor de retorno:
LatLng|null Calcula as coordenadas geográficas a partir das coordenadas em pixels no recipiente do mapa. |
fromDivPixelToLatLng |
fromDivPixelToLatLng(pixel[, noClampNoWrap]) Parâmetros:
Valor de retorno:
LatLng|null Calcula as coordenadas geográficas a partir das coordenadas em pixels no div que contém o mapa arrastável. |
fromLatLngToContainerPixel |
fromLatLngToContainerPixel(latLng) Parâmetros:
Valor de retorno:
Point|null Calcula as coordenadas de pixel do local geográfico especificado no elemento contêiner do mapa. |
fromLatLngToDivPixel |
fromLatLngToDivPixel(latLng) Parâmetros:
Valor de retorno:
Point|null Calcula as coordenadas em pixels do local geográfico especificado no elemento DOM que contém o mapa arrastável. |
getVisibleRegion |
getVisibleRegion() Parâmetros:nenhum
Valor de retorno:
VisibleRegion|null A região visível do mapa. Retorna null se o mapa não tiver tamanho. Retorna null se o OverlayView estiver em um StreetViewPanorama. |
getWorldWidth |
getWorldWidth() Parâmetros:nenhum
Valor de retorno:
number A largura do mundo em pixels no nível de zoom atual. Para projeções com um ângulo de direção de 90 ou 270 graus, isso corresponde ao intervalo de pixels no eixo Y. |