Classe OverlayView
google.maps.OverlayView
class
extends MVCObject
library "maps", "streetView"
Vous pouvez implémenter cette classe si vous souhaitez afficher des types personnalisés d'objets de superposition 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.
setMap() avec un objet Map valide pour déclencher l'appel de la méthode onAdd() et setMap(null) afin de 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 est modifiée, ce qui peut modifier la position de l'élément (par exemple, le zoom, le centre ou le type de carte).
const {OverlayView} = await google.maps.importLibrary("maps");
const {OverlayView} = await google.maps.importLibrary("streetView");
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, d'appui, de déplacement et de molette sur l'élément de se propager à la carte. Utilisez cette option pour empêcher le déplacement et le zoom sur 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 se propager à la carte. Utilisez cette option pour empêcher la carte de déclencher des événements "click". |
Méthodes | |
|---|---|
draw |
draw()Paramètres : aucun
Valeur renvoyée :
voidImplé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 n'est pas recommandé d'effectuer des tâches coûteuses en ressources 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|nullRenvoie les volets dans lesquels cet OverlayView peut être affiché. 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 :
MapCanvasProjectionRenvoie 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 :
voidImplémentez cette méthode pour initialiser les éléments DOM de la 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 :
voidImplé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ées :
addListener,
bindTo,
get,
notify,
set,
setValues,
unbind,
unbindAll
| |
MapPanes
google.maps.MapPanes
interface
Propriétés | |
|---|---|
floatPane |
Type :
ElementCe volet contient la fenêtre d'informations. Il se trouve au-dessus de toutes les superpositions de la carte (volet 4). |
mapPane |
Type :
ElementCe 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 :
ElementCe volet contient des repères. Il ne reçoit pas d'événements DOM. (volet 2). |
overlayLayer |
Type :
ElementCe 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 :
ElementCe volet contient des éléments qui reçoivent des événements DOM. (volet 3). |
Interface MapCanvasProjection
google.maps.MapCanvasProjection
interface
Cet objet est mis à la disposition de OverlayView à partir de la méthode de dessin. Il n'est pas garanti qu'il soit initialisé tant que la méthode draw n'est pas appelée.
Méthodes | |
|---|---|
fromContainerPixelToLatLng |
fromContainerPixelToLatLng(pixel[, noClampNoWrap])Paramètres :
Valeur renvoyée :
LatLng|nullCalcule les coordonnées géographiques à partir des coordonnées de pixel dans le conteneur de la carte. |
fromDivPixelToLatLng |
fromDivPixelToLatLng(pixel[, noClampNoWrap])Paramètres :
Valeur renvoyée :
LatLng|nullCalcule les coordonnées géographiques à partir des coordonnées de pixel dans l'élément div qui contient la carte déplaçable. |
fromLatLngToContainerPixel |
fromLatLngToContainerPixel(latLng)Paramètres :
Valeur renvoyée :
Point|nullCalcule les coordonnées de pixel de l'emplacement géographique donné dans l'élément conteneur de la carte. |
fromLatLngToDivPixel |
fromLatLngToDivPixel(latLng)Paramètres :
Valeur renvoyée :
Point|nullCalcule 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|nullRé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 :
numberLargeur 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 à l'étendue des pixels sur l'axe Y. |