Map class
google.maps.Map
class
This class extends
MVCObject
.
Constructor | |
---|---|
Map |
Map(mapDiv[, opts]) Parameters:
Creates a new map inside of the given HTML container, which is typically a DIV element. |
Properties | |
---|---|
controls |
Type:
Array<MVCArray<Node>> Additional controls to attach to the map. To add a control to the map, add the control's <div> to the MVCArray corresponding to the ControlPosition where it should be rendered. |
data |
Type:
Data An instance of Data , bound to the map. Add features to this Data object to conveniently display them on this map. |
mapTypes |
Type:
MapTypeRegistry A registry of MapType instances by string ID. |
overlayMapTypes |
Additional map types to overlay. Overlay map types will display on top of the base map they are attached to, in the order in which they appear in the overlayMapTypes array (overlays with higher index values are displayed in front of overlays with lower index values). |
Methods | |
---|---|
fitBounds |
fitBounds(bounds[, padding]) Parameters:
Return Value: None
Sets the viewport to contain the given bounds. Note: When the map is set to display: none , the fitBounds function reads the map's size as 0x0, and therefore does not do anything. To change the viewport while the map is hidden, set the map to visibility: hidden , thereby ensuring the map div has an actual size. |
getBounds |
getBounds() Parameters: None
Return Value:
LatLngBounds optional Returns the lat/lng bounds of the current viewport. If more than one copy of the world is visible, the bounds range in longitude from -180 to 180 degrees inclusive. If the map is not yet initialized or center and zoom have not been set then the result is undefined . |
getCenter |
getCenter() Parameters: None
Return Value:
LatLng optional Returns the position displayed at the center of the map. Note that this LatLng object is not wrapped. See LatLng for more information. If the center or bounds have not been set then the result is undefined . |
getClickableIcons |
getClickableIcons() Parameters: None
Return Value:
boolean optional Returns the clickability of the map icons. A map icon represents a point of interest, also known as a POI. If the returned value is true, then the icons are clickable on the map. |
getDiv |
getDiv() Parameters: None
Return Value:
Element |
getHeading |
getHeading() Parameters: None
Return Value:
number optional Returns the compass heading of aerial imagery. The heading value is measured in degrees (clockwise) from cardinal direction North. If the map is not yet initialized then the result is undefined. |
getMapTypeId |
getMapTypeId() Parameters: None
Return Value:
MapTypeId|string optional |
getProjection |
getProjection() Parameters: None
Return Value:
Projection optional Returns the current Projection . If the map is not yet initialized then the result is undefined. Listen to the projection_changed event and check its value to ensure it is not undefined. |
getStreetView |
getStreetView() Parameters: None
Return Value:
StreetViewPanorama optional Returns the default StreetViewPanorama bound to the map, which may be a default panorama embedded within the map, or the panorama set using setStreetView() . Changes to the map's streetViewControl will be reflected in the display of such a bound panorama. |
getTilt |
getTilt() Parameters: None
Return Value:
number optional Returns the current angle of incidence of the map, in degrees from the viewport plane to the map plane. The result will be 0 for imagery taken directly overhead or 45 for 45° imagery. 45° imagery is only available for satellite and hybrid map types, within some locations, and at some zoom levels. Note: This method does not return the value set by setTilt . See setTilt for details. |
getZoom |
getZoom() Parameters: None
Return Value:
number optional Returns the zoom of the map. If the zoom has not been set then the result is undefined . |
panBy |
panBy(x, y) Parameters:
Return Value: None
Changes the center of the map by the given distance in pixels. If the distance is less than both the width and height of the map, the transition will be smoothly animated. Note that the map coordinate system increases from west to east (for x values) and north to south (for y values). |
panTo |
panTo(latLng) Parameters:
Return Value: None
Changes the center of the map to the given LatLng . If the change is less than both the width and height of the map, the transition will be smoothly animated. |
panToBounds |
panToBounds(latLngBounds[, padding]) Parameters:
Return Value: None
Pans the map by the minimum amount necessary to contain the given LatLngBounds . It makes no guarantee where on the map the bounds will be, except that the map will be panned to show as much of the bounds as possible inside {currentMapSizeInPx} - {padding} . |
setCenter |
setCenter(latlng) Parameters:
Return Value: None
|
setClickableIcons |
setClickableIcons(value) Parameters:
Return Value: None
Controls whether the map icons are clickable or not. A map icon represents a point of interest, also known as a POI. To disable the clickability of map icons, pass a value of false to this method. |
setHeading |
setHeading(heading) Parameters:
Return Value: None
Sets the compass heading for aerial imagery measured in degrees from cardinal direction North. |
setMapTypeId |
setMapTypeId(mapTypeId) Parameters:
Return Value: None
|
setOptions |
setOptions(options) Parameters:
Return Value: None
|
setStreetView |
setStreetView(panorama) Parameters:
Return Value: None
Binds a StreetViewPanorama to the map. This panorama overrides the default StreetViewPanorama , allowing the map to bind to an external panorama outside of the map. Setting the panorama to null binds the default embedded panorama back to the map. |
setTilt |
setTilt(tilt) Parameters:
Return Value: None
Controls the automatic switching behavior for the angle of incidence of the map. The only allowed values are 0 and 45 . setTilt(0) causes the map to always use a 0° overhead view regardless of the zoom level and viewport. setTilt(45) causes the tilt angle to automatically switch to 45 whenever 45° imagery is available for the current zoom level and viewport, and switch back to 0 whenever 45° imagery is not available (this is the default behavior). 45° imagery is only available for satellite and hybrid map types, within some locations, and at some zoom levels. Note: getTilt returns the current tilt angle, not the value set by setTilt . Because getTilt and setTilt refer to different things, do not bind() the tilt property; doing so may yield unpredictable effects. |
setZoom |
setZoom(zoom) Parameters:
Return Value: None
|
Inherited:
addListener ,
bindTo ,
get ,
notify ,
set ,
setValues ,
unbind ,
unbindAll
|
Events | |
---|---|
bounds_changed |
function() Arguments: None
This event is fired when the viewport bounds have changed. |
center_changed |
function() Arguments: None
This event is fired when the map center property changes. |
click |
function(event) Arguments:
This event is fired when the user clicks on the map. An ApiMouseEvent with properties for the clicked location is returned unless a place icon was clicked, in which case an IconMouseEvent with a placeid is returned. IconMouseEvent and ApiMouseEvent are identical, except that IconMouseEvent has the placeid field. The event can always be treated as an ApiMouseEvent when the placeid is not important. The click event is not fired if a marker or infowindow was clicked. |
contextmenu |
function(event) Arguments:
This event is fired when the DOM contextmenu event is fired on the map container. |
dblclick |
function(event) Arguments:
This event is fired when the user double-clicks on the map. Note that the click event will also fire, right before this one. |
drag |
function() Arguments: None
This event is repeatedly fired while the user drags the map. |
dragend |
function() Arguments: None
This event is fired when the user stops dragging the map. |
dragstart |
function() Arguments: None
This event is fired when the user starts dragging the map. |
heading_changed |
function() Arguments: None
This event is fired when the map heading property changes. |
idle |
function() Arguments: None
This event is fired when the map becomes idle after panning or zooming. |
maptypeid_changed |
function() Arguments: None
This event is fired when the mapTypeId property changes. |
mousemove |
function(event) Arguments:
This event is fired whenever the user's mouse moves over the map container. |
mouseout |
function(event) Arguments:
This event is fired when the user's mouse exits the map container. |
mouseover |
function(event) Arguments:
This event is fired when the user's mouse enters the map container. |
projection_changed |
function() Arguments: None
This event is fired when the projection has changed. |
rightclick |
function(event) Arguments:
This event is fired when the user right-clicks on the map. |
tilesloaded |
function() Arguments: None
This event is fired when the visible tiles have finished loading. |
tilt_changed |
function() Arguments: None
This event is fired when the map tilt property changes. |
zoom_changed |
function() Arguments: None
This event is fired when the map zoom property changes. |
MapOptions interface
google.maps.MapOptions
interface
MapOptions object used to define the properties that can be set on a Map.
Properties | |
---|---|
backgroundColor optional |
Type:
string optional Color used for the background of the Map div. This color will be visible when tiles have not yet loaded as the user pans. This option can only be set when the map is initialized. |
center optional |
Type:
LatLng|LatLngLiteral optional The initial Map center. |
clickableIcons optional |
Type:
boolean optional When false , map icons are not clickable. A map icon represents a point of interest, also known as a POI. By default map icons are clickable. |
controlSize optional |
Type:
number optional Size in pixels of the controls appearing on the map. This value must be supplied directly when creating the Map, updating this value later may bring the controls into an undefined state. Only governs the controls made by the Maps API itself. Does not scale developer created custom controls. |
disableDefaultUI optional |
Type:
boolean optional Enables/disables all default UI buttons. May be overridden individually. Does not disable the keyboard controls, which are separately controlled by the MapOptions.keyboardShortcuts option. Does not disable gesture controls, which are separately controlled by the MapOptions.gestureHandling option. |
disableDoubleClickZoom optional |
Type:
boolean optional Enables/disables zoom and center on double click. Enabled by default. Note: This property is not recommended. To disable zooming on double click, you can use the |
draggable optional |
Type:
boolean optional If false, prevents the map from being dragged. Dragging is enabled by default. |
draggableCursor optional |
Type:
string optional The name or url of the cursor to display when mousing over a draggable map. This property uses the css cursor attribute to change the icon. As with the css property, you must specify at least one fallback cursor that is not a URL. For example: draggableCursor: 'url(http://www.example.com/icon.png), auto;' . |
draggingCursor optional |
Type:
string optional The name or url of the cursor to display when the map is being dragged. This property uses the css cursor attribute to change the icon. As with the css property, you must specify at least one fallback cursor that is not a URL. For example: draggingCursor: 'url(http://www.example.com/icon.png), auto;' . |
fullscreenControl optional |
Type:
boolean optional The enabled/disabled state of the Fullscreen control. |
fullscreenControlOptions optional |
Type:
FullscreenControlOptions optional The display options for the Fullscreen control. |
gestureHandling optional |
Type:
string optional This setting controls how the API handles gestures on the map. Allowed values:
|
heading optional |
Type:
number optional The heading for aerial imagery in degrees measured clockwise from cardinal direction North. Headings are snapped to the nearest available angle for which imagery is available. |
keyboardShortcuts optional |
Type:
boolean optional If false, prevents the map from being controlled by the keyboard. Keyboard shortcuts are enabled by default. |
mapTypeControl optional |
Type:
boolean optional The initial enabled/disabled state of the Map type control. |
mapTypeControlOptions optional |
Type:
MapTypeControlOptions optional The initial display options for the Map type control. |
mapTypeId optional |
Type:
MapTypeId|string optional The initial Map mapTypeId. Defaults to ROADMAP . |
maxZoom optional |
Type:
number optional The maximum zoom level which will be displayed on the map. If omitted, or set to null, the maximum zoom from the current map type is used instead. Valid values: Integers between zero, and up to the supported maximum zoom level. |
minZoom optional |
Type:
number optional The minimum zoom level which will be displayed on the map. If omitted, or set to null, the minimum zoom from the current map type is used instead. Valid values: Integers between zero, and up to the supported maximum zoom level. |
noClear optional |
Type:
boolean optional If true, do not clear the contents of the Map div. |
panControl optional |
Type:
boolean optional The enabled/disabled state of the Pan control. Note: The Pan control is not available in the new set of controls introduced in v3.22 of the Google Maps JavaScript API. While using v3.22 and v3.23, you can choose to use the earlier set of controls rather than the new controls, thus making the Pan control available as part of the old control set. See What's New in the v3.22 Map Controls. |
panControlOptions optional |
Type:
PanControlOptions optional The display options for the Pan control. Note: The Pan control is not available in the new set of controls introduced in v3.22 of the Google Maps JavaScript API. While using v3.22 and v3.23, you can choose to use the earlier set of controls rather than the new controls, thus making the Pan control available as part of the old control set. See What's New in the v3.22 Map Controls. |
restriction optional |
Type:
MapRestriction optional Defines a boundary that restricts the area of the map accessible to users. When set, a user can only pan and zoom while the camera view stays inside the limits of the boundary. |
rotateControl optional |
Type:
boolean optional The enabled/disabled state of the Rotate control. |
rotateControlOptions optional |
Type:
RotateControlOptions optional The display options for the Rotate control. |
scaleControl optional |
Type:
boolean optional The initial enabled/disabled state of the Scale control. |
scaleControlOptions optional |
Type:
ScaleControlOptions optional The initial display options for the Scale control. |
scrollwheel optional |
Type:
boolean optional If false, disables zooming on the map using a mouse scroll wheel. The scrollwheel is enabled by default. Note: This property is not recommended. To disable zooming using scrollwheel, you can use the |
streetView optional |
Type:
StreetViewPanorama optional A StreetViewPanorama to display when the Street View pegman is dropped on the map. If no panorama is specified, a default StreetViewPanorama will be displayed in the map's div when the pegman is dropped. |
streetViewControl optional |
Type:
boolean optional The initial enabled/disabled state of the Street View Pegman control. This control is part of the default UI, and should be set to false when displaying a map type on which the Street View road overlay should not appear (e.g. a non-Earth map type). |
streetViewControlOptions optional |
Type:
StreetViewControlOptions optional The initial display options for the Street View Pegman control. |
styles optional |
Type:
Array<MapTypeStyle> optional Styles to apply to each of the default map types. Note that for satellite /hybrid and terrain modes, these styles will only apply to labels and geometry. |
tilt optional |
Type:
number optional Controls the automatic switching behavior for the angle of incidence of the map. The only allowed values are 0 and 45 . The value 0 causes the map to always use a 0° overhead view regardless of the zoom level and viewport. The value 45 causes the tilt angle to automatically switch to 45 whenever 45° imagery is available for the current zoom level and viewport, and switch back to 0 whenever 45° imagery is not available (this is the default behavior). 45° imagery is only available for satellite and hybrid map types, within some locations, and at some zoom levels. Note: getTilt returns the current tilt angle, not the value specified by this option. Because getTilt and this option refer to different things, do not bind() the tilt property; doing so may yield unpredictable effects. |
zoom optional |
Type:
number optional The initial Map zoom level. Valid values: Integers between zero, and up to the supported maximum zoom level. |
zoomControl optional |
Type:
boolean optional The enabled/disabled state of the Zoom control. |
zoomControlOptions optional |
Type:
ZoomControlOptions optional The display options for the Zoom control. |
MapTypeStyle interface
google.maps.MapTypeStyle
interface
The MapTypeStyle
is a collection of selectors and stylers that define how the map should be styled. Selectors specify the map features and/or elements that should be affected, and stylers specify how those features and elements should be modified. For details, see the style reference.
Properties | |
---|---|
stylers |
Type:
Array<Object> The style rules to apply to the selected map features and elements. The rules are applied in the order that you specify in this array. For guidelines on usage and allowed values, see the style reference. |
elementType optional |
Type:
string optional The element to which a styler should be applied. An element is a visual aspect of a feature on the map. Example: a label, an icon, the stroke or fill applied to the geometry, and more. Optional. If elementType is not specified, the value is assumed to be 'all' . For details of usage and allowed values, see the style reference. |
featureType optional |
Type:
string optional The feature, or group of features, to which a styler should be applied. Optional. If featureType is not specified, the value is assumed to be 'all' . For details of usage and allowed values, see the style reference. |
MapMouseEvent interface
google.maps.MapMouseEvent
interface
This object is returned from various mouse events on the map and overlays, and contains all the fields shown below.
Properties | |
---|---|
domEvent |
Type:
MouseEvent|TouchEvent|PointerEvent|Event The corresponding native DOM event. Developers should not rely on target , currentTarget , relatedTarget and path properties being defined and consistent. Developers should not also rely on the DOM structure of the internal implementation of the Maps API. |
latLng |
Type:
LatLng The latitude/longitude that was below the cursor when the event occurred. |
Methods | |
---|---|
stop |
stop() Parameters: None
Return Value: None
Prevents this event from propagating further. |
IconMouseEvent interface
google.maps.IconMouseEvent
interface
This object is sent in an event when a user clicks on an icon on the map. The place ID of this place is stored in the placeId member. To prevent the default info window from showing up, call the stop() method on this event to prevent it being propagated. Learn more about place IDs in the Places API developer guide.
This interface extends
MapMouseEvent
.
Properties | |
---|---|
placeId optional |
Type:
string optional The place ID of the place that was clicked. This place ID can be used to query more information about the feature that was clicked. Learn more about place IDs in the Places API developer guide. |
Inherited:
domEvent ,
latLng
|
Methods | |
---|---|
Inherited:
stop
|
MapTypeId constants
google.maps.MapTypeId
constants
Identifiers for common MapTypes. Specify these by value, or by using the constant's name. For example, 'satellite'
or google.maps.MapTypeId.SATELLITE
.
Constants | |
---|---|
HYBRID |
This map type displays a transparent layer of major streets on satellite images. |
ROADMAP |
This map type displays a normal street map. |
SATELLITE |
This map type displays satellite images. |
TERRAIN |
This map type displays maps with physical features such as terrain and vegetation. |
MapTypeRegistry class
google.maps.MapTypeRegistry
class
A registry for MapType instances, keyed by MapType id.
This class extends
MVCObject
.
Constructor | |
---|---|
MapTypeRegistry |
MapTypeRegistry() Parameters: None
The MapTypeRegistry holds the collection of custom map types available to the map for its use. The API consults this registry when providing the list of avaiable map types within controls, for example. |
Methods | |
---|---|
set |
set(id, mapType) Parameters:
Return Value: None
Sets the registry to associate the passed string identifier with the passed MapType. |
Inherited:
addListener ,
bindTo ,
get ,
notify ,
setValues ,
unbind ,
unbindAll
|
MapRestriction interface
google.maps.MapRestriction
interface
A restriction that can be applied to the Map. The map's viewport will not exceed these restrictions.
Properties | |
---|---|
latLngBounds |
When set, a user can only pan and zoom inside the given bounds. Bounds can restrict both longitude and latitude, or can restrict latitude only. For latitude-only bounds use west and east longitudes of -180 and 180, respectively, for example, latLngBounds: {north: northLat, south: southLat, west: -180, east: 180} . |
strictBounds optional |
Type:
boolean optional Bounds can be made more restrictive by setting the strictBounds flag to true. This reduces how far a user can zoom out, ensuring that everything outside of the restricted bounds stays hidden. The default is false , meaning that a user can zoom out until the entire bounded area is in view, possibly including areas outside the bounded area. |
TrafficLayer class
google.maps.TrafficLayer
class
A traffic layer.
This class extends
MVCObject
.
Constructor | |
---|---|
TrafficLayer |
TrafficLayer([opts]) Parameters:
A layer that displays current road traffic. |
Methods | |
---|---|
getMap |
getMap() Parameters: None
Return Value:
Map Returns the map on which this layer is displayed. |
setMap |
setMap(map) Parameters:
Return Value: None
Renders the layer on the specified map. If map is set to null, the layer will be removed. |
setOptions |
setOptions(options) Parameters:
Return Value: None
|
Inherited:
addListener ,
bindTo ,
get ,
notify ,
set ,
setValues ,
unbind ,
unbindAll
|
TrafficLayerOptions interface
google.maps.TrafficLayerOptions
interface
TrafficLayerOptions object used to define the properties that can be set on a TrafficLayer.
Properties | |
---|---|
autoRefresh optional |
Type:
boolean optional Whether the traffic layer refreshes with updated information automatically. This is true by default. |
map optional |
Type:
Map optional Map on which to display the traffic layer. |
TransitLayer class
google.maps.TransitLayer
class
A transit layer.
This class extends
MVCObject
.
Constructor | |
---|---|
TransitLayer |
TransitLayer() Parameters: None
A layer that displays transit lines. |
Methods | |
---|---|
getMap |
getMap() Parameters: None
Return Value:
Map Returns the map on which this layer is displayed. |
setMap |
setMap(map) Parameters:
Return Value: None
Renders the layer on the specified map. If map is set to null, the layer will be removed. |
Inherited:
addListener ,
bindTo ,
get ,
notify ,
set ,
setValues ,
unbind ,
unbindAll
|
BicyclingLayer class
google.maps.BicyclingLayer
class
A layer showing bike lanes and paths.
This class extends
MVCObject
.
Constructor | |
---|---|
BicyclingLayer |
BicyclingLayer() Parameters: None
A layer that displays bike lanes and paths and demotes large roads. |
Methods | |
---|---|
getMap |
getMap() Parameters: None
Return Value:
Map Returns the map on which this layer is displayed. |
setMap |
setMap(map) Parameters:
Return Value: None
Renders the layer on the specified map. If map is set to null, the layer will be removed. |
Inherited:
addListener ,
bindTo ,
get ,
notify ,
set ,
setValues ,
unbind ,
unbindAll
|