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.
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.
Constructeur | |
---|---|
OverlayView |
OverlayView() Paramètres:aucun
Crée un OverlayView . |
Méthodes statiques | |
---|---|
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. |
Méthodes | |
---|---|
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:
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
Propriétés | |
---|---|
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.
Méthodes | |
---|---|
fromContainerPixelToLatLng |
fromContainerPixelToLatLng(pixel[, noClampNoWrap]) Paramètres:
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:
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. |