DOM elements

Classe OverlayView

google.maps.OverlayView classe
estende MVCObject
biblioteca "maps", "streetView"

Implemente essa classe se quiser exibir tipos personalizados de objetos de sobreposição no mapa.

Herde dessa classe definindo o protótipo da 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 os adicione como filhos dos painéis.
  • No método draw(), posicione esses elementos.
  • No método onRemove(), remova os objetos do DOM.
É necessário chamar setMap() com um objeto Map válido para acionar a chamada ao 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 em qualquer momento posterior, 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.

const {OverlayView} = await google.maps.importLibrary("maps");
ou
const {OverlayView} = await google.maps.importLibrary("streetView");
OverlayView
OverlayView()
Parâmetros: nenhum
Cria um OverlayView.
preventMapHitsAndGesturesFrom
preventMapHitsAndGesturesFrom(element)
Parâmetros:
Valor de retorno: nenhum
Impede que eventos de clique, toque, arrastar e roda no elemento sejam propagados para o mapa. Use essa opção para evitar que o mapa seja arrastado e ampliado, além de impedir eventos de "clique" no mapa.
preventMapHitsFrom
preventMapHitsFrom(element)
Parâmetros:
Valor de retorno: nenhum
Impede que o clique ou toque no elemento seja propagado para o mapa. Use isso para evitar que o mapa acione eventos de "clique".
draw
draw()
Parâmetros: nenhum
Valor de retorno: void
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 após onAdd() e é chamado na mudança de zoom ou centro. 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 esse OverlayView. A projeção não é inicializada até que onAdd seja chamado pela API.
onAdd
onAdd()
Parâmetros: nenhum
Valor de retorno: void
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: void
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

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.

fromContainerPixelToLatLng
fromContainerPixelToLatLng(pixel[, noClampNoWrap])
Parâmetros:
  • pixel: Point optional
  • noClampNoWrap: boolean optional
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:
  • pixel: Point optional
  • noClampNoWrap: boolean optional
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 da localização geográfica informada no elemento de 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.