Klasa OverlayView
google.maps.OverlayView
zajęcia
Możesz wdrożyć tę klasę, jeśli chcesz wyświetlać na mapie niestandardowe typy obiektów nakładek.
Odziedzicz z tych zajęć, ustawiając prototyp nakładki: MyOverlay.prototype = new google.maps.OverlayView();
. Konstruktor OverlayView
zawsze jest funkcją pustą.
Musisz zastosować 3 metody: onAdd()
, draw()
i onRemove()
.
- W metodzie
onAdd()
utwórz obiekty DOM i dołącz je jako elementy podrzędne paneli. - W metodzie
draw()
te elementy należy umieścić. - W metodzie
onRemove()
usuń obiekty z DOM.
setMap()
z prawidłowym obiektem Map
, by wywołać metodę onAdd()
i setMap(null)
w celu aktywowania metody onRemove()
. Metoda setMap()
może zostać wywołana podczas tworzenia nakładki lub w dowolnym momencie po jej usunięciu, gdy trzeba będzie ponownie wyświetlić nakładkę. Metoda draw()
będzie wtedy wywoływana za każdym razem, gdy zmieni się właściwość mapy, która może zmienić pozycję elementu (np. powiększenie, wyśrodkowanie lub typ mapy).
Te zajęcia są rozszerzone na MVCObject
.
Aby uzyskać dostęp, zadzwoń pod numer const {OverlayView} = await google.maps.importLibrary("maps")
lub const {OverlayView} = await google.maps.importLibrary("streetView")
. Zobacz Biblioteki w interfejsie Maps JavaScript API.
Zespół | |
---|---|
OverlayView |
OverlayView() Parametry: brak
Tworzy OverlayView . |
Metody statyczne | |
---|---|
preventMapHitsAndGesturesFrom |
preventMapHitsAndGesturesFrom(element) Parametry:
Zwracana wartość: brak
Uniemożliwia przesuwanie się zdarzeń kliknięcia, dotykania, przeciągania i przesuwania kółkiem elementu aż do mapy. Służy do zapobiegania przeciąganiu i powiększaniu mapy oraz zdarzeń polegających na kliknięciu. |
preventMapHitsFrom |
preventMapHitsFrom(element) Parametry:
Zwracana wartość: brak
Zatrzymuje klikanie lub klikanie elementu przed pojawieniem się mapy. Służy do zapobiegania wywoływaniu przez mapę zdarzeń „kliknięcia”. |
Metody | |
---|---|
draw |
draw() Parametry: brak
Zwracana wartość: brak
Korzystając z tej metody, możesz rysować lub aktualizować nakładkę. Użyj pozycji z metody projection.fromLatLngToDivPixel(), aby poprawnie ustawić nakładkę względem paneli map. Ta metoda jest wywoływana po metodzie onAdd(), a wywołana przy zmianie powiększenia lub środka. Nie zalecamy wykonywania kosztownych obliczeń w ramach tej metody. |
getMap |
getMap() Parametry: brak
Wartość zwrotu:
Map|StreetViewPanorama |
getPanes |
getPanes() Parametry: brak
Wartość zwrotu:
MapPanes|null Zwraca panele, w których można renderować obiekt OverlayView. Panele nie zostaną zainicjowane, dopóki interfejs API nie wywoła funkcji onAdd . |
getProjection |
getProjection() Parametry: brak
Wartość zwrotu:
MapCanvasProjection Zwraca obiekt MapCanvasProjection powiązany z obiektem OverlayView . Projekcja nie zostanie zainicjowana, dopóki interfejs API nie wywoła funkcji onAdd . |
onAdd |
onAdd() Parametry: brak
Zwracana wartość: brak
Zaimplementuj tę metodę, by zainicjować nakładki DOM. Metoda ta jest wywoływana raz po wywołaniu metody setMap() z prawidłową mapą. W tym momencie panele i projekcja zostały zainicjowane. |
onRemove |
onRemove() Parametry: brak
Zwracana wartość: brak
Za pomocą tej metody możesz usuwać elementy z DOM. Metoda ta jest wywoływana raz po wywołaniu setMap(null). |
setMap |
setMap(map) Parametry:
Zwracana wartość: brak
Dodaje nakładkę do mapy lub panoramy. |
Dziedziczone:
addListener ,
bindTo ,
get ,
notify ,
set ,
setValues ,
unbind ,
unbindAll
|
Interfejs MapPanes
google.maps.MapPanes
interfejs
Właściwości | |
---|---|
floatPane |
Typ:
Element Ten panel zawiera okno informacyjne. Znajduje się on ponad wszystkimi nakładkami na mapie. (Panel 4). |
mapPane |
Typ:
Element Ten panel jest najniższym panelem i znajduje się nad kafelkami. Nie otrzymuje zdarzeń DOM. (Panel 0). |
markerLayer |
Typ:
Element Ten panel zawiera znaczniki. Nie otrzymuje zdarzeń DOM. (Panel 2). |
overlayLayer |
Typ:
Element Ten panel zawiera linie łamane, wielokąty, warstwy na powierzchni oraz warstwy warstw z kafelkami. Nie otrzymuje zdarzeń DOM. (Panel 1). |
overlayMouseTarget |
Typ:
Element Ten panel zawiera elementy, które odbierają zdarzenia DOM. (Panel 3). |
Interfejs MapCanvasProjection
google.maps.MapCanvasProjection
interfejs
OverlayView
otrzymuje ten obiekt z poziomu metody rysowania. Nie ma gwarancji, że zostanie zainicjowane, dopóki nie wywoła się funkcji rysowania.
Metody | |
---|---|
fromContainerPixelToLatLng |
fromContainerPixelToLatLng(pixel[, noClampNoWrap]) Parametry:
Wartość zwrotu:
LatLng|null Oblicza współrzędne geograficzne na podstawie współrzędnych piksela w kontenerze mapy. |
fromDivPixelToLatLng |
fromDivPixelToLatLng(pixel[, noClampNoWrap]) Parametry:
Wartość zwrotu:
LatLng|null Oblicza współrzędne geograficzne na podstawie współrzędnych piksela w elemencie div, w którym znajduje się ruchoma mapa. |
fromLatLngToContainerPixel |
fromLatLngToContainerPixel(latLng) Parametry:
Wartość zwrotu:
Point|null Oblicza współrzędne pikselowe danej lokalizacji geograficznej w elemencie kontenera mapy. |
fromLatLngToDivPixel |
fromLatLngToDivPixel(latLng) Parametry:
Wartość zwrotu:
Point|null Oblicza współrzędne pikselowe danej lokalizacji geograficznej w elemencie DOM, który zawiera mapę możliwą do przeciągania. |
getVisibleRegion |
getVisibleRegion() Parametry: brak
Wartość zwrotu:
VisibleRegion|null Widoczny region mapy. Zwraca wartość null , jeśli mapa nie ma określonego rozmiaru. Zwraca wartość null , jeśli element OverlayView znajduje się w panoramie StreetView. |
getWorldWidth |
getWorldWidth() Parametry: brak
Wartość zwrotu:
number Szerokość świata w pikselach w bieżącym poziomie powiększenia. W przypadku odwzorowania z kątem kierunkowym wynoszącym 90 lub 270 stopni odpowiada to rozpiętości pikseli na osi Y. |