OverlayView class
google.maps.OverlayView
zajęcia
Możesz zaimplementować tę klasę, jeśli chcesz wyświetlać na mapie niestandardowe typy obiektów nakładki.
Dziedzicz z tej klasy, ustawiając prototyp nakładki: MyOverlay.prototype = new google.maps.OverlayView();. Konstruktor OverlayView jest zawsze pustą funkcją.
Musisz wdrożyć 3 metody: onAdd(), draw() i onRemove().
- W metodzie
onAdd()należy utworzyć obiekty DOM i dodać je jako elementy podrzędne paneli. - W metodzie
draw()należy umieścić te elementy. - W metodzie
onRemove()należy usunąć obiekty z DOM.
onAdd() i setMap(null), musisz wywołać metodę setMap() z prawidłowym obiektem Map. Aby wywołać metodę onRemove(), musisz wywołać metodę setMap() z prawidłowym obiektem Map. Metodę setMap() można wywołać w momencie tworzenia lub w dowolnym momencie później, gdy po usunięciu nakładki ma się ona ponownie wyświetlić. Metoda draw() będzie wywoływana za każdym razem, gdy zmieni się właściwość mapy, która może wpłynąć na pozycję elementu, np. poziom powiększenia, środek lub typ mapy.
Ta klasa rozszerza klasę MVCObject.
Dostęp przez połączenie z numerem const {OverlayView} = await google.maps.importLibrary("maps") lub const {OverlayView} = await google.maps.importLibrary("streetView").
Zobacz Biblioteki w Maps JavaScript API.
Zespół | |
|---|---|
OverlayView |
OverlayView()Parametry: brak
Tworzy OverlayView. |
Metody statyczne | |
|---|---|
preventMapHitsAndGesturesFrom |
preventMapHitsAndGesturesFrom(element)Parametry:
Zwracana wartość: brak
Zapobiega przekazywaniu zdarzeń kliknięcia, dotknięcia, przeciągnięcia i przewijania na elemencie do mapy. Użyj tego ustawienia, aby zapobiec przeciąganiu i powiększaniu mapy, a także zdarzeniom typu „kliknięcie” na mapie. |
preventMapHitsFrom |
preventMapHitsFrom(element)Parametry:
Zwracana wartość: brak
Zapobiega przekazywaniu kliknięć lub dotknięć elementu do mapy. Użyj tego parametru, aby zapobiec wywoływaniu zdarzeń „click” przez mapę. |
Metody | |
|---|---|
draw |
draw()Parametry: brak
Zwracana wartość: brak
Zaimplementuj tę metodę, aby narysować lub zaktualizować nakładkę. Użyj pozycji z projection.fromLatLngToDivPixel(), aby prawidłowo umieścić nakładkę względem MapPanes. Ta metoda jest wywoływana po onAdd() i przy zmianie powiększenia lub środka. Nie zalecamy wykonywania w tej metodzie zadań wymagających dużej mocy obliczeniowej. |
getMap |
getMap()Parametry: brak
Zwracana wartość:
Map|StreetViewPanorama |
getPanes |
getPanes()Parametry: brak
Zwracana wartość:
MapPanes|nullZwraca panele, w których można renderować ten obiekt OverlayView. Panele nie są inicjowane, dopóki interfejs API nie wywoła funkcji onAdd. |
getProjection |
getProjection()Parametry: brak
Zwracana wartość:
MapCanvasProjectionZwraca obiekt MapCanvasProjection powiązany z tym obiektem OverlayView. Projekcja nie jest inicjowana, dopóki interfejs API nie wywoła funkcji onAdd. |
onAdd |
onAdd()Parametry: brak
Zwracana wartość: brak
Zaimplementuj tę metodę, aby zainicjować elementy DOM nakładki. Ta metoda jest wywoływana raz po wywołaniu metody setMap() z prawidłową mapą. Na tym etapie panele i projekcja zostaną zainicjowane. |
onRemove |
onRemove()Parametry: brak
Zwracana wartość: brak
Zaimplementuj tę metodę, aby usunąć elementy z DOM. Ta metoda jest wywoływana raz po wywołaniu setMap(null). |
setMap |
setMap(map)Parametry:
Zwracana wartość: brak
Dodaje nakładkę do mapy lub panoramy. |
Odziedziczone:
addListener,
bindTo,
get,
notify,
set,
setValues,
unbind,
unbindAll
| |
Interfejs MapPanes
google.maps.MapPanesinterfejs
Właściwości | |
|---|---|
floatPane |
Typ:
ElementW tym panelu znajduje się okno informacyjne. Znajduje się on nad wszystkimi nakładkami na mapę. (Panel 4). |
mapPane |
Typ:
ElementTen panel jest najniższym panelem i znajduje się nad kafelkami. Nie odbiera zdarzeń DOM. (Okienko 0). |
markerLayer |
Typ:
ElementTen panel zawiera znaczniki. Nie odbiera zdarzeń DOM. (Panel 2). |
overlayLayer |
Typ:
ElementTen panel zawiera polilinie, wielokąty, nakładki na ziemię i nakładki warstwy kafelków. Nie odbiera zdarzeń DOM. (Panel 1). |
overlayMouseTarget |
Typ:
ElementTen panel zawiera elementy, które odbierają zdarzenia DOM. (Okienko 3). |
MapCanvasProjection interfejs
google.maps.MapCanvasProjectioninterfejs
Ten obiekt jest udostępniany w metodzie OverlayView. Nie ma gwarancji, że zostanie zainicjowany, dopóki nie zostanie wywołana funkcja draw.
Metody | |
|---|---|
fromContainerPixelToLatLng |
fromContainerPixelToLatLng(pixel[, noClampNoWrap])Parametry:
Zwracana wartość:
LatLng|nullOblicza współrzędne geograficzne na podstawie współrzędnych pikseli w kontenerze mapy. |
fromDivPixelToLatLng |
fromDivPixelToLatLng(pixel[, noClampNoWrap])Parametry:
Zwracana wartość:
LatLng|nullOblicza współrzędne geograficzne na podstawie współrzędnych pikseli w elemencie div, który zawiera mapę z możliwością przeciągania. |
fromLatLngToContainerPixel |
fromLatLngToContainerPixel(latLng)Parametry:
Zwracana wartość:
Point|nullOblicza współrzędne pikseli danej lokalizacji geograficznej w elemencie kontenera mapy. |
fromLatLngToDivPixel |
fromLatLngToDivPixel(latLng)Parametry:
Zwracana wartość:
Point|nullOblicza współrzędne pikseli danej lokalizacji geograficznej w elemencie DOM, który zawiera mapę z możliwością przeciągania. |
getVisibleRegion |
getVisibleRegion()Parametry: brak
Zwracana wartość:
VisibleRegion|nullWidoczny region mapy. Zwraca wartość null, jeśli mapa nie ma rozmiaru. Zwraca wartość null, jeśli OverlayView znajduje się w StreetViewPanorama. |
getWorldWidth |
getWorldWidth()Parametry: brak
Zwracana wartość:
numberSzerokość świata w pikselach na bieżącym poziomie powiększenia. W przypadku projekcji z kątem kierunku 90 lub 270 stopni odpowiada to zakresowi pikseli na osi Y. |