DOM elements

Classe OverlayView

Classe google.maps.OverlayView

Vous pouvez implémenter cette classe si vous souhaitez afficher des types d'objets en superposition personnalisés sur la carte.

Héritez de cette classe en définissant le prototype de votre superposition: MyOverlay.prototype = new google.maps.OverlayView();. Le constructeur OverlayView est toujours une fonction vide.

Vous devez implémenter trois méthodes: onAdd(), draw() et onRemove().

  • Dans la méthode onAdd(), vous devez créer des objets DOM et les ajouter en tant qu'enfants des volets.
  • Dans la méthode draw(), vous devez positionner ces éléments.
  • Dans la méthode onRemove(), vous devez supprimer les objets du DOM.
Vous devez appeler setMap() avec un objet Map valide pour déclencher l'appel de la méthode onAdd() et setMap(null) pour déclencher la méthode onRemove(). La méthode setMap() peut être appelée au moment de la création ou à tout moment par la suite lorsque la superposition doit être réaffichée après avoir été supprimée. La méthode draw() est ensuite appelée chaque fois qu'une propriété de carte est modifiée, ce qui peut modifier la position de l'élément (par exemple, le zoom, le centre ou le type de carte).

Cette classe étend MVCObject.

Accédez-y en appelant const {OverlayView} = await google.maps.importLibrary("maps") ou const {OverlayView} = await google.maps.importLibrary("streetView"). Consultez la section Bibliothèques de l'API Maps JavaScript.

OverlayView
OverlayView()
Paramètres:aucun
Crée un OverlayView.
preventMapHitsAndGesturesFrom
preventMapHitsAndGesturesFrom(element)
Paramètres:
Valeur renvoyée:aucune
Empêche les événements de clic, de pression, de glissement et de roulette sur l'élément de remonter jusqu'à la carte. Utilisez-le pour empêcher le glissement et le zoom de la carte, ainsi que les événements de clic sur la carte.
preventMapHitsFrom
preventMapHitsFrom(element)
Paramètres:
Valeur renvoyée:aucune
Empêche le clic ou l'appui sur l'élément de remonter jusqu'à la carte. Utilisez-le pour empêcher la carte de déclencher des événements de clic.
draw
draw()
Paramètres:aucun
Valeur renvoyée:aucune
Implémentez cette méthode pour dessiner ou mettre à jour la superposition. Utilisez la position de projection.fromLatLngToDivPixel() pour positionner correctement la superposition par rapport aux MapPanes. Cette méthode est appelée après onAdd(), et est appelée en cas de changement de zoom ou de centre. Il est déconseillé d'effectuer des tâches coûteuses en termes de calcul avec cette méthode.
getMap
getMap()
Paramètres:aucun
Valeur renvoyée:Map|StreetViewPanorama
getPanes
getPanes()
Paramètres:aucun
Valeur renvoyée:MapPanes|null
Renvoie les volets dans lesquels cette OverlayView peut être affichée. Les volets ne sont pas initialisés tant que onAdd n'est pas appelé par l'API.
getProjection
getProjection()
Paramètres:aucun
Valeur renvoyée:MapCanvasProjection
Renvoie l'objet MapCanvasProjection associé à cet objet OverlayView. La projection n'est pas initialisée tant que onAdd n'est pas appelé par l'API.
onAdd
onAdd()
Paramètres:aucun
Valeur renvoyée:aucune
Implémentez cette méthode pour initialiser les éléments DOM de superposition. Cette méthode est appelée une fois après l'appel de setMap() avec une carte valide. À ce stade, les volets et la projection ont été initialisés.
onRemove
onRemove()
Paramètres:aucun
Valeur renvoyée:aucune
Implémentez cette méthode pour supprimer vos éléments du DOM. Cette méthode est appelée une fois après un appel à setMap(null).
setMap
setMap(map)
Paramètres:
  • mapMap|StreetViewPanorama optional Carte ou panorama. Si la valeur est null, le calque est supprimé.
Valeur renvoyée:aucune
Ajoute la superposition à la carte ou au panorama.
Hérité: addListener, bindTo, get, notify, set, setValues, unbind, unbindAll

Interface MapPanes

Interface google.maps.MapPanes

floatPane
Type:Element
Ce volet contient la fenêtre d'informations. Il se trouve au-dessus de toutes les superpositions de la carte (volet 4).
mapPane
Type:Element
Ce volet est le plus bas et se trouve au-dessus des tuiles. Il ne reçoit pas d'événements DOM. (volet 0).
markerLayer
Type:Element
Ce volet contient des repères. Il ne reçoit pas d'événements DOM. (volet 2).
overlayLayer
Type:Element
Ce volet contient des polylignes, des polygones, des superpositions au sol et des superpositions de calques de tuiles. Il ne reçoit pas d'événements DOM. (volet 1).
overlayMouseTarget
Type:Element
Ce volet contient des éléments qui reçoivent des événements DOM. (volet 3).

Interface MapCanvasProjection

Interface google.maps.MapCanvasProjection

Cet objet est mis à la disposition de OverlayView dans la méthode de dessin. Son initialisation n'est pas garantie avant l'appel de draw.

fromContainerPixelToLatLng
fromContainerPixelToLatLng(pixel[, noClampNoWrap])
Paramètres:
  • pixelPoint optional
  • noClampNoWrapboolean optional
Valeur renvoyée:LatLng|null
Calcule les coordonnées géographiques à partir des coordonnées en pixels dans le conteneur de la carte.
fromDivPixelToLatLng
fromDivPixelToLatLng(pixel[, noClampNoWrap])
Paramètres:
  • pixelPoint optional
  • noClampNoWrapboolean optional
Valeur renvoyée:LatLng|null
Calcule les coordonnées géographiques à partir des coordonnées en pixels dans le div qui contient la carte déplaçable.
fromLatLngToContainerPixel
fromLatLngToContainerPixel(latLng)
Paramètres:
Valeur renvoyée:Point|null
Calcule les coordonnées en pixels de l'emplacement géographique donné dans l'élément de conteneur de la carte.
fromLatLngToDivPixel
fromLatLngToDivPixel(latLng)
Paramètres:
Valeur renvoyée:Point|null
Calcule les coordonnées en pixels de l'emplacement géographique donné dans l'élément DOM qui contient la carte déplaçable.
getVisibleRegion
getVisibleRegion()
Paramètres:aucun
Valeur renvoyée:VisibleRegion|null
Région visible de la carte. Renvoie null si la carte n'a pas de taille. Renvoie null si l'OverlayView se trouve sur un StreetViewPanorama.
getWorldWidth
getWorldWidth()
Paramètres:aucun
Valeur renvoyée:number
Largeur du monde en pixels au niveau de zoom actuel. Pour les projections avec un angle de cap de 90 ou 270 degrés, cela correspond à la plage de pixels sur l'axe Y.