DOM elements

Klasse OverlayView

google.maps.OverlayView Klasse

Diese Klasse können Sie implementieren, wenn Sie benutzerdefinierte Typen von Overlay-Objekten auf der Karte anzeigen möchten.

Leiten Sie die Klasse ab, indem Sie den Prototyp des 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 Methode onAdd() sollten Sie DOM-Objekte erstellen und sie als untergeordnete Elemente der Bereiche anhängen.
  • In der Methode draw() sollten Sie diese Elemente positionieren.
  • In der Methode onRemove() sollten Sie die Objekte aus dem DOM entfernen.
 Sie müssen setMap() mit einem gültigen Map-Objekt aufrufen, um den Aufruf der Methode onAdd() und setMap(null) auszulösen, um die Methode onRemove() auszulösen. Die Methode setMap() kann bei der Erstellung oder zu einem beliebigen Zeitpunkt danach aufgerufen werden, wenn das Overlay nach dem Entfernen wieder angezeigt werden soll. Die Methode draw() wird dann immer aufgerufen, wenn sich eine Karteneigenschaft ändert, die die Position des Elements ändern könnte, z. B. Zoom, Zentrum oder Kartentyp.

Diese Klasse erweitert MVCObject.

Sie können über const {OverlayView} = await google.maps.importLibrary("maps") oder const {OverlayView} = await google.maps.importLibrary("streetView") darauf zugreifen.
Weitere Informationen finden Sie unter Bibliotheken in der Maps JavaScript API.

OverlayView
OverlayView()
Parameter:Keine
Erstellt ein OverlayView.
preventMapHitsAndGesturesFrom
preventMapHitsAndGesturesFrom(element)
Parameter:
Rückgabewert:Keiner
Verhindert, dass Klick-, Tipp-, Zieh- und Radereignisse für das Element an die Karte weitergegeben werden. Damit lassen sich das Ziehen und Zoomen der Karte sowie „Klick“-Ereignisse auf der Karte verhindern.
preventMapHitsFrom
preventMapHitsFrom(element)
Parameter:
Rückgabewert:Keiner
Verhindert, dass Klicks oder Tippen auf das Element an die Karte weitergegeben werden. Damit wird verhindert, dass die Karte „click“-Ereignisse auslöst.
draw
draw()
Parameter:Keine
Rückgabewert:Keiner
Implementieren Sie diese Methode, um den Overlay zu zeichnen oder zu aktualisieren. Verwenden Sie die Position aus projection.fromLatLngToDivPixel(), um das Overlay relativ zu den MapPanes richtig zu positionieren. Diese Methode wird nach onAdd() und bei Änderungen von Zoom oder Mittelpunkt aufgerufen. Es wird nicht empfohlen, rechenintensive Aufgaben in dieser Methode 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:
  • mapMap|StreetViewPanorama optional Die Karte oder das Panorama. Wenn null, wird die Ebene entfernt.
Rückgabewert:Keiner
Fügt das Overlay zur Karte oder zum Panorama hinzu.
Geerbt:addListener, bindTo, get, notify, set, setValues, unbind, unbindAll

MapPanes-Schnittstelle

google.maps.MapPanes-Schnittstelle

floatPane
Dieses Fenster enthält das Infofenster. Es befindet sich über allen Karten-Overlays. (Fenster 4)
mapPane
Dies ist das unterste Fenster; es befindet sich direkt über den Kacheln. Er empfängt keine DOM-Ereignisse. (Fenster 0)
markerLayer
Dieser Bereich enthält Markierungen. Er empfängt keine DOM-Ereignisse. (Fenster 2)
overlayLayer
Dieses Fenster enthält Polylinien, Polygone, Boden-Overlays und Kachelebenen-Overlays. Er empfängt keine DOM-Ereignisse. (Fenster 1)
overlayMouseTarget
Dieser Bereich enthält Elemente, die DOM-Ereignisse empfangen. (Fenster 3)

MapCanvasProjection-Schnittstelle

google.maps.MapCanvasProjection-Schnittstelle

Dieses Objekt wird der OverlayView in der Draw-Methode zur Verfügung gestellt. Es besteht keine Garantie, dass es initialisiert wird bis "draw" aufgerufen wird.

fromContainerPixelToLatLng
fromContainerPixelToLatLng(pixel[, noClampNoWrap])
Parameter:
  • pixelPoint optional
  • noClampNoWrapboolean optional
Rückgabewert:LatLng|null
Berechnet die geografischen Koordinaten aus den Pixelkoordinaten im Container der Karte.
fromDivPixelToLatLng
fromDivPixelToLatLng(pixel[, noClampNoWrap])
Parameter:
  • pixelPoint optional
  • noClampNoWrapboolean optional
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 der angegebenen geografischen Position 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 Kurs von 90 oder 270 Grad entspricht dies der Pixelspanne auf der Y-Achse.