DOM elements

Classe OverlayView

Classe google.maps.OverlayView

Vous pouvez implémenter cette classe si vous souhaitez afficher des types d'objets de 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 garanti d'être 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 à 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 construction 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 la carte susceptible de modifier la position de l'élément change, comme 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 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, d'appui, de déplacement et de molette sur l'élément de remonter jusqu'à la carte. Utilisez cette option pour empêcher le déplacement 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 les clics ou les appuis sur l'élément de remonter jusqu'à la carte. Utilisez cette option pour empêcher la carte de déclencher des événements "click".
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 à MapPanes. Cette méthode est appelée après onAdd() et lors d'un changement de zoom ou de centre. Il est déconseillé d'effectuer des tâches coûteuses en termes de calcul dans 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 l'API n'appelle pas onAdd.
getProjection
getProjection()
Paramètres : aucun
Valeur renvoyée : MapCanvasProjection
Renvoie l'objet MapCanvasProjection associé à ce 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 auront é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 :
  • map : Map|StreetViewPanorama optional la carte ou le panorama. Si la valeur est null, le calque sera 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 à partir de la méthode draw. Son initialisation n'est pas garantie tant que la méthode draw n'est pas appelée.

fromContainerPixelToLatLng
fromContainerPixelToLatLng(pixel[, noClampNoWrap])
Paramètres :
  • pixel : Point optional
  • noClampNoWrap : boolean 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 :
  • pixel : Point optional
  • noClampNoWrap : boolean optional
Valeur renvoyée : LatLng|null
Calcule les coordonnées géographiques à partir des coordonnées en pixels dans le div contenant 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 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 d'orientation de 90 ou 270 degrés, cela correspond à la portée en pixels sur l'axe Y.