DOM elements

Classe OverlayView

google.maps.OverlayView classe

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

Eredita da questo corso impostando il prototipo del tuo overlay: MyOverlay.prototype = new google.maps.OverlayView();. È garantito che il costruttore OverlayView sia una 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(), dovresti 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) al metodo onRemove(). Il metodo setMap() può essere richiamato al momento della costruzione o in qualsiasi momento successivo, quando l'overlay deve essere visualizzato di nuovo dopo la rimozione. Il metodo draw() viene quindi chiamato ogni volta che una proprietà della mappa cambia che potrebbe cambiare la posizione dell'elemento, ad esempio zoom, centro o tipo di mappa.

Questa classe estende MVCObject.

Accedi chiamando const {OverlayView} = await google.maps.importLibrary("maps") o const {OverlayView} = await google.maps.importLibrary("streetView"). Consulta la sezione Librerie nell'API Maps JavaScript.

OverlayView
OverlayView()
Parametri: nessuno
Crea un OverlayView.
preventMapHitsAndGesturesFrom
preventMapHitsAndGesturesFrom(element)
Parametri: 
Valore restituito: nessuno
Impedisce la comparsa di eventi di clic, tocco, trascinamento e ruota sull'elemento sulla mappa. Utilizza questa opzione per impedire il trascinamento e lo zoom sulla mappa, nonché per evitare di mappare gli eventi di "clic".
preventMapHitsFrom
preventMapHitsFrom(element)
Parametri: 
Valore restituito: nessuno
Impedisce di fare clic o toccare l'elemento da bubbling fino alla mappa. Utilizza questa opzione per impedire alla mappa di attivare eventi "clic".
draw
draw()
Parametri: nessuno
Valore restituito: nessuno
Implementa questo metodo per disegnare o aggiornare l'overlay. Utilizza la posizione da projection.fromLatLngToDivPixel() per posizionare correttamente l'overlay rispetto ai MapPanes. Questo metodo viene richiamato dopo onAdd() e in caso di cambio di zoom o centro. Con questo metodo non è consigliabile eseguire operazioni costose dal punto di vista dell'elaborazione.
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 dell'elemento OverlayView. I riquadri non vengono inizializzati finché l'API non chiama onAdd.
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: nessuno
Implementa questo metodo per inizializzare gli elementi DOM in overlay. Questo metodo viene chiamato una volta dopo la chiamata a setMap() con una mappa valida. A questo punto, i riquadri e la proiezione sono stati inizializzati.
onRemove
onRemove()
Parametri: nessuno
Valore restituito: nessuno
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 di MapPanes

Interfaccia google.maps.MapPanes

floatPane
Tipo:  Element
Questo riquadro contiene la finestra informativa. Si trova sopra tutti gli overlay mappa. (Pagina 4).
mapPane
Tipo:  Element
Questo è il riquadro più in basso e si trova sopra i riquadri. Non riceve eventi DOM. (Pagina 0).
markerLayer
Tipo:  Element
Questo riquadro contiene indicatori. Non riceve eventi DOM. (Riquadro 2).
overlayLayer
Tipo:  Element
Questo riquadro contiene polilinee, poligoni, overlay del suolo e overlay dei livelli dei riquadri. Non riceve eventi DOM. (Pagina 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 di disegno. Non è garantito che venga inizializzato fino alla chiamata del disegno.

fromContainerPixelToLatLng
fromContainerPixelToLatLng(pixel[, noClampNoWrap])
Parametri: 
  • pixelPoint optional
  • noClampNoWrapboolean optional
Valore restituito:  LatLng|null
Calcola le coordinate geografiche dalle coordinate in pixel nel container della mappa.
fromDivPixelToLatLng
fromDivPixelToLatLng(pixel[, noClampNoWrap])
Parametri: 
  • pixelPoint optional
  • noClampNoWrapboolean optional
Valore restituito:  LatLng|null
Calcola le coordinate geografiche dalle coordinate in pixel nel div che contiene la mappa trascinabile.
fromLatLngToContainerPixel
fromLatLngToContainerPixel(latLng)
Parametri: 
Valore restituito:  Point|null
Calcola le coordinate in pixel della posizione geografica specificata nell'elemento container della mappa.
fromLatLngToDivPixel
fromLatLngToDivPixel(latLng)
Parametri: 
Valore restituito:  Point|null
Calcola le coordinate in pixel della posizione geografica specificata nell'elemento DOM che contiene la mappa trascinabile.
getVisibleRegion
getVisibleRegion()
Parametri: nessuno
Valore restituito:  VisibleRegion|null
L'area visibile della mappa. Restituisce null se la mappa non ha dimensioni. Restituisce null se OverlayView si trova su un 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 orientamento di 90 o 270 gradi, questo corrisponde all'estensione dei pixel sull'asse Y.