OverlayView-Klasse
google.maps.OverlayView
Kurs
Diese Klasse können Sie implementieren, wenn Sie benutzerdefinierte Typen von Overlay-Objekten auf der Karte anzeigen möchten.
Erben Sie von dieser Klasse, indem Sie den Prototyp Ihres Overlays festlegen: MyOverlay.prototype = new google.maps.OverlayView();
. Der OverlayView
-Konstruktor ist garantiert eine leere Funktion.
Sie müssen drei Methoden implementieren: onAdd()
, draw()
und onRemove()
.
- In der
onAdd()
-Methode sollten Sie DOM-Objekte erstellen und sie als untergeordnete Elemente der Bereiche anhängen. - In der
draw()
-Methode sollten Sie diese Elemente positionieren. - In der
onRemove()
-Methode sollten Sie die Objekte aus dem DOM entfernen.
setMap()
mit einem gültigen Map
-Objekt aufrufen, um den Aufruf der onAdd()
-Methode und setMap(null)
, um den Aufruf der onRemove()
-Methode auszulösen. Die Methode setMap()
kann beim Erstellen oder jederzeit danach aufgerufen werden, wenn das Overlay nach dem Entfernen wieder angezeigt werden soll. Die Methode draw()
wird dann aufgerufen, wenn sich eine Karteneigenschaft ändert, die die Position des Elements beeinflussen könnte, z. B. Zoom, Zentrierung oder Kartentyp.
Diese Klasse erweitert MVCObject
.
Rufen Sie const {OverlayView} = await google.maps.importLibrary("maps")
oder const {OverlayView} = await google.maps.importLibrary("streetView")
auf, um darauf zuzugreifen. Weitere Informationen finden Sie unter Bibliotheken in der Maps JavaScript API.
Konstruktor | |
---|---|
OverlayView |
OverlayView() Parameter:Keine
Erstellt einen OverlayView . |
Statische Methoden | |
---|---|
preventMapHitsAndGesturesFrom |
preventMapHitsAndGesturesFrom(element) Parameter:
Rückgabewert:Keiner
Klick-, Tipp-, Zieh- und Rad-Ereignisse auf dem Element werden nicht an die Karte weitergeleitet. Damit können Sie das Ziehen und Zoomen der Karte sowie Klickereignisse auf der Karte verhindern. |
preventMapHitsFrom |
preventMapHitsFrom(element) Parameter:
Rückgabewert:Keiner
Verhindert, dass Klicks oder Tippen auf das Element auf der Karte angezeigt werden. So verhindern Sie, dass über die Karte Klickereignisse ausgelöst werden. |
Methoden | |
---|---|
draw |
draw() Parameter:Keine
Rückgabewert:Keiner
Implementieren Sie diese Methode, um den Overlay zu zeichnen oder zu aktualisieren. Verwenden Sie die Position von projection.fromLatLngToDivPixel(), um das Overlay korrekt relativ zu den Kartenbereichen zu positionieren. Diese Methode wird nach „onAdd()“ und bei Änderung des Zooms oder der Mitte aufgerufen. Es wird nicht empfohlen, mit dieser Methode rechenintensive Aufgaben auszuführen. |
getMap |
getMap() Parameter:Keine
Rückgabewert:
Map|StreetViewPanorama |
getPanes |
getPanes() Parameter:Keine
Rückgabewert:
MapPanes|null Gibt die Fenster zurück, in denen dieser Overlay wiedergegeben werden kann. Die Bereiche werden erst initialisiert, wenn onAdd von der API aufgerufen wird. |
getProjection |
getProjection() Parameter:Keine
Rückgabewert:
MapCanvasProjection Gibt das MapCanvasProjection -Objekt zurück, das mit diesem OverlayView verknüpft ist. Die Projektion wird erst initialisiert, wenn onAdd von der API aufgerufen wird. |
onAdd |
onAdd() Parameter:Keine
Rückgabewert:Keiner
Implementieren Sie diese Methode, um die Overlay-DOM-Elemente zu initialisieren. Diese Methode wird einmal aufgerufen, nachdem setMap() mit einer gültigen Karte aufgerufen wurde. Zu diesem Zeitpunkt sind Fenster und Projektionen bereits initialisiert. |
onRemove |
onRemove() Parameter:Keine
Rückgabewert:Keiner
Implementieren Sie diese Methode, um Elemente aus dem DOM zu entfernen. Diese Methode wird einmal nach dem Aufrufen von setMap(null) aufgerufen. |
setMap |
setMap(map) Parameter:
Rückgabewert:Keiner
Fügt das Overlay zur Karte oder zum Panorama hinzu. |
Übernommen:addListener ,
bindTo ,
get ,
notify ,
set ,
setValues ,
unbind ,
unbindAll
|
MapPanes-Oberfläche
google.maps.MapPanes
Benutzeroberfläche
Attribute | |
---|---|
floatPane |
Typ:
Element Dieses Fenster enthält das Infofenster. Es befindet sich über allen Karten-Overlays. (Fenster 4) |
mapPane |
Typ:
Element Dies ist das unterste Fenster; es befindet sich direkt über den Kacheln. Es empfängt keine DOM-Ereignisse. (Fenster 0) |
markerLayer |
Typ:
Element Dieser Bereich enthält Markierungen. Es empfängt keine DOM-Ereignisse. (Fenster 2) |
overlayLayer |
Typ:
Element Dieses Fenster enthält Polylinien, Polygone, Boden-Overlays und Kachelebenen-Overlays. Es empfängt keine DOM-Ereignisse. (Fenster 1) |
overlayMouseTarget |
Typ:
Element Dieser Bereich enthält Elemente, die DOM-Ereignisse empfangen. (Fenster 3) |
MapCanvasProjection-Schnittstelle
google.maps.MapCanvasProjection
Benutzeroberfläche
Dieses Objekt wird der OverlayView
über die draw-Methode zur Verfügung gestellt. Es besteht keine Garantie, dass es initialisiert wird bis "draw" aufgerufen wird.
Methoden | |
---|---|
fromContainerPixelToLatLng |
fromContainerPixelToLatLng(pixel[, noClampNoWrap]) Parameter:
Rückgabewert:
LatLng|null Berechnet die geografischen Koordinaten aus den Pixelkoordinaten im Container der Karte. |
fromDivPixelToLatLng |
fromDivPixelToLatLng(pixel[, noClampNoWrap]) Parameter:
Rückgabewert:
LatLng|null Berechnet die geografischen Koordinaten aus den Pixelkoordinaten im div-Element, das die verschiebbare Karte enthält. |
fromLatLngToContainerPixel |
fromLatLngToContainerPixel(latLng) Parameter:
Rückgabewert:
Point|null Berechnet die Pixelkoordinaten des angegebenen geografischen Standorts im Containerelement der Karte. |
fromLatLngToDivPixel |
fromLatLngToDivPixel(latLng) Parameter:
Rückgabewert:
Point|null Berechnet die Pixelkoordinaten des angegebenen geografischen Standorts im DOM-Element, das die verschiebbare Karte enthält. |
getVisibleRegion |
getVisibleRegion() Parameter:Keine
Rückgabewert:
VisibleRegion|null Der sichtbare Bereich der Karte. Gibt null zurück, wenn die Karte keine Größe hat. Gibt null zurück, wenn sich die OverlayView in einem StreetViewPanorama befindet. |
getWorldWidth |
getWorldWidth() Parameter:Keine
Rückgabewert:
number Die Breite der Welt in Pixeln bei der aktuellen Zoom-Einstellung. Bei Projektionen mit einem Richtungswinkel von 90 oder 270 Grad entspricht dies der Pixelspanne in der Y-Achse. |