DOM elements

Classe OverlayView

google.maps.OverlayView class
extends MVCObject
library "maps", "streetView"

Puoi implementare questa classe se vuoi visualizzare tipi personalizzati di oggetti overlay sulla mappa.

Eredita da questa classe impostando il prototipo dell'overlay: MyOverlay.prototype = new google.maps.OverlayView();. Il costruttore OverlayView è garantito come funzione vuota.

Devi implementare tre metodi: onAdd(), draw() e onRemove().

  • Nel metodo onAdd(), devi creare oggetti DOM e aggiungerli come elementi secondari dei riquadri.
  • Nel metodo draw(), devi posizionare questi elementi.
  • Nel metodo onRemove(), devi rimuovere gli oggetti dal DOM.
Devi chiamare setMap() con un oggetto Map valido per attivare la chiamata al metodo onAdd() e setMap(null) per attivare il metodo onRemove(). Il metodo setMap() può essere chiamato al momento della creazione o in qualsiasi momento successivo, quando l'overlay deve essere mostrato di nuovo dopo la rimozione. Il metodo draw() verrà quindi chiamato ogni volta che cambia una proprietà della mappa che potrebbe modificare la posizione dell'elemento, ad esempio lo zoom, il centro o il tipo di mappa.

const {OverlayView} = await google.maps.importLibrary("maps");
o
const {OverlayView} = await google.maps.importLibrary("streetView");
OverlayView
OverlayView()
Parametri: nessuno
Crea un OverlayView.
preventMapHitsAndGesturesFrom
preventMapHitsAndGesturesFrom(element)
Parametri:
Valore restituito: nessuno
Impedisce che gli eventi di clic, tocco, trascinamento e rotellina sull'elemento vengano propagati alla mappa. Utilizza questa opzione per impedire il trascinamento e lo zoom della mappa, nonché gli eventi di "clic" sulla mappa.
preventMapHitsFrom
preventMapHitsFrom(element)
Parametri:
Valore restituito: nessuno
Impedisce che il clic o il tocco sull'elemento si propaghi alla mappa. Utilizza questa opzione per impedire alla mappa di attivare eventi "click".
draw
draw()
Parametri: nessuno
Valore restituito: void
Implementa questo metodo per disegnare o aggiornare l'overlay. Utilizza la posizione di projection.fromLatLngToDivPixel() per posizionare correttamente l'overlay rispetto ai MapPane. Questo metodo viene chiamato dopo onAdd() e viene chiamato in caso di modifica dello zoom o del centro. Non è consigliabile eseguire operazioni con un elevato carico di calcolo in questo metodo.
getMap
getMap()
Parametri: nessuno
Valore restituito: Map|StreetViewPanorama
getPanes
getPanes()
Parametri: nessuno
Valore restituito: MapPanes|null
Restituisce i riquadri in cui è possibile eseguire il rendering di questo OverlayView. I riquadri non vengono inizializzati finché onAdd non viene chiamato dall'API.
getProjection
getProjection()
Parametri: nessuno
Valore restituito: MapCanvasProjection
Restituisce l'oggetto MapCanvasProjection associato a questo OverlayView. La proiezione non viene inizializzata finché l'API non chiama onAdd.
onAdd
onAdd()
Parametri: nessuno
Valore restituito: void
Implementa questo metodo per inizializzare gli elementi DOM dell'overlay. Questo metodo viene chiamato una volta dopo che setMap() è stato chiamato con una mappa valida. A questo punto, i riquadri e la proiezione saranno stati inizializzati.
onRemove
onRemove()
Parametri: nessuno
Valore restituito: void
Implementa questo metodo per rimuovere gli elementi dal DOM. Questo metodo viene chiamato una volta dopo una chiamata a setMap(null).
setMap
setMap(map)
Parametri:
Valore restituito: nessuno
Aggiunge l'overlay alla mappa o alla panoramica.
Ereditate: addListener, bindTo, get, notify, set, setValues, unbind, unbindAll

Interfaccia MapPanes

Interfaccia google.maps.MapPanes

floatPane
Tipo: Element
Questo riquadro contiene la finestra informativa. Si trova sopra tutti gli overlay mappa. (Riquadro 4).
mapPane
Tipo: Element
Questo riquadro è il più basso e si trova sopra i riquadri. Non riceve eventi DOM. (Riquadro 0).
markerLayer
Tipo: Element
Questo riquadro contiene indicatori. Non riceve eventi DOM. (Riquadro 2).
overlayLayer
Tipo: Element
Questo riquadro contiene polilinee, poligoni, overlay del terreno e overlay di livelli di riquadri. Non riceve eventi DOM. (Riquadro 1).
overlayMouseTarget
Tipo: Element
Questo riquadro contiene elementi che ricevono eventi DOM. (Riquadro 3).

Interfaccia MapCanvasProjection

Interfaccia google.maps.MapCanvasProjection

Questo oggetto viene reso disponibile per OverlayView dall'interno del metodo draw. Non è garantito che venga inizializzato finché non viene chiamato draw.

fromContainerPixelToLatLng
fromContainerPixelToLatLng(pixel[, noClampNoWrap])
Parametri:
  • pixel: Point optional
  • noClampNoWrap: boolean optional
Valore restituito: LatLng|null
Calcola le coordinate geografiche dalle coordinate pixel nel container della mappa.
fromDivPixelToLatLng
fromDivPixelToLatLng(pixel[, noClampNoWrap])
Parametri:
  • pixel: Point optional
  • noClampNoWrap: boolean optional
Valore restituito: LatLng|null
Calcola le coordinate geografiche dalle coordinate pixel nel div che contiene la mappa trascinabile.
fromLatLngToContainerPixel
fromLatLngToContainerPixel(latLng)
Parametri:
Valore restituito: Point|null
Calcola le coordinate pixel della posizione geografica specificata nell'elemento contenitore della mappa.
fromLatLngToDivPixel
fromLatLngToDivPixel(latLng)
Parametri:
Valore restituito: Point|null
Calcola le coordinate pixel della posizione geografica specificata nell'elemento DOM che contiene la mappa trascinabile.
getVisibleRegion
getVisibleRegion()
Parametri: nessuno
Valore restituito: VisibleRegion|null
La regione visibile della mappa. Restituisce null se la mappa non ha dimensioni. Restituisce null se OverlayView si trova su un oggetto StreetViewPanorama.
getWorldWidth
getWorldWidth()
Parametri: nessuno
Valore restituito: number
La larghezza del mondo in pixel nel livello di zoom corrente. Per le proiezioni con un angolo di direzione di 90 o 270 gradi, questo valore corrisponde all'intervallo di pixel nell'asse Y.