Classe OverlayView
lezione google.maps.OverlayView
Puoi implementare questa classe se vuoi visualizzare tipi personalizzati di oggetti in overlay sulla mappa.
Eredita da questa classe impostando il prototipo dell'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()
, devi posizionare questi elementi. - Nel metodo
onRemove()
, devi rimuovere gli oggetti dal DOM.
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 costruzione o in qualsiasi momento successivo, quando l'overlay deve essere mostrato nuovamente dopo la rimozione. Il metodo draw()
verrà quindi chiamato ogni volta che una proprietà della mappa cambia e potrebbe cambiare la posizione dell'elemento, come lo zoom, il centro o il tipo di mappa.
Questo corso estende
MVCObject
.
Accesso chiamando const {OverlayView} = await google.maps.importLibrary("maps")
o const {OverlayView} = await google.maps.importLibrary("streetView")
. Consulta la sezione Librerie nell'API Maps JavaScript.
Costruttore | |
---|---|
OverlayView |
OverlayView() Parametri: nessuno
Crea un OverlayView . |
Metodi statici | |
---|---|
preventMapHitsAndGesturesFrom |
preventMapHitsAndGesturesFrom(element) Parametri:
Valore di restituzione: nessuno
Consente di interrompere gli eventi di clic, tocco, trascinamento e rotazione dell'elemento a partire dalla mappa. Utilizzalo per impedire il trascinamento e lo zoom delle mappe, nonché per gli eventi di "clic" delle mappe. |
preventMapHitsFrom |
preventMapHitsFrom(element) Parametri:
Valore di restituzione: nessuno
Consente di interrompere il clic o il tocco dell'elemento dal gonfiare alla mappa. Utilizzala per impedire che la mappa attivi gli eventi di "clic". |
Metodi | |
---|---|
draw |
draw() Parametri: nessuno
Valore di restituzione: nessuno
Implementa questo metodo per disegnare o aggiornare l'overlay. Utilizza la posizione di proiezione.fromLatLngToDivPixel() per posizionare correttamente l'overlay rispetto ai MapPanes. Questo metodo viene richiamato dopo onAdd() e viene modificato al momento dello zoom o del centro. Non è consigliabile eseguire lavori 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 questa visualizzazione overlay. 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 viene inizializzata solo quando onAdd viene chiamato dall'API. |
onAdd |
onAdd() Parametri: nessuno
Valore di restituzione: nessuno
Implementa questo metodo per inizializzare gli elementi DOM in overlay. Questo metodo viene richiamato una volta dopo aver impostato setMap() con una mappa valida. A questo punto, i riquadri e la proiezione saranno stati inizializzati. |
onRemove |
onRemove() Parametri: nessuno
Valore di restituzione: 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 di restituzione: nessuno
Aggiunge l'overlay alla mappa o al panorama. |
Ereditata:
addListener ,
bindTo ,
get ,
notify ,
set ,
setValues ,
unbind ,
unbindAll
|
Interfaccia di MapPanes
google.maps.MapPanes
interfaccia
Proprietà | |
---|---|
floatPane |
Tipo:
Element Questo riquadro contiene la finestra informativa. Sopra ogni overlay di mappa. (Pane 4). |
mapPane |
Tipo:
Element Si tratta del riquadro più in basso e si trova sopra i riquadri. Non riceve eventi DOM. (Pane 0). |
markerLayer |
Tipo:
Element Questo riquadro contiene degli indicatori. Non riceve eventi DOM. (Pane 2). |
overlayLayer |
Tipo:
Element Questo riquadro contiene le polilinee, i poligoni, gli overlay del suolo e gli overlay del livello dei riquadri. Non riceve eventi DOM. (Pane 1). |
overlayMouseTarget |
Tipo:
Element Questo riquadro contiene gli elementi che ricevono gli eventi DOM. (Pane 3). |
Interfaccia di MapCanvasProjection
google.maps.MapCanvasProjection
interfaccia
Questo oggetto viene reso disponibile a OverlayView
dal metodo di disegno. Non è garantito che venga inizializzata fino a quando non viene richiamata l'estrazione.
Metodi | |
---|---|
fromContainerPixelToLatLng |
fromContainerPixelToLatLng(pixel[, noClampNoWrap]) Parametri:
Valore restituito:
LatLng|null Calcola le coordinate geografiche dalle coordinate del pixel nel contenitore della mappa. |
fromDivPixelToLatLng |
fromDivPixelToLatLng(pixel[, noClampNoWrap]) Parametri:
Valore restituito:
LatLng|null Calcola le coordinate geografiche dalle coordinate del 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 contenitore 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 in una 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 intestazione di 90 o 270 gradi, ciò corrisponde all'intervallo di pixel nell'asse Y. |