This page has moved to Google Developers. Welcome! Learn more Dismiss

Google Maps JavaScript API v3

Google Maps Javascript API V3 Reference

Latest Version

Last updated Tuesday, April 03, 2012

Welcome to the reference for the Google JavaScript Maps API V3. This reference is kept up-to-date with the latest changes to the API. Please consult the Javascript Maps API V3 Changelog for information on what's new in each release.

Reference Table of Contents

Map

Controls

Overlays

Services

Map Types

Layers

Street View

Events

Base

MVC

Geometry Library

AdSense Library

Panoramio Library

Places Library

Drawing Library

Weather Library

google.maps.Map class

This class extends MVCObject.

Constructor

Constructor Description
Map(mapDiv:Node, opts?:MapOptions) Creates a new map inside of the given HTML container, which is typically a DIV element.

Methods

Methods Return Value Description
fitBounds(bounds:LatLngBounds) None Sets the viewport to contain the given bounds.
getBounds() LatLngBounds Returns the lat/lng bounds of the current viewport. If the map is not yet initialized (i.e. the mapType is still null), or center and zoom have not been set then the result is null or undefined.
getCenter() LatLng Returns the position displayed at the center of the map. Note that this LatLng object is not wrapped. See LatLng for more information.
getDiv() Node
getHeading() number Returns the compass heading of aerial imagery. The heading value is measured in degrees (clockwise) from cardinal direction North.
getMapTypeId() MapTypeId|string
getProjection() Projection Returns the current Projection. If the map is not yet initialized (i.e. the mapType is still null) then the result is null. Listen to projection_changed and check its value to ensure it is not null.
getStreetView() StreetViewPanorama 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() number Returns the angle of incidence for aerial imagery (available for SATELLITE and HYBRID map types) measured in degrees from the viewport plane to the map plane. A value of 0 indicates no angle of incidence (no tilt) while 45° imagery will return a value of 45.
getZoom() number
panBy(x:number, y:number) 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(latLng:LatLng) 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(latLngBounds:LatLngBounds) 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 as much of the bounds as possible will be visible. The bounds will be positioned inside the area bounded by the map type and navigation (pan, zoom, and Street View) controls, if they are present on the map. If the bounds is larger than the map, the map will be shifted to include the northwest corner of the bounds. If the change in the map's position is less than both the width and height of the map, the transition will be smoothly animated.
setCenter(latlng:LatLng) None
setHeading(heading:number) None Sets the compass heading for aerial imagery measured in degrees from cardinal direction North.
setMapTypeId(mapTypeId:MapTypeId|string) None
setOptions(options:MapOptions) None
setStreetView(panorama:StreetViewPanorama) 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(tilt:number) None Sets the angle of incidence for aerial imagery (available for SATELLITE and HYBRID map types) measured in degrees from the viewport plane to the map plane. The only supported values are 0, indicating no angle of incidence (no tilt), and 45 indicating a tilt of 45deg;.
setZoom(zoom:number) None

Properties

Properties Type Description
controls 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.
mapTypes MapTypeRegistry A registry of MapType instances by string ID.
overlayMapTypes MVCArray.<MapType> Additional map types to overlay.

Events

Events Arguments Description
bounds_changed None This event is fired when the viewport bounds have changed.
center_changed None This event is fired when the map center property changes.
click MouseEvent This event is fired when the user clicks on the map (but not when they click on a marker or infowindow).
dblclick MouseEvent 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 None This event is repeatedly fired while the user drags the map.
dragend None This event is fired when the user stops dragging the map.
dragstart None This event is fired when the user starts dragging the map.
heading_changed None This event is fired when the map heading property changes.
idle None This event is fired when the map becomes idle after panning or zooming.
maptypeid_changed None This event is fired when the mapTypeId property changes.
mousemove MouseEvent This event is fired whenever the user's mouse moves over the map container.
mouseout MouseEvent This event is fired when the user's mouse exits the map container.
mouseover MouseEvent This event is fired when the user's mouse enters the map container.
projection_changed None This event is fired when the projection has changed.
resize None Developers should trigger this event on the map when the div changes size: google.maps.event.trigger(map, 'resize') .
rightclick MouseEvent This event is fired when the DOM contextmenu event is fired on the map container.
tilesloaded None This event is fired when the visible tiles have finished loading.
tilt_changed None This event is fired when the map tilt property changes.
zoom_changed None This event is fired when the map zoom property changes.

google.maps.MapOptions object

Properties

Properties Type Description
backgroundColor string 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 LatLng The initial Map center. Required.
disableDefaultUI boolean Enables/disables all default UI. May be overridden individually.
disableDoubleClickZoom boolean Enables/disables zoom and center on double click. Enabled by default.
draggable boolean If false, prevents the map from being dragged. Dragging is enabled by default.
draggableCursor string The name or url of the cursor to display on a draggable object.
draggingCursor string The name or url of the cursor to display when an object is dragging.
heading number 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 boolean If false, prevents the map from being controlled by the keyboard. Keyboard shortcuts are enabled by default.
mapMaker boolean True if Map Maker tiles should be used instead of regular tiles.
mapTypeControl boolean The initial enabled/disabled state of the Map type control.
mapTypeControlOptions MapTypeControlOptions The initial display options for the Map type control.
mapTypeId MapTypeId The initial Map mapTypeId. Required.
maxZoom number 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.
minZoom number 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.
noClear boolean If true, do not clear the contents of the Map div.
overviewMapControl boolean The enabled/disabled state of the Overview Map control.
overviewMapControlOptions OverviewMapControlOptions The display options for the Overview Map control.
panControl boolean The enabled/disabled state of the Pan control.
panControlOptions PanControlOptions The display options for the Pan control.
rotateControl boolean The enabled/disabled state of the Rotate control.
rotateControlOptions RotateControlOptions The display options for the Rotate control.
scaleControl boolean The initial enabled/disabled state of the Scale control.
scaleControlOptions ScaleControlOptions The initial display options for the Scale control.
scrollwheel boolean If false, disables scrollwheel zooming on the map. The scrollwheel is enabled by default.
streetView StreetViewPanorama 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 boolean 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 StreetViewControlOptions The initial display options for the Street View Pegman control.
styles Array.<MapTypeStyle> Styles to apply to each of the default map types. Note that styles will apply only to the labels and geometry in Satellite/Hybrid and Terrain modes.
tilt number The angle of incidence of the map as measured in degrees from the viewport plane to the map plane. The only currently supported values are 0, indicating no angle of incidence (no tilt), and 45, indicating a tilt of 45deg;. 45deg; imagery is only available for SATELLITE and HYBRID map types, within some locations, and at some zoom levels.
zoom number The initial Map zoom level. Required.
zoomControl boolean The enabled/disabled state of the Zoom control.
zoomControlOptions ZoomControlOptions The display options for the Zoom control.

google.maps.MapTypeId class

Identifiers for common MapTypes.

Constant

Constant Description
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.

google.maps.MapTypeControlOptions object

Options for the rendering of the map type control.

Properties

Properties Type Description
mapTypeIds Array.<MapTypeId>|Array.<string> IDs of map types to show in the control.
position ControlPosition Position id. Used to specify the position of the control on the map. The default position is TOP_RIGHT.
style MapTypeControlStyle Style id. Used to select what style of map type control to display.

google.maps.MapTypeControlStyle class

Identifiers for common MapTypesControls.

Constant

Constant Description
DEFAULT Uses the default map type control. The control which DEFAULT maps to will vary according to window size and other factors. It may change in future versions of the API.
DROPDOWN_MENU A dropdown menu for the screen realestate conscious.
HORIZONTAL_BAR The standard horizontal radio buttons bar.

google.maps.OverviewMapControlOptions object

Options for the rendering of the Overview Map control.

Properties

Properties Type Description
opened boolean Whether the control should display in opened mode or collapsed (minimized) mode. By default, the control is closed.

google.maps.PanControlOptions object

Options for the rendering of the pan control.

Properties

Properties Type Description
position ControlPosition Position id. Used to specify the position of the control on the map. The default position is TOP_LEFT.

google.maps.RotateControlOptions object

Options for the rendering of the rotate control.

Properties

Properties Type Description
position ControlPosition Position id. Used to specify the position of the control on the map. The default position is TOP_LEFT.

google.maps.ScaleControlOptions object

Options for the rendering of the scale control.

Properties

Properties Type Description
position ControlPosition Position id. Used to specify the position of the control on the map. The default position is BOTTOM_LEFT.
style ScaleControlStyle Style id. Used to select what style of scale control to display.

google.maps.ScaleControlStyle class

Identifiers for scale control ids.

Constant

Constant Description
DEFAULT The standard scale control.

google.maps.StreetViewControlOptions object

Options for the rendering of the Street View pegman control on the map.

Properties

Properties Type Description
position ControlPosition Position id. Used to specify the position of the control on the map. The default position is embedded within the navigation (zoom and pan) controls. If this position is empty or the same as that specified in the zoomControlOptions or panControlOptions, the Street View control will be displayed as part of the navigation controls. Otherwise, it will be displayed separately.

google.maps.ZoomControlOptions object

Options for the rendering of the zoom control.

Properties

Properties Type Description
position ControlPosition Position id. Used to specify the position of the control on the map. The default position is TOP_LEFT.
style ZoomControlStyle Style id. Used to select what style of zoom control to display.

google.maps.ZoomControlStyle class

Identifiers for the zoom control.

Constant

Constant Description
DEFAULT The default zoom control. The control which DEFAULT maps to will vary according to map size and other factors. It may change in future versions of the API.
LARGE The larger control, with the zoom slider in addition to +/- buttons.
SMALL A small control with buttons to zoom in and out.

google.maps.ControlPosition class

Identifiers used to specify the placement of controls on the map. Controls are positioned relative to other controls in the same layout position. Controls that are added first are positioned closer to the edge of the map.
  +----------------+
  + TL    TC    TR +
  + LT          RT +
  +                +
  + LC          RC +
  +                +
  + LB          RB +
  + BL    BC    BR +
  +----------------+
Elements in the top or bottom row flow towards the middle. Elements at the left or right sides flow downwards.

Constant

Constant Description
BOTTOM_CENTER Elements are positioned in the center of the bottom row.
BOTTOM_LEFT Elements are positioned in the bottom left and flow towards the middle. Elements are positioned to the right of the Google logo.
BOTTOM_RIGHT Elements are positioned in the bottom right and flow towards the middle. Elements are positioned to the left of the copyrights.
LEFT_BOTTOM Elements are positioned on the left, above bottom-left elements, and flow upwards.
LEFT_CENTER Elements are positioned in the center of the left side.
LEFT_TOP Elements are positioned on the left, below top-left elements, and flow downwards.
RIGHT_BOTTOM Elements are positioned on the right, above bottom-right elements, and flow upwards.
RIGHT_CENTER Elements are positioned in the center of the right side.
RIGHT_TOP Elements are positioned on the right, below top-right elements, and flow downwards.
TOP_CENTER Elements are positioned in the center of the top row.
TOP_LEFT Elements are positioned in the top left and flow towards the middle.
TOP_RIGHT Elements are positioned in the top right and flow towards the middle.

google.maps.Marker class

This class extends MVCObject.

Constructor

Constructor Description
Marker(opts?:MarkerOptions) Creates a marker with the options specified. If a map is specified, the marker is added to the map upon construction. Note that the position must be set for the marker to display.

Methods

Methods Return Value Description
getAnimation() Animation
getClickable() boolean
getCursor() string
getDraggable() boolean
getFlat() boolean
getIcon() string|MarkerImage
getMap() Map|StreetViewPanorama
getPosition() LatLng
getShadow() string|MarkerImage
getShape() MarkerShape
getTitle() string
getVisible() boolean
getZIndex() number
setAnimation(animation:Animation) None Start an animation. Any ongoing animation will be cancelled. Currently supported animations are: BOUNCE, DROP. Passing in null will cause any animation to stop.
setClickable(flag:boolean) None
setCursor(cursor:string) None
setDraggable(flag:boolean) None
setFlat(flag:boolean) None
setIcon(icon:string|MarkerImage) None
setMap(map:Map|StreetViewPanorama) None Renders the marker on the specified map or panorama. If map is set to null, the marker will be removed.
setOptions(options:MarkerOptions) None
setPosition(latlng:LatLng) None
setShadow(shadow:string|MarkerImage) None
setShape(shape:MarkerShape) None
setTitle(title:string) None
setVisible(visible:boolean) None
setZIndex(zIndex:number) None

Constant

Constant Description
MAX_ZINDEX The maximum default z-index that the API will assign to a marker. You may set a higher z-index to bring a marker to the front.

Events

Events Arguments Description
animation_changed None This event is fired when the marker's animation property changes.
click MouseEvent This event is fired when the marker icon was clicked.
clickable_changed None This event is fired when the marker's clickable property changes.
cursor_changed None This event is fired when the marker's cursor property changes.
dblclick MouseEvent This event is fired when the marker icon was double clicked.
drag MouseEvent This event is repeatedly fired while the user drags the marker.
dragend MouseEvent This event is fired when the user stops dragging the marker.
draggable_changed None This event is fired when the marker's draggable property changes.
dragstart MouseEvent This event is fired when the user starts dragging the marker.
flat_changed None This event is fired when the marker's flat property changes.
icon_changed None This event is fired when the marker icon property changes.
mousedown MouseEvent This event is fired for a mousedown on the marker.
mouseout MouseEvent This event is fired when the mouse leaves the area of the marker icon.
mouseover MouseEvent This event is fired when the mouse enters the area of the marker icon.
mouseup MouseEvent This event is fired for a mouseup on the marker.
position_changed None This event is fired when the marker position property changes.
rightclick MouseEvent This event is fired for a rightclick on the marker.
shadow_changed None This event is fired when the marker's shadow property changes.
shape_changed None This event is fired when the marker's shape property changes.
title_changed None This event is fired when the marker title property changes.
visible_changed None This event is fired when the marker's visible property changes.
zindex_changed None This event is fired when the marker's zIndex property changes.

google.maps.MarkerOptions object

Properties

Properties Type Description
animation Animation Which animation to play when marker is added to a map.
clickable boolean If true, the marker receives mouse and touch events. Default value is true.
cursor string Mouse cursor to show on hover
draggable boolean If true, the marker can be dragged. Default value is false.
flat boolean If true, the marker shadow will not be displayed.
icon string|MarkerImage Icon for the foreground
map Map|StreetViewPanorama Map on which to display Marker.
optimized boolean Optimization renders many markers as a single static element. Optimized rendering is enabled by default. Disable optimized rendering for animated GIFs or PNGs, or when each marker must be rendered as a separate DOM element (advanced usage only).
position LatLng Marker position. Required.
raiseOnDrag boolean If false, disables raising and lowering the marker on drag. This option is true by default.
shadow string|MarkerImage Shadow image
shape MarkerShape Image map region definition used for drag/click.
title string Rollover text
visible boolean If true, the marker is visible
zIndex number All markers are displayed on the map in order of their zIndex, with higher values displaying in front of markers with lower values. By default, markers are displayed according to their vertical position on screen, with lower markers appearing in front of markers further up the screen.

google.maps.MarkerImage class

Constructor

Constructor Description
MarkerImage(url:string, size?:Size, origin?:Point, anchor?:Point, scaledSize?:Size) A structure representing a Marker icon or shadow image.

Properties

Properties Type Description
anchor Point The position at which to anchor an image in correspondance to the location of the marker on the map. By default, the anchor is located along the center point of the bottom of the image.
origin Point The position of the image within a sprite, if any. By default, the origin is located at the top left corner of the image (0, 0).
scaledSize Size The size of the entire image after scaling, if any. Use this property to stretch/shrink an image or a sprite.
size Size The display size of the sprite or image. When using sprites, you must specify the sprite size. If the size is not provided, it will be set when the image loads.
url string The URL of the image or sprite sheet.

google.maps.MarkerShape object

This object defines the marker shape to use in determination of a marker's clickable region. The shape consists of two properties — type and coord — which define the general type of marker and coordinates specific to that type of marker.

Properties

Properties Type Description
coords Array.<number> The format of this attribute depends on the value of the type and follows the w3 AREA coords specification found at http://www.w3.org/TR/REC-html40/struct/objects.html#adef-coords.
The coords attribute is an array of integers that specify the pixel position of the shape relative to the top-left corner of the target image. The coordinates depend on the value of type as follows:
  - circle: coords is [x1,y1,r] where x1,y2 are the coordinates of the center of the circle, and r is the radius of the circle.
  - poly: coords is [x1,y1,x2,y2...xn,yn] where each x,y pair contains the coordinates of one vertex of the polygon.
  - rect: coords is [x1,y1,x2,y2] where x1,y1 are the coordinates of the upper-left corner of the rectangle and x2,y2 are the coordinates of the lower-right coordinates of the rectangle.
type string Describes the shape's type and can be circle, poly or rect.

google.maps.Animation class

Animations that can be played on a marker. Use the setAnimation method on Marker or the animation option to play an animation.

Constant

Constant Description
BOUNCE Marker bounces until animation is stopped.
DROP Marker falls from the top of the map ending with a small bounce.

google.maps.InfoWindow class

An overlay that looks like a bubble and is often connected to a marker.

This class extends MVCObject.

Constructor

Constructor Description
InfoWindow(opts?:InfoWindowOptions) Creates an info window with the given options. An InfoWindow can be placed on a map at a particular position or above a marker, depending on what is specified in the options. Unless auto-pan is disabled, an InfoWindow will pan the map to make itself visible when it is opened. After constructing an InfoWindow, you must call open to display it on the map. The user can click the close button on the InfoWindow to remove it from the map, or the developer can call close() for the same effect.

Methods

Methods Return Value Description
close() None Closes this InfoWindow by removing it from the DOM structure.
getContent() string|Node
getPosition() LatLng
getZIndex() number
open(map?:Map|StreetViewPanorama, anchor?:MVCObject) None Opens this InfoWindow on the given map. Optionally, an InfoWindow can be associated with an anchor. In the core API, the only anchor is the Marker class. However, an anchor can be any MVCObject that exposes the position property and optionally anchorPoint for calculating the pixelOffset (see InfoWindowOptions). The anchorPoint is the offset from the anchor's position to the tip of the InfoWindow.
setContent(content:string|Node) None
setOptions(options:InfoWindowOptions) None
setPosition(position:LatLng) None
setZIndex(zIndex:number) None

Events

Events Arguments Description
closeclick None This event is fired when the close button was clicked.
content_changed None This event is fired when the content property changes.
domready None This event is fired when the <div> containing the InfoWindow's content is attached to the DOM. You may wish to monitor this event if you are building out your info window content dynamically.
position_changed None This event is fired when the position property changes.
zindex_changed None This event is fired when the InfoWindow's zIndex changes.

google.maps.InfoWindowOptions object

Properties

Properties Type Description
content string|Node Content to display in the InfoWindow. This can be an HTML element, a plain-text string, or a string containing HTML. The InfoWindow will be sized according to the content. To set an explicit size for the content, set content to be a HTML element with that size.
disableAutoPan boolean Disable auto-pan on open. By default, the info window will pan the map so that it is fully visible when it opens.
maxWidth number Maximum width of the infowindow, regardless of content's width. This value is only considered if it is set before a call to open. To change the maximum width when changing content, call close, setOptions, and then open.
pixelOffset Size The offset, in pixels, of the tip of the info window from the point on the map at whose geographical coordinates the info window is anchored. If an InfoWindow is opened with an anchor, the pixelOffset will be calculated from the top-center of the anchor's bounds.
position LatLng The LatLng at which to display this InfoWindow. If the InfoWindow is opened with an anchor, the anchor's position will be used instead.
zIndex number All InfoWindows are displayed on the map in order of their zIndex, with higher values displaying in front of InfoWindows with lower values. By default, InfoWinodws are displayed according to their latitude, with InfoWindows of lower latitudes appearing in front of InfoWindows at higher latitudes. InfoWindows are always displayed in front of markers.

google.maps.Polyline class

A polyline is a linear overlay of connected line segments on the map.

This class extends MVCObject.

Constructor

Constructor Description
Polyline(opts?:PolylineOptions) Create a polyline using the passed PolylineOptions, which specify both the path of the polyline and the stroke style to use when drawing the polyline. You may pass either an array of LatLngs or an MVCArray of LatLngs when constructing a polyline, though simple arrays are converted to MVCArrays within the polyline upon instantiation.

Methods

Methods Return Value Description
getEditable() boolean Returns whether this shape can be edited by the user.
getMap() Map Returns the map on which this shape is attached.
getPath() MVCArray.<LatLng> Retrieves the first path.
getVisible() boolean Returns whether this poly is visible on the map.
setEditable(editable:boolean) None If set to true, the user can edit this shape by dragging the control points shown at the vertices and on each segment.
setMap(map:Map) None Renders this shape on the specified map. If map is set to null, the shape will be removed.
setOptions(options:PolylineOptions) None
setPath(path:MVCArray.<LatLng>|Array.<LatLng>) None Sets the first path. See PolylineOptions for more details.
setVisible(visible:boolean) None Hides this poly if set to false.

Events

Events Arguments Description
click MouseEvent This event is fired when the DOM click event is fired on the Polyline.
dblclick MouseEvent This event is fired when the DOM dblclick event is fired on the Polyline.
mousedown MouseEvent This event is fired when the DOM mousedown event is fired on the Polyline.
mousemove MouseEvent This event is fired when the DOM mousemove event is fired on the Polyline.
mouseout MouseEvent This event is fired on Polyline mouseout.
mouseover MouseEvent This event is fired on Polyline mouseover.
mouseup MouseEvent This event is fired when the DOM mouseup event is fired on the Polyline.
rightclick MouseEvent This event is fired when the Polyline is right-clicked on.

google.maps.PolylineOptions object

Properties

Properties Type Description
clickable boolean Indicates whether this Polyline handles click events. Defaults to true.
editable boolean If set to true, the user can edit this shape by dragging the control points shown at the vertices and on each segment. Defaults to false.
geodesic boolean When true, render each edge as a geodesic (a segment of a "great circle"). A geodesic is the shortest path between two points along the surface of the Earth. When false, render each edge as a straight line on screen. Defaults to false.
map Map Map on which to display Polyline.
path MVCArray.<LatLng>|Array.<LatLng> The ordered sequence of coordinates of the Polyline. This path may be specified using either a simple array of LatLngs, or an MVCArray of LatLngs. Note that if you pass a simple array, it will be converted to an MVCArray Inserting or removing LatLngs in the MVCArray will automatically update the polyline on the map.
strokeColor string The stroke color. All CSS3 colors are supported except for extended named colors.
strokeOpacity number The stroke opacity between 0.0 and 1.0
strokeWeight number The stroke width in pixels.
visible boolean Whether this polyline is visible on the map. Defaults to true.
zIndex number The zIndex compared to other polys.

google.maps.Polygon class

A polygon (like a polyline) defines a series of connected coordinates in an ordered sequence; additionally, polygons form a closed loop and define a filled region.

This class extends MVCObject.

Constructor

Constructor Description
Polygon(opts?:PolygonOptions) Create a polygon using the passed PolygonOptions, which specify the polygon's path, the stroke style for the polygon's edges, and the fill style for the polygon's interior regions. A polygon may contain one or more paths, where each path consists of an array of LatLngs. You may pass either an array of LatLngs or an MVCArray of LatLngs when constructing these paths. Arrays are converted to MVCArrays within the polygon upon instantiation.

Methods

Methods Return Value Description
getEditable() boolean Returns whether this shape can be edited by the user.
getMap() Map Returns the map on which this shape is attached.
getPath() MVCArray.<LatLng> Retrieves the first path.
getPaths() MVCArray.<MVCArray.<LatLng>> Retrieves the paths for this polygon.
getVisible() boolean Returns whether this poly is visible on the map.
setEditable(editable:boolean) None If set to true, the user can edit this shape by dragging the control points shown at the vertices and on each segment.
setMap(map:Map) None Renders this shape on the specified map. If map is set to null, the shape will be removed.
setOptions(options:PolygonOptions) None
setPath(path:MVCArray.<LatLng>|Array.<LatLng>) None Sets the first path. See PolylineOptions for more details.
setPaths(paths:MVCArray.<MVCArray.<LatLng>>|MVCArray.<LatLng>|Array.<Array.<LatLng>>|Array.<LatLng>) None Sets the path for this polygon.
setVisible(visible:boolean) None Hides this poly if set to false.

Events

Events Arguments Description
click MouseEvent This event is fired when the DOM click event is fired on the Polygon.
dblclick MouseEvent This event is fired when the DOM dblclick event is fired on the Polygon.
mousedown MouseEvent This event is fired when the DOM mousedown event is fired on the Polygon.
mousemove MouseEvent This event is fired when the DOM mousemove event is fired on the Polygon.
mouseout MouseEvent This event is fired on Polygon mouseout.
mouseover MouseEvent This event is fired on Polygon mouseover.
mouseup MouseEvent This event is fired when the DOM mouseup event is fired on the Polygon.
rightclick MouseEvent This event is fired when the Polygon is right-clicked on.

google.maps.PolygonOptions object

Properties

Properties Type Description
clickable boolean Indicates whether this Polygon handles click events. Defaults to true.
editable boolean If set to true, the user can edit this shape by dragging the control points shown at the vertices and on each segment. Defaults to false.
fillColor string The fill color. All CSS3 colors are supported except for extended named colors.
fillOpacity number The fill opacity between 0.0 and 1.0
geodesic boolean When true, render each edge as a geodesic (a segment of a "great circle"). A geodesic is the shortest path between two points along the surface of the Earth. When false, render each edge as a straight line on screen. Defaults to false.
map Map Map on which to display Polygon.
paths MVCArray.<MVCArray.<LatLng>>|MVCArray.<LatLng>|Array.<Array.<LatLng>>|Array.<LatLng> The ordered sequence of coordinates that designates a closed loop. Unlike polylines, a polygon may consist of one or more paths. As a result, the paths property may specify one or more arrays of LatLng coordinates. Simple polygons may be defined using a single array of LatLngs. More complex polygons may specify an array of arrays. Any simple arrays are convered into MVCArrays. Inserting or removing LatLngs from the MVCArray will automatically update the polygon on the map.
strokeColor string The stroke color. All CSS3 colors are supported except for extended named colors.
strokeOpacity number The stroke opacity between 0.0 and 1.0
strokeWeight number The stroke width in pixels.
visible boolean Whether this polygon is visible on the map. Defaults to true.
zIndex number The zIndex compared to other polys.

google.maps.Rectangle class

A rectangle overlay.

This class extends MVCObject.

Constructor

Constructor Description
Rectangle(opts?:RectangleOptions) Create a rectangle using the passed RectangleOptions, which specify the bounds and style.

Methods

Methods Return Value Description
getBounds() LatLngBounds Returns the bounds of this rectangle.
getEditable() boolean Returns whether this rectangle can be edited by the user.
getMap() Map Returns the map on which this rectangle is displayed.
getVisible() boolean Returns whether this rectangle is visible on the map.
setBounds(bounds:LatLngBounds) None Sets the bounds of this rectangle.
setEditable(editable:boolean) None If set to true, the user can edit this rectangle by dragging the control points shown at the corners and on each edge.
setMap(map:Map) None Renders the rectangle on the specified map. If map is set to null, the rectangle will be removed.
setOptions(options:RectangleOptions) None
setVisible(visible:boolean) None Hides this rectangle if set to false.

Events

Events Arguments Description
bounds_changed None This event is fired when the rectangle's bounds are changed.
click MouseEvent This event is fired when the DOM click event is fired on the rectangle.
dblclick MouseEvent This event is fired when the DOM dblclick event is fired on the rectangle.
mousedown MouseEvent This event is fired when the DOM mousedown event is fired on the rectangle.
mousemove MouseEvent This event is fired when the DOM mousemove event is fired on the rectangle.
mouseout MouseEvent This event is fired on rectangle mouseout.
mouseover MouseEvent This event is fired on rectangle mouseover.
mouseup MouseEvent This event is fired when the DOM mouseup event is fired on the rectangle.
rightclick MouseEvent This event is fired when the rectangle is right-clicked on.

google.maps.RectangleOptions object

Properties

Properties Type Description
bounds LatLngBounds The bounds.
clickable boolean Indicates whether this Rectangle handles click events. Defaults to true.
editable boolean If set to true, the user can edit this rectangle by dragging the control points shown at the corners and on each edge. Defaults to false.
fillColor string The fill color. All CSS3 colors are supported except for extended named colors.
fillOpacity number The fill opacity between 0.0 and 1.0
map Map Map on which to display Rectangle.
strokeColor string The stroke color. All CSS3 colors are supported except for extended named colors.
strokeOpacity number The stroke opacity between 0.0 and 1.0
strokeWeight number The stroke width in pixels.
visible boolean Whether this rectangle is visible on the map. Defaults to true.
zIndex number The zIndex compared to other polys.

google.maps.Circle class

A circle on the Earth's surface; also known as a "spherical cap".

This class extends MVCObject.

Constructor

Constructor Description
Circle(opts?:CircleOptions) Create a circle using the passed CircleOptions, which specify the center, radius, and style.

Methods

Methods Return Value Description
getBounds() LatLngBounds Gets the LatLngBounds of this Circle.
getCenter() LatLng Returns the center of this circle.
getEditable() boolean Returns whether this circle can be edited by the user.
getMap() Map Returns the map on which this circle is displayed.
getRadius() number Returns the radius of this circle (in meters).
getVisible() boolean Returns whether this circle is visible on the map.
setCenter(center:LatLng) None Sets the center of this circle.
setEditable(editable:boolean) None If set to true, the user can edit this circle by dragging the control points shown at the center and around the circumference of the circle.
setMap(map:Map) None Renders the circle on the specified map. If map is set to null, the circle will be removed.
setOptions(options:CircleOptions) None
setRadius(radius:number) None Sets the radius of this circle (in meters).
setVisible(visible:boolean) None Hides this circle if set to false.

Events

Events Arguments Description
center_changed None This event is fired when the circle's center is changed.
click MouseEvent This event is fired when the DOM click event is fired on the circle.
dblclick MouseEvent This event is fired when the DOM dblclick event is fired on the circle.
mousedown MouseEvent This event is fired when the DOM mousedown event is fired on the circle.
mousemove MouseEvent This event is fired when the DOM mousemove event is fired on the circle.
mouseout MouseEvent This event is fired on circle mouseout.
mouseover MouseEvent This event is fired on circle mouseover.
mouseup MouseEvent This event is fired when the DOM mouseup event is fired on the circle.
radius_changed None This event is fired when the circle's radius is changed.
rightclick MouseEvent This event is fired when the circle is right-clicked on.

google.maps.CircleOptions object

Properties

Properties Type Description
center LatLng The center
clickable boolean Indicates whether this Circle handles click events. Defaults to true.
editable boolean If set to true, the user can edit this circle by dragging the control points shown at the center and around the circumference of the circle. Defaults to false.
fillColor string The fill color. All CSS3 colors are supported except for extended named colors.
fillOpacity number The fill opacity between 0.0 and 1.0
map Map Map on which to display Circle.
radius number The radius in meters on the Earth's surface
strokeColor string The stroke color. All CSS3 colors are supported except for extended named colors.
strokeOpacity number The stroke opacity between 0.0 and 1.0
strokeWeight number The stroke width in pixels.
visible boolean Whether this circle is visible on the map. Defaults to true.
zIndex number The zIndex compared to other polys.

google.maps.GroundOverlay class

A rectangular image overlay on the map.

This class extends MVCObject.

Constructor

Constructor Description
GroundOverlay(url:string, bounds:LatLngBounds, opts?:GroundOverlayOptions) Creates a ground overlay from the provided image URL and its LatLngBounds. The image is scaled to fit the current bounds, and projected using the current map projection.

Methods

Methods Return Value Description
getBounds() LatLngBounds Gets the LatLngBounds of this overlay.
getMap() Map Returns the map on which this ground overlay is displayed.
getOpacity() number Returns the opacity of this ground overlay.
getUrl() string Gets the url of the projected image.
setMap(map:Map) None Renders the ground overlay on the specified map. If map is set to null, the overlay is removed.
setOpacity(opacity:number) None Sets the opacity of this ground overlay.

Events

Events Arguments Description
click MouseEvent This event is fired when the DOM click event is fired on the GroundOverlay.
dblclick MouseEvent This event is fired when the DOM dblclick event is fired on the GroundOverlay.

google.maps.GroundOverlayOptions object

This object defines the properties that can be set on a GroundOverlay object.

Properties

Properties Type Description
clickable boolean If true, the ground overlay can receive click events.
map Map The map on which to display the overlay.
opacity number The opacity of the overlay, expressed as a number between 0 and 1. Optional. Defaults to 1.

google.maps.OverlayView class

You can implement this class if you want to display custom types of overlay objects on the map.

This class extends MVCObject.

Constructor

Constructor Description
OverlayView() You should inherit from this class by setting your overlay's prototype to new OverlayView.prototype. You must implement three methods: onAdd(), draw(), and onRemove(). In the add() method, you should create DOM objects and append them as children of the panes. In the draw() method, you should position these elements. In the onRemove() method, you should remove the objects from the DOM. You must call setMap() with a valid Map object to trigger the call to the onAdd() method and setMap(null) in order to trigger the onRemove() method. The setMap() method can be called at the time of construction or at any point afterward when the overlay should be re-shown after removing. The draw() method will then be called whenever a map property changes that could change the position of the element, such as zoom, center, or map type.

Methods

Methods Return Value Description
draw() None Implement this method to draw or update the overlay. This method is called after onAdd() and when the position from projection.fromLatLngToPixel() would return a new value for a given LatLng. This can happen on change of zoom, center, or map type. It is not necessarily called on drag or resize.
getMap() Map
getPanes() MapPanes Returns the panes in which this OverlayView can be rendered. Only available after draw has been called.
getProjection() MapCanvasProjection Returns the MapCanvasProjection object associated with this OverlayView. Only available after draw has been called.
onAdd() None Implement this method to initialize the overlay DOM elements. This method is called once after setMap() is called with a valid map. At this point, panes and projection will have been initialized.
onRemove() None Implement this method to remove your elements from the DOM. This method is called once following a call to setMap(null).
setMap(map:Map|StreetViewPanorama) None Adds the overlay to the map or panorama.

google.maps.MapPanes object

This object contains the DOM elements in which overlays are rendered. They are listed below with 'Pane 0' at the bottom and 'Pane 6' at the top.

Properties

Properties Type Description
floatPane Node This pane contains the info window. It is above all map overlays. (Pane 6).
floatShadow Node This pane contains the info window shadow. It is above the overlayImage, so that markers can be in the shadow of the info window. (Pane 4).
mapPane Node This pane is the lowest pane and is above the tiles. It may not receive DOM events. (Pane 0).
overlayImage Node This pane contains the marker foreground images. (Pane 3).
overlayLayer Node This pane contains polylines, polygons, ground overlays and tile layer overlays. It may not receive DOM events. (Pane 1).
overlayMouseTarget Node This pane contains elements that receive DOM mouse events, such as the transparent targets for markers. It is above the floatShadow, so that markers in the shadow of the info window can be clickable. (Pane 5).
overlayShadow Node This pane contains the marker shadows. It may not receive DOM events. (Pane 2).

google.maps.MapCanvasProjection object

This object is made available to the OverlayView from within the draw method. It is not guaranteed to be initialized until draw is called.

Methods

Methods Return Value Description
fromContainerPixelToLatLng(pixel:Point) LatLng Computes the geographical coordinates from pixel coordinates in the map's container.
fromDivPixelToLatLng(pixel:Point) LatLng Computes the geographical coordinates from pixel coordinates in the div that holds the draggable map.
fromLatLngToContainerPixel(latLng:LatLng) Point Computes the pixel coordinates of the given geographical location in the DOM element the map's outer container.
fromLatLngToDivPixel(latLng:LatLng) Point Computes the pixel coordinates of the given geographical location in the DOM element that holds the draggable map.
getWorldWidth() number The width of the world in pixels in the current zoom level. For projections with a heading angle of either 90 or 270 degress, this corresponds to the pixel span in the Y-axis.

google.maps.Geocoder class

A service for converting between an address and a LatLng.

Constructor

Constructor Description
Geocoder() Creates a new instance of a Geocoder that sends geocode requests to Google servers.

Methods

Methods Return Value Description
geocode(request:GeocoderRequest, callback:function(Array.<GeocoderResult>, GeocoderStatus)) None Geocode a request.

google.maps.GeocoderRequest object

The specification for a geocoding request to be sent to the Geocoder.

Properties

Properties Type Description
address string Address. Optional.
bounds LatLngBounds LatLngBounds within which to search. Optional.
location LatLng LatLng about which to search. Optional.
region string Country code top-level domain within which to search. Optional.

google.maps.GeocoderStatus class

The status returned by the Geocoder on the completion of a call to geocode().

Constant

Constant Description
ERROR There was a problem contacting the Google servers.
INVALID_REQUEST This GeocoderRequest was invalid.
OK The response contains a valid GeocoderResponse.
OVER_QUERY_LIMIT The webpage has gone over the requests limit in too short a period of time.
REQUEST_DENIED The webpage is not allowed to use the geocoder.
UNKNOWN_ERROR A geocoding request could not be processed due to a server error. The request may succeed if you try again.
ZERO_RESULTS No result was found for this GeocoderRequest.

google.maps.GeocoderResult object

A single geocoder result retrieved from the geocode server. A geocode request may return multiple result objects. Note that though this result is "JSON-like," it is not strictly JSON, as it indirectly includes a LatLng object.

Properties

Properties Type Description
address_components Array.<GeocoderAddressComponent> An array of GeocoderAddressComponents
formatted_address string A string containing the human-readable address of this location.
geometry GeocoderGeometry A GeocoderGeometry object
types Array.<string> An array of strings denoting the type of the returned geocoded element. For a list of possible strings, refer to the Address Component Types section of the Developer's Guide.

google.maps.GeocoderAddressComponent object

A single address component within a GeocoderResult. A full address may consist of multiple address components.

Properties

Properties Type Description
long_name string The full text of the address component
short_name string The abbreviated, short text of the given address component
types Array.<string> An array of strings denoting the type of this address component

google.maps.GeocoderGeometry object

Geometry information about this GeocoderResult

Properties

Properties Type Description
bounds LatLngBounds The precise bounds of this GeocodeResult, if applicable
location LatLng The latitude/longitude coordinates of this result
location_type GeocoderLocationType The type of location returned in location
viewport LatLngBounds The bounds of the recommended viewport for displaying this GeocodeResult

google.maps.GeocoderLocationType class

Describes the type of location returned from a geocode.

Constant

Constant Description
APPROXIMATE The returned result is approximate.
GEOMETRIC_CENTER The returned result is the geometric center of a result such a line (e.g. street) or polygon (region).
RANGE_INTERPOLATED The returned result reflects an approximation (usually on a road) interpolated between two precise points (such as intersections). Interpolated results are generally returned when rooftop geocodes are unavilable for a street address.
ROOFTOP The returned result reflects a precise geocode.

google.maps.DirectionsRenderer class

Renders directions retrieved in the form of a DirectionsResult object retrieved from the DirectionsService.

This class extends MVCObject.

Constructor

Constructor Description
DirectionsRenderer(opts?:DirectionsRendererOptions) Creates the renderer with the given options. Directions can be rendered on a map (as visual overlays) or additionally on a <div> panel (as textual instructions).

Methods

Methods Return Value Description
getDirections() DirectionsResult Returns the renderer's current set of directions.
getMap() Map Returns the map on which the DirectionsResult is rendered.
getPanel() Node Returns the panel <div> in which the DirectionsResult is rendered.
getRouteIndex() number Returns the current (zero-based) route index in use by this DirectionsRenderer object.
setDirections(directions:DirectionsResult) None Set the renderer to use the result from the DirectionsService. Setting a valid set of directions in this manner will display the directions on the renderer's designated map and panel.
setMap(map:Map) None This method specifies the map on which directions will be rendered. Pass null to remove the directions from the map.
setOptions(options:DirectionsRendererOptions) None Change the options settings of this DirectionsRenderer after initialization.
setPanel(panel:Node) None This method renders the directions in a <div>. Pass null to remove the content from the panel.
setRouteIndex(routeIndex:number) None Set the (zero-based) index of the route in the DirectionsResult object to render. By default, the first route in the array will be rendered.

Events

Events Arguments Description
directions_changed None This event is fired when the rendered directions change, either when a new DirectionsResult is set or when the user finishes dragging a change to the directions path.

google.maps.DirectionsRendererOptions object

This object defines the properties that can be set on a DirectionsRenderer object.

Properties

Properties Type Description
directions DirectionsResult The directions to display on the map and/or in a <div> panel, retrieved as a DirectionsResult object from DirectionsService.
draggable boolean If true, allows the user to drag and modify the paths of routes rendered by this DirectionsRenderer.
hideRouteList boolean This property indicates whether the renderer should provide UI to select amongst alternative routes. By default, this flag is false and a user-selectable list of routes will be shown in the directions' associated panel. To hide that list, set hideRouteList to true.
infoWindow InfoWindow The InfoWindow in which to render text information when a marker is clicked. Existing info window content will be overwritten and its position moved. If no info window is specified, the DirectionsRenderer will create and use its own info window. This property will be ignored if suppressInfoWindows is set to true.
map Map Map on which to display the directions.
markerOptions MarkerOptions Options for the markers. All markers rendered by the DirectionsRenderer will use these options.
panel Node The <div> in which to display the directions steps.
polylineOptions PolylineOptions Options for the polylines. All polylines rendered by the DirectionsRenderer will use these options.
preserveViewport boolean By default, the input map is centered and zoomed to the bounding box of this set of directions. If this option is set to true, the viewport is left unchanged, unless the map's center and zoom were never set.
routeIndex number The index of the route within the DirectionsResult object. The default value is 0.
suppressBicyclingLayer boolean Suppress the rendering of the BicyclingLayer when bicycling directions are requested.
suppressInfoWindows boolean Suppress the rendering of info windows.
suppressMarkers boolean Suppress the rendering of markers.
suppressPolylines boolean Suppress the rendering of polylines.

google.maps.DirectionsService class

A service for computing directions between two or more places.

Constructor

Constructor Description
DirectionsService() Creates a new instance of a DirectionsService that sends directions queries to Google servers.

Methods

Methods Return Value Description
route(request:DirectionsRequest, callback:function(DirectionsResult, DirectionsStatus)) None Issue a directions search request.

google.maps.DirectionsRequest object

A directions query to be sent to the DirectionsService.

Properties

Properties Type Description
avoidHighways boolean If true, instructs the Directions service to avoid highways where possible. Optional.
avoidTolls boolean If true, instructs the Directions service to avoid toll roads where possible. Optional.
destination LatLng|string Location of destination. This can be specified as either a string to be geocoded or a LatLng. Required.
optimizeWaypoints boolean If set to true, the DirectionService will attempt to re-order the supplied intermediate waypoints to minimize overall cost of the route. If waypoints are optimized, inspect DirectionsRoute.waypoint_order in the response to determine the new ordering.
origin LatLng|string Location of origin. This can be specified as either a string to be geocoded or a LatLng. Required.
provideRouteAlternatives boolean Whether or not route alternatives should be provided. Optional.
region string Region code used as a bias for geocoding requests. Optional.
travelMode TravelMode Type of routing requested. Required.
unitSystem UnitSystem Preferred unit system to use when displaying distance. Defaults to the unit system used in the country of origin.
waypoints Array.<DirectionsWaypoint> Array of intermediate waypoints. Directions will be calculated from the origin to the destination by way of each waypoint in this array. Optional.

google.maps.TravelMode class

The valid travel modes that can be specified in a DirectionsRequest as well as the travel modes returned in a DirectionsStep.

Constant

Constant Description
BICYCLING Specifies a bicycling directions request.
DRIVING Specifies a driving directions request.
WALKING Specifies a walking directions request.

google.maps.UnitSystem class

The valid unit systems that can be specified in a DirectionsRequest.

Constant

Constant Description
IMPERIAL Specifies that distances in the DirectionsResult should be expressed in imperial units.
METRIC Specifies that distances in the DirectionsResult should be expressed in metric units.

google.maps.DirectionsWaypoint object

A DirectionsWaypoint represents a location between origin and destination through which the trip should be routed.

Properties

Properties Type Description
location LatLng|string Waypoint location. Can be an address string or LatLng. Optional.
stopover boolean If true, indicates that this waypoint is a stop between the origin and destination. This has the effect of splitting the route into two. This value is true by default. Optional.

google.maps.DirectionsStatus class

The status returned by the DirectionsService on the completion of a call to route().

Constant

Constant Description
INVALID_REQUEST The DirectionsRequest provided was invalid.
MAX_WAYPOINTS_EXCEEDED Too many DirectionsWaypoints were provided in the DirectionsRequest. The total allowed waypoints is 8, plus the origin and destination.
NOT_FOUND At least one of the origin, destination, or waypoints could not be geocoded.
OK The response contains a valid DirectionsResult.
OVER_QUERY_LIMIT The webpage has gone over the requests limit in too short a period of time.
REQUEST_DENIED The webpage is not allowed to use the directions service.
UNKNOWN_ERROR A directions request could not be processed due to a server error. The request may succeed if you try again.
ZERO_RESULTS No route could be found between the origin and destination.

google.maps.DirectionsResult object

The directions response retrieved from the directions server. You can render these using a DirectionsRenderer or parse this object and render it yourself. You must display the warnings and copyrights as noted in the Maps API terms of service. Note that though this result is "JSON-like," it is not strictly JSON, as it indirectly includes LatLng objects.

Properties

Properties Type Description
routes Array.<DirectionsRoute> An array of DirectionsRoutes, each of which contains information about the legs and steps of which it is composed. There will only be one route unless the DirectionsRequest was made with provideRouteAlternatives set to true. (This property was formerly known as "trips".)

google.maps.DirectionsRoute object

A single route containing a set of legs in a DirectionsResult. (This object was formerly known as "DirectionsTrip".) Note that though this object is "JSON-like," it is not strictly JSON, as it directly and indirectly includes LatLng objects.

Properties

Properties Type Description
bounds LatLngBounds The bounds for this route.
copyrights string Copyrights text to be displayed for this route.
legs Array.<DirectionsLeg> An array of DirectionsLegs, each of which contains information about the steps of which it is composed. There will be one leg for each waypoint or destination specified. So a route with no waypoints will contain one DirectionsLeg and a route with one waypoint will contain two. (This property was formerly known as "routes".)
overview_path Array.<LatLng> An array of LatLngs representing the entire course of this route. The path is simplified in order to make it suitable in contexts where a small number of vertices is required (such as Static Maps API URLs).
warnings Array.<string> Warnings to be displayed when showing these directions.
waypoint_order Array.<number> If optimizeWaypoints was set to true, this field will contain the re-ordered permutation of the input waypoints. For example, if the input was:
  Origin: Los Angeles
  Waypoints: Dallas, Bangor, Phoenix
  Destination: New York
and the optimized output was ordered as follows:
  Origin: Los Angeles
  Waypoints: Phoenix, Dallas, Bangor
  Destination: New York
then this field will be an Array containing the values [2, 0, 1]. Note that the numbering of waypoints is zero-based.
If any of the input waypoints has stopover set to false, this field will be empty, since route optimization is not available for such queries.

google.maps.DirectionsLeg object

A single leg consisting of a set of steps in a DirectionsResult. Some fields in the leg may not be returned for all requests. (This object was formerly known as "DirectionsRoute".) Note that though this result is "JSON-like," it is not strictly JSON, as it directly and indirectly includes LatLng objects.

Properties

Properties Type Description
distance Distance The total distance covered by this leg. This property may be undefined as the distance may be unknown.
duration Duration The total duration of this leg. This property may be undefined as the duration may be unknown.
end_address string The address of the destination of this leg.
end_location LatLng The DirectionsService calculates directions between locations by using the nearest transportation option (usually a road) at the start and end locations. end_location indicates the actual geocoded destination, which may be different than the end_location of the last step if, for example, the road is not near the destination of this leg.
start_address string The address of the origin of this leg.
start_location LatLng The DirectionsService calculates directions between locations by using the nearest transportation option (usually a road) at the start and end locations. start_location indicates the actual geocoded origin, which may be different than the start_location of the first step if, for example, the road is not near the origin of this leg.
steps Array.<DirectionsStep> An array of DirectionsSteps, each of which contains information about the individual steps in this leg.
via_waypoints Array.<LatLng> An array of waypoints along this leg that were not specified in the original request, either as a result of a user dragging the polyline or selecting an alternate route.

google.maps.DirectionsStep object

A single DirectionsStep in a DirectionsResult. Some fields may be undefined. Note that though this object is "JSON-like," it is not strictly JSON, as it directly includes LatLng objects.

Properties

Properties Type Description
distance Distance The distance covered by this step. This property may be undefined as the distance may be unknown.
duration Duration The typical time required to perform this step in seconds and in text form. This property may be undefined as the duration may be unknown.
end_location LatLng The ending location of this step.
instructions string Instructions for this step.
path Array.<LatLng> A sequence of LatLngs describing the course of this step.
start_location LatLng The starting location of this step.
travel_mode TravelMode The mode of travel used in this step.

google.maps.Distance object

A representation of distance as a numeric value and a display string.

Properties

Properties Type Description
text string A string representation of the distance value, using the UnitSystem specified in the request.
value number The distance in meters.

google.maps.Duration object

A representation of duration as a numeric value and a display string.

Properties

Properties Type Description
text string A string representation of the duration value.
value number The duration in seconds.

google.maps.ElevationService class

Defines a service class that talks directly to Google servers for requesting elevation data.

Constructor

Constructor Description
ElevationService() Creates a new instance of a ElevationService that sends elevation queries to Google servers.

Methods

Methods Return Value Description
getElevationAlongPath(request:PathElevationRequest, callback:function(Array.<ElevationResult>, ElevationStatus)) None Makes an elevation request along a path, where the elevation data are returned as distance-based samples along that path.
getElevationForLocations(request:LocationElevationRequest, callback:function(Array.<ElevationResult>, ElevationStatus)) None Makes an elevation request for a list of discrete locations.

google.maps.LocationElevationRequest object

An elevation request sent by the ElevationService containing the list of discrete coordinates (LatLngs) for which to return elevation data.

Properties

Properties Type Description
locations Array.<LatLng> The discrete locations for which to retrieve elevations.

google.maps.PathElevationRequest object

An elevation query sent by the ElevationService containing the path along which to return sampled data. This request defines a continuous path along the earth along which elevation samples should be taken at evenly-spaced distances. All paths from vertex to vertex use segments of the great circle between those two points.

Properties

Properties Type Description
path Array.<LatLng> The path along which to collect elevation values.
samples number Required. The number of equidistant points along the given path for which to retrieve elevation data, including the endpoints. The number of samples must be a value between 2 and 1024.

google.maps.ElevationResult object

The result of an ElevationService request, consisting of the set of elevation coordinates and their elevation values. Note that a single request may produce multiple ElevationResults.

Properties

Properties Type Description
elevation number The elevation of this point on Earth, in meters above sea level.
location LatLng The location of this elevation result.
resolution number The distance, in meters, between sample points from which the elevation was interpolated. This property will be missing if the resolution is not known. Note that elevation data becomes more coarse (larger resolution values) when multiple points are passed. To obtain the most accurate elevation value for a point, it should be queried independently.

google.maps.ElevationStatus class

The status returned by the ElevationService upon completion of an elevation requerst.

Constant

Constant Description
INVALID_REQUEST This request was invalid.
OK The request did not encounter any errors.
OVER_QUERY_LIMIT The webpage has gone over the requests limit in too short a period of time.
REQUEST_DENIED The webpage is not allowed to use the elevation service for some reason.
UNKNOWN_ERROR A geocoding, directions or elevation request could not be successfully processed, yet the exact reason for the failure is not known.

google.maps.MaxZoomService class

A service for obtaining the highest zoom level at which satellite imagery is available for a given location.

Constructor

Constructor Description
MaxZoomService() Creates a new instance of a MaxZoomService that can be used to send queries about the maximum zoom level available for satellite imagery.

Methods

Methods Return Value Description
getMaxZoomAtLatLng(latlng:LatLng, callback:function(MaxZoomResult)) None Returns the maximum zoom level available at a particular LatLng for the Satellite map type. As this request is asynchronous, you must pass a callback function which will be executed upon completion of the request, being passed a MaxZoomResult.

google.maps.MaxZoomResult object

A MaxZoom result in JSON format retrieved from the MaxZoomService.

Properties

Properties Type Description
status MaxZoomStatus Status of the request.
zoom number The maximum zoom level found at the given LatLng.

google.maps.MaxZoomStatus class

The status returned by the MaxZoomService on the completion of a call to getMaxZoomAtLatLng().

Constant

Constant Description
ERROR There was a problem contacting the Google servers.
OK The response contains a valid MaxZoomResult.

google.maps.DistanceMatrixService class

A service for computing distances between multiple origins and destinations.

Constructor

Constructor Description
DistanceMatrixService() Creates a new instance of a DistanceMatrixService that sends distance matrix queries to Google servers.

Methods

Methods Return Value Description
getDistanceMatrix(request:DistanceMatrixRequest, callback:function(DistanceMatrixResponse, DistanceMatrixStatus)) None Issues a distance matrix request.

google.maps.DistanceMatrixRequest object

A distance matrix query sent by the DistanceMatrixService containing arrays of origin and destination locations, and various options for computing metrics.

Properties

Properties Type Description
avoidHighways boolean If true, instructs the Distance Matrix service to avoid highways where possible. Optional.
avoidTolls boolean If true, instructs the Distance Matrix service to avoid toll roads where possible. Optional.
destinations Array.<LatLng>|Array.<string> An array containing destination address strings and/or LatLngs, to which to calculate distance and time. Required.
origins Array.<LatLng>|Array.<string> An array containing origin address strings and/or LatLngs, from which to calculate distance and time. Required.
region string Region code used as a bias for geocoding requests. Optional.
travelMode TravelMode Type of routing requested. Required.
unitSystem UnitSystem Preferred unit system to use when displaying distance. Optional; defaults to metric.

google.maps.DistanceMatrixResponse object

The response to a DistanceMatrixService request, consisting of the formatted origin and destination addresses, and a sequence of DistanceMatrixResponseRows, one for each corresponding origin address.

Properties

Properties Type Description
destinationAddresses Array.<string> The formatted destination addresses.
originAddresses Array.<string> The formatted origin addresses.
rows Array.<DistanceMatrixResponseRow> The rows of the matrix, corresponding to the origin addresses.

google.maps.DistanceMatrixResponseRow object

A row of the response to a DistanceMatrixService request, consisting of a sequence of DistanceMatrixResponseElements, one for each corresponding destination address.

Properties

Properties Type Description
elements Array.<DistanceMatrixResponseElement> The row's elements, corresponding to the destination addresses.

google.maps.DistanceMatrixResponseElement object

A single element of a response to a DistanceMatrixService request, which contains the duration and distance from one origin to one destination.

Properties

Properties Type Description
distance Distance The distance for this origin-destination pairing. This property may be undefined as the distance may be unknown.
duration Duration The duration for this origin-destination pairing. This property may be undefined as the duration may be unknown.
status DistanceMatrixElementStatus The status of this particular origin-destination pairing.

google.maps.DistanceMatrixStatus class

The top-level status about the request in general returned by the DistanceMatrixService upon completion of a distance matrix request.

Constant

Constant Description
INVALID_REQUEST The provided request was invalid.
MAX_DIMENSIONS_EXCEEDED The request contains more than 25 origins, or more than 25 destinations.
MAX_ELEMENTS_EXCEEDED The product of origins and destinations exceeds the per-query limit.
OK The response contains a valid result.
OVER_QUERY_LIMIT Too many elements have been requested within the allowed time period. The request should succeed if you try again after a reasonable amount of time.
REQUEST_DENIED The service denied use of the Distance Matrix service by your web page.
UNKNOWN_ERROR A Distance Matrix request could not be processed due to a server error. The request may succeed if you try again.

google.maps.DistanceMatrixElementStatus class

The element-level status about a particular origin-destination pairing returned by the DistanceMatrixService upon completion of a distance matrix request.

Constant

Constant Description
NOT_FOUND The origin and/or destination of this pairing could not be geocoded.
OK The response contains a valid result.
ZERO_RESULTS No route could be found between the origin and destination.

google.maps.MapType object

This interface defines the map type, and is typically used for custom map types. Immutable.

Methods

Methods Return Value Description
getTile(tileCoord:Point, zoom:number, ownerDocument:Document) Node Returns a tile for the given tile coordinate (x, y) and zoom level. This tile will be appended to the given ownerDocument. Not available for base map types.
releaseTile(tile:Node) None Releases the given tile, performing any necessary cleanup. The provided tile will have already been removed from the document. Optional.

Properties

Properties Type Description
alt string Alt text to display when this MapType's button is hovered over in the MapTypeControl. Optional.
maxZoom number The maximum zoom level for the map when displaying this MapType. Required for base MapTypes, ignored for overlay MapTypes.
minZoom number The minimum zoom level for the map when displaying this MapType. Optional; defaults to 0.
name string Name to display in the MapTypeControl. Optional.
projection Projection The Projection used to render this MapType. Optional; defaults to Mercator.
radius number Radius of the planet for the map, in meters. Optional; defaults to Earth's equatorial radius of 6378137 meters.
tileSize Size The dimensions of each tile. Required.

google.maps.MapTypeRegistry class

This class extends MVCObject.

Constructor

Constructor Description
MapTypeRegistry() 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

Methods Return Value Description
set(id:string, mapType:MapType) None Sets the registry to associate the passed string identifier with the passed MapType.

google.maps.Projection object

Methods

Methods Return Value Description
fromLatLngToPoint(latLng:LatLng, point?:Point) Point Translates from the LatLng cylinder to the Point plane. This interface specifies a function which implements translation from given LatLng values to world coordinates on the map projection. The Maps API calls this method when it needs to plot locations on screen. Projection objects must implement this method.
fromPointToLatLng(pixel:Point, nowrap?:boolean) LatLng This interface specifies a function which implements translation from world coordinates on a map projection to LatLng values. The Maps API calls this method when it needs to translate actions on screen to positions on the map. Projection objects must implement this method.

google.maps.ImageMapType class

This class implements the MapType interface and is provided for rendering image tiles.

This class extends MVCObject.

Constructor

Constructor Description
ImageMapType(opts:ImageMapTypeOptions) Constructs an ImageMapType using the provided ImageMapTypeOptions

Methods

Methods Return Value Description
getOpacity() number Returns the opacity level (0 (transparent) to 1.0) of the ImageMapType tiles.
setOpacity(opacity:number) None Sets the opacity level (0 (transparent) to 1.0) of the ImageMapType tiles.

Events

Events Arguments Description
tilesloaded None This event is fired when the visible tiles have finished loading.

google.maps.ImageMapTypeOptions object

This class is used to create a MapType that renders image tiles.

Properties

Properties Type Description
alt string Alt text to display when this MapType's button is hovered over in the MapTypeControl.
getTileUrl Function(Point, number):string Returns a string (URL) for given tile coordinate (x, y) and zoom level. This function should have a signature of: getTileUrl(Point, number):string
maxZoom number The maximum zoom level for the map when displaying this MapType.
minZoom number The minimum zoom level for the map when displaying this MapType. Optional.
name string Name to display in the MapTypeControl.
opacity number The opacity to apply to the tiles. The opacity should be specified as a float value between 0 and 1.0, where 0 is fully transparent and 1 is fully opaque.
tileSize Size The tile size.

google.maps.StyledMapType class

Creates a MapType with a custom style.

Constructor

Constructor Description
StyledMapType(styles:Array.<MapTypeStyle>, options?:StyledMapTypeOptions) Creates a styled MapType with the specified options. The StyledMapType takes an array of MapTypeStyles, where each MapTypeStyle is applied to the map consecutively. A later MapTypeStyle that applies the same MapTypeStylers to the same selectors as an earlier MapTypeStyle will override the earlier MapTypeStyle.

google.maps.StyledMapTypeOptions object

This class is used to specify options when creating a StyledMapType. These options cannot be changed after the StyledMapType is instantiated.

Properties

Properties Type Description
alt string Text to display when this MapType's button is hovered over in the map type control.
maxZoom number The maximum zoom level for the map when displaying this MapType. Optional.
minZoom number The minimum zoom level for the map when displaying this MapType. Optional.
name string The name to display in the map type control.

google.maps.MapTypeStyle object

The MapTypeStyle is a collection of selectors and stylers that define how the map should be styled. Selectors specify what map elements should be affected and stylers specify how those elements should be modified.

Properties

Properties Type Description
elementType MapTypeStyleElementType Selects the element type to which a styler should be applied. An element type distinguishes between the different representations of a feature. Optional; if elementType is not specified, the value is assumed to be 'all'.
featureType MapTypeStyleFeatureType Selects 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'.
stylers Array.<MapTypeStyler> The style rules to apply to the selectors. The rules are applied to the map's elements in the order they are listed in this array.

google.maps.MapTypeStyleFeatureType object

Possible values for feature types. Specify these values as strings, i.e. 'administrative' or 'poi.park'. Stylers applied to a parent feature type automatically apply to all child feature types. Note however that parent features may include some additional features that are not included in one of their child feature types.

Constant

Constant Description
administrative Apply the rule to administrative areas.
administrative.country Apply the rule to countries.
administrative.land_parcel Apply the rule to land parcels.
administrative.locality Apply the rule to localities.
administrative.neighborhood Apply the rule to neighborhoods.
administrative.province Apply the rule to provinces.
all Apply the rule to all selector types.
landscape Apply the rule to landscapes.
landscape.man_made Apply the rule to man made structures.
landscape.natural Apply the rule to natural features.
poi Apply the rule to points of interest.
poi.attraction Apply the rule to attractions for tourists.
poi.business Apply the rule to businesses.
poi.government Apply the rule to government buildings.
poi.medical Apply the rule to emergency services (hospitals, pharmacies, police, doctors, etc).
poi.park Apply the rule to parks.
poi.place_of_worship Apply the rule to places of worship, such as church, temple, or mosque.
poi.school Apply the rule to schools.
poi.sports_complex Apply the rule to sports complexes.
road Apply the rule to all roads.
road.arterial Apply the rule to arterial roads.
road.highway Apply the rule to highways.
road.highway.controlled_access Apply the rule to controlled-access highways.
road.local Apply the rule to local roads.
transit Apply the rule to all transit stations and lines.
transit.line Apply the rule to transit lines.
transit.station Apply the rule to all transit stations.
transit.station.airport Apply the rule to airports.
transit.station.bus Apply the rule to bus stops.
transit.station.rail Apply the rule to rail stations.
water Apply the rule to bodies of water.

google.maps.MapTypeStyleElementType object

Each MapTypeStyleElementType distinguishes between the different representations of a feature.

Constant

Constant Description
all Apply the rule to all elements of the specified feature.
geometry Apply the rule to the feature's geometry.
labels Apply the rule to the feature's labels.

google.maps.MapTypeStyler object

A styler affects how a map's elements will be styled. Each MapTypeStyler should contain one and only one key. If more than one key is specified in a single MapTypeStyler, all but one will be ignored. For example: var rule = {hue: '#ff0000'}.

Properties

Properties Type Description
gamma number Gamma. Modifies the gamma by raising the lightness to the given power. Valid values: Floating point numbers, [0.01, 10], with 1.0 representing no change.
hue string Sets the hue of the feature to match the hue of the color supplied. Note that the saturation and lightness of the feature is conserved, which means that the feature will not match the color supplied exactly. Valid values: An RGB hex string, i.e. '#ff0000'.
invert_lightness boolean Inverts lightness. A value of true will invert the lightness of the feature while preserving the hue and saturation.
lightness number Lightness. Shifts lightness of colors by a percentage of the original value if decreasing and a percentage of the remaining value if increasing. Valid values: [-100, 100].
saturation number Saturation. Shifts the saturation of colors by a percentage of the original value if decreasing and a percentage of the remaining value if increasing. Valid values: [-100, 100].
visibility string Visibility: Valid values: 'on', 'off' or 'simplifed'.

google.maps.BicyclingLayer class

A layer showing bike lanes and paths.

This class extends MVCObject.

Constructor

Constructor Description
BicyclingLayer() A layer that displays bike lanes and paths and demotes large roads.

Methods

Methods Return Value Description
getMap() Map Returns the map on which this layer is displayed.
setMap(map:Map) None Renders the layer on the specified map. If map is set to null, the layer will be removed.

google.maps.FusionTablesLayer class

A FusionTablesLayer allows you to display data from a Google Fusion Table on a map, as a rendered layer. (See https://developers.google.com/fusiontables/ for more information about Fusion Tables).

This class extends MVCObject.

Constructor

Constructor Description
FusionTablesLayer(options:FusionTablesLayerOptions) A layer that displays data from a Fusion Table.

Methods

Methods Return Value Description
getMap() Map Returns the map on which this layer is displayed.
setMap(map:Map) None Renders the layer on the specified map. If map is set to null, the layer will be removed.
setOptions(options:FusionTablesLayerOptions) None

Events

Events Arguments Description
click FusionTablesMouseEvent This event is fired when a feature in the layer is clicked.

google.maps.FusionTablesLayerOptions object

This object defines the properties that can be set on a FusionTablesLayer object.

Properties

Properties Type Description
clickable boolean If true, the layer receives mouse events. Default value is true.
heatmap FusionTablesHeatmap Options which define the appearance of the layer as a heatmap.
map Map The map on which to display the layer.
query FusionTablesQuery Options defining the data to display.
styles Array.<FusionTablesStyle> An array of up to 5 style specifications, which control the appearance of features within the layer.
suppressInfoWindows boolean Suppress the rendering of info windows when layer features are clicked.

google.maps.FusionTablesQuery object

Specifies the data to retrieve from a Fusion Tables.

Properties

Properties Type Description
from string The ID of the Fusion Tables table to display. This ID can be found in the table's URL, as the value of the dsrcid parameter.
select string A column, containing geographic features to be displayed on the map. See Fusion Tables Setup in the Maps API documentation for information about valid columns.
where string The SQL predicate to be applied to the layer.

google.maps.FusionTablesStyle object

Controls the appearance of a set of features within a FusionTablesLayer. Features which match the provided SQL predicate will be styled with the supplied options.

Properties

Properties Type Description
markerOptions FusionTablesMarkerOptions Options which control the appearance of point features.
polygonOptions FusionTablesPolygonOptions Options which control the appearance of polygons.
polylineOptions FusionTablesPolylineOptions Options which control the appearance of polylines.
where string The SQL predicate to be applied to the layer.

google.maps.FusionTablesHeatmap object

Specifies the appearance for a FusionTablesLayer when rendered as a heatmap.

Properties

Properties Type Description
enabled boolean If true, render the layer as a heatmap.

google.maps.FusionTablesMarkerOptions object

Options which control the appearance of point features in a FusionTablesLayer.

Properties

Properties Type Description
iconName string The name of a Fusion Tables supported icon

google.maps.FusionTablesPolygonOptions object

Options which control the appearance of polygons in a FusionTablesLayer.

Properties

Properties Type Description
fillColor string The fill color, defined by a six-digit hexadecimal number in RRGGBB format (e.g. #00AAFF).
fillOpacity number The fill opacity between 0.0 and 1.0.
strokeColor string The fill color, defined by a six-digit hexadecimal number in RRGGBB format (e.g. #00AAFF).
strokeOpacity number The stroke opacity between 0.0 and 1.0.
strokeWeight number The stroke width in pixels, between 0 and 10.

google.maps.FusionTablesPolylineOptions object

Options which control the appearance of polylines in a FusionTablesLayer.

Properties

Properties Type Description
strokeColor string The fill color, defined by a six-digit hexadecimal number in RRGGBB format (e.g. #00AAFF).
strokeOpacity number The stroke opacity between 0.0 and 1.0.
strokeWeight number The stroke width in pixels.

google.maps.FusionTablesMouseEvent object

The properties of a mouse event on a FusionTablesLayer.

Properties

Properties Type Description
infoWindowHtml string Pre-rendered HTML content, as placed in the infowindow by the default UI.
latLng LatLng The position at which to anchor an infowindow on the clicked feature.
pixelOffset Size The offset to apply to an infowindow anchored on the clicked feature.
row Object A collection of FusionTablesCell objects, indexed by column name, representing the contents of the table row which included the clicked feature.

google.maps.FusionTablesCell object

Describes a single cell from a Fusion Tables table.

Properties

Properties Type Description
columnName string The name of the column in which the cell was located.
value string The contents of the cell.

google.maps.KmlLayer class

A KmlLayer adds geographic markup to the map from a KML, KMZ or GeoRSS file that is hosted on a publicly accessible web server. A KmlFeatureData object is provided for each feature when clicked.

This class extends MVCObject.

Constructor

Constructor Description
KmlLayer(url:string, opts?:KmlLayerOptions) Creates a KmlLayer which renders the contents of the specified KML/KMZ file (https://developers.google.com/kml/documentation/kmlreference) or GeoRSS file (http://www.georss.org).

Methods

Methods Return Value Description
getDefaultViewport() LatLngBounds Get the default viewport for the layer being displayed.
getMap() Map Get the map on which the KML Layer is being rendered.
getMetadata() KmlLayerMetadata Get the metadata associated with this layer, as specified in the layer markup.
getStatus() KmlLayerStatus Get the status of the layer, set once the requested document has loaded.
getUrl() string Get the URL of the geographic markup which is being displayed.
setMap(map:Map) None Renders the KML Layer on the specified map. If map is set to null, the layer is removed.

Events

Events Arguments Description
click KmlMouseEvent This event is fired when a feature in the layer is clicked.
defaultviewport_changed None This event is fired when the KML layers default viewport has changed.
status_changed None This event is fired when the KML layer has finished loading. At this point it is safe to read the status property to determine if the layer loaded successfully.

google.maps.KmlLayerOptions object

This object defines the properties that can be set on a KmlLayer object.

Properties

Properties Type Description
clickable boolean If true, the layer receives mouse events. Default value is true.
map Map The map on which to display the layer.
preserveViewport boolean By default, the input map is centered and zoomed to the bounding box of the contents of the layer. If this option is set to true, the viewport is left unchanged, unless the map's center and zoom were never set.
suppressInfoWindows boolean Suppress the rendering of info windows when layer features are clicked.

google.maps.KmlLayerMetadata object

Metadata for a single KML layer, in JSON format.

Properties

Properties Type Description
author KmlAuthor The layer's <atom:author>, extracted from the layer markup.
description string The layer's <description>, extracted from the layer markup.
name string The layer's <name>, extracted from the layer markup.
snippet string The layer's <Snippet>, extracted from the layer markup

google.maps.KmlLayerStatus class

The status returned by KmlLayer on the completion of loading a document.

Constant

Constant Description
DOCUMENT_NOT_FOUND The document could not be found. Most likely it is an invalid URL, or the document is not publicly available.
DOCUMENT_TOO_LARGE The document exceeds the file size limits of KmlLayer.
FETCH_ERROR The document could not be fetched.
INVALID_DOCUMENT The document is not a valid KML, KMZ or GeoRSS document.
INVALID_REQUEST The KmlLayer is invalid.
LIMITS_EXCEEDED The document exceeds the feature limits of KmlLayer.
OK The layer loaded successfully.
TIMED_OUT The document could not be loaded within a reasonable amount of time.
UNKNOWN The document failed to load for an unknown reason.

google.maps.KmlMouseEvent object

The properties of a click event on a KML/KMZ or GeoRSS document.

Properties

Properties Type Description
featureData KmlFeatureData A KmlFeatureData object, containing information about the clicked feature.
latLng LatLng The position at which to anchor an infowindow on the clicked feature.
pixelOffset Size The offset to apply to an infowindow anchored on the clicked feature.

google.maps.KmlFeatureData object

Data for a single KML feature in JSON format, returned when a KML feature is clicked. The data contained in this object mirrors that associated with the feature in the KML or GeoRSS markup in which it is declared.

Properties

Properties Type Description
author KmlAuthor The feature's <atom:author>, extracted from the layer markup (if specified).
description string The feature's <description>, extracted from the layer markup.
id string The feature's <id>, extracted from the layer markup. If no <id> has been specified, a unique ID will be generated for this feature.
infoWindowHtml string The feature's balloon styled text, if set.
name string The feature's <name>, extracted from the layer markup.
snippet string The feature's <Snippet>, extracted from the layer markup.

google.maps.KmlAuthor object

Contains details of the author of a KML document or feature.

Properties

Properties Type Description
email string The author's e-mail address, or an empty string if not specified.
name string The author's name, or an empty string if not specified.
uri string The author's home page, or an empty string if not specified.

google.maps.TrafficLayer class

A traffic layer.

This class extends MVCObject.

Constructor

Constructor Description
TrafficLayer() A layer that displays current road traffic.

Methods

Methods Return Value Description
getMap() Map Returns the map on which this layer is displayed.
setMap(map:Map) None Renders the layer on the specified map. If map is set to null, the layer will be removed.

google.maps.StreetViewPanorama class

Displays the panorama for a given LatLng or panorama ID. A StreetViewPanorama object provides a Street View "viewer" which can be stand-alone within a separate <div> or bound to a Map.

This class extends MVCObject.

Constructor

Constructor Description
StreetViewPanorama(container:Node, opts?:StreetViewPanoramaOptions) Creates a panorama with the passed StreetViewPanoramaOptions.

Methods

Methods Return Value Description
getLinks() Array.<StreetViewLink> Returns the set of navigation links for the Street View panorama.
getPano() string Returns the current panorama ID for the Street View panorama. This id is stable within the browser's current session only.
getPosition() LatLng Returns the current LatLng position for the Street View panorama.
getPov() StreetViewPov Returns the current point of view for the Street View panorama.
getVisible() boolean Returns true if the panorama is visible. It does not specify whether Street View imagery is available at the specified position.
registerPanoProvider(provider:function(string):StreetViewPanoramaData) None Set the custom panorama provider called on pano change to load custom panoramas.
setPano(pano:string) None Sets the current panorama ID for the Street View panorama.
setPosition(latLng:LatLng) None Sets the current LatLng position for the Street View panorama.
setPov(pov:StreetViewPov) None Sets the point of view for the Street View panorama.
setVisible(flag:boolean) None Sets to true to make the panorama visible. If set to false, the panorama will be hidden whether it is embedded in the map or in its own <div>.

Properties

Properties Type Description
controls Array.<MVCArray.<Node>> Additional controls to attach to the panorama. To add a control to the panorama, add the control's <div> to the MVCArray corresponding to the ControlPosition where it should be rendered.

Events

Events Arguments Description
closeclick Event This event is fired when the close button is clicked.
links_changed None This event is fired when the panorama's links change. The links change asynchronously following a pano id change.
pano_changed None This event is fired when the panorama's pano id changes. The pano may change as the user navigates through the panorama or the position is manually set. Note that not all position changes trigger a pano_changed.
position_changed None This event is fired when the panorama's position changes. The position changes as the user navigates through the panorama or the position is set manually.
pov_changed None This event is fired when the panorama's point-of-view changes. The point of view changes as the pitch, zoom, or heading changes.
resize None Developers should trigger this event on the panorama when its div changes size: google.maps.event.trigger(panorama, 'resize').
visible_changed None This event is fired when the panorama's visibility changes. The visibility is changed when the Pegman id dragged onto the map, the close button is clicked, or setVisible() is called.

google.maps.StreetViewPanoramaOptions object

Options defining the properties of a StreetViewPanorama object.

Properties

Properties Type Description
addressControl boolean The enabled/disabled state of the address control.
addressControlOptions StreetViewAddressControlOptions The display options for the address control.
clickToGo boolean The enabled/disabled state of click-to-go.
disableDoubleClickZoom boolean Enables/disables zoom on double click. Disabled by default.
enableCloseButton boolean If true, the close button is displayed. Disabled by default.
imageDateControl boolean The enabled/disabled state of the imagery acquisition date control.
linksControl boolean The enabled/disabled state of the links control.
panControl boolean The enabled/disabled state of the pan control.
panControlOptions PanControlOptions The display options for the pan control.
pano string The panorama ID, which should be set when specifying a custom panorama.
panoProvider Function(string):StreetViewPanoramaData Custom panorama provider, which takes a string pano id and returns an object defining the panorama given that id. This function must be defined to specify custom panorama imagery.
position LatLng The LatLng position of the Street View panorama.
pov StreetViewPov The camera orientation, specified as heading, pitch, and zoom, for the panorama.
scrollwheel boolean If false, disables scrollwheel zooming in Street View. The scrollwheel is enabled by default.
visible boolean If true, the Street View panorama is visible on load.
zoomControl boolean The enabled/disabled state of the zoom control.
zoomControlOptions ZoomControlOptions The display options for the zoom control.

google.maps.StreetViewAddressControlOptions object

Options for the rendering of the Street View address control.

Properties

Properties Type Description
position ControlPosition Position id. This id is used to specify the position of the control on the map. The default position is TOP_LEFT.

google.maps.StreetViewLink object

A collection of references to adjacent Street View panos.

Properties

Properties Type Description
description string A localized string describing the link.
heading number The heading of the link.
pano string A unique identifier for the panorama. This id is stable within a session but unstable across sessions.

google.maps.StreetViewPov object

A point of view object which specifies the camera's orientation at the Street View panorama's position. The point of view is defined as heading, pitch and zoom.

Properties

Properties Type Description
heading number The camera heading in degrees relative to true north. True north is 0°, east is 90°, south is 180°, west is 270°.
pitch number The camera pitch in degrees, relative to the street view vehicle. Ranges from 90° (directly upwards) to -90° (directly downwards).
zoom number The zoom level. Fully zoomed-out is level 0, zooming in increases the zoom level.

google.maps.StreetViewPanoramaData object

The representation of a panorama returned from the provider defined using registerPanoProvider.

Properties

Properties Type Description
copyright string Specifies the copyright text for this panorama.
imageDate string Specifies the year and month in which the imagery in this panorama was acquired. The date string is in the form YYYY-MM.
links Array.<StreetViewLink> Specifies the navigational links to adjacent panoramas.
location StreetViewLocation Specifies the location meta-data for this panorama.
tiles StreetViewTileData Specifies the custom tiles for this panorama.

google.maps.StreetViewLocation object

A representation of a location in the Street View panorama.

Properties

Properties Type Description
description string A localized string describing the location.
latLng LatLng The latlng of the panorama.
pano string A unique identifier for the panorama. This is stable within a session but unstable across sessions.

google.maps.StreetViewTileData object

The properties of the tile set used in a Street View panorama.

Methods

Methods Return Value Description
getTileUrl(pano:string, tileZoom:number, tileX:number, tileY:number) string Gets the tile image URL for the specified tile.
pano is the panorama ID of the Street View tile.
tileZoom is the zoom level of the tile.
tileX is the x-coordinate of the tile.
tileY is the y-coordinate of the tile.
Returns the URL for the tile image.

Properties

Properties Type Description
centerHeading number The heading (in degrees) at the center of the panoramic tiles.
tileSize Size The size (in pixels) at which tiles will be rendered. This may not be the native tile image size.
worldSize Size The size (in pixels) of the whole panorama's "world".

google.maps.StreetViewService class

A StreetViewService object performs searches for Street View data.

Methods

Methods Return Value Description
getPanoramaById(pano:string, callback:function(StreetViewPanoramaData, StreetViewStatus)) None Retrieves the data for the given pano id and passes it to the provided callback as a StreetViewPanoramaData object. Pano ids are unique per panorama and stable for the lifetime of a session, but are liable to change between sessions.
getPanoramaByLocation(latlng:LatLng, radius:number, callback:function(StreetViewPanoramaData, StreetViewStatus)) None Retrieves the StreetViewPanoramaData for a panorama within a given radius of the given LatLng. The StreetViewPanoramaData is passed to the provided callback. If the radius is less than 50 meters, the nearest panorama will be returned.

google.maps.StreetViewStatus class

The status returned by the StreetViewService on completion of a Street View request.

Constant

Constant Description
OK The request was successful.
UNKNOWN_ERROR The request could not be successfully processed, yet the exact reason for failure is unknown.
ZERO_RESULTS There are no nearby panoramas.

google.maps.MapsEventListener object

This class is opaque. It has no methods and no constructor. Its instances are returned from addListener(), addDomListener() and are eventually passed back to removeListener().

google.maps.event namespace

Static Methods

Methods Return Value Description
addDomListener(instance:Object, eventName:string, handler:Function, capture?:boolean) MapsEventListener Cross browser event handler registration. This listener is removed by calling removeListener(handle) for the handle that is returned by this function.
addDomListenerOnce(instance:Object, eventName:string, handler:Function, capture?:boolean) MapsEventListener Wrapper around addDomListener that removes the listener after the first event.
addListener(instance:Object, eventName:string, handler:Function) MapsEventListener Adds the given listener function to the given event name for the given object instance. Returns an identifier for this listener that can be used with removeListener().
addListenerOnce(instance:Object, eventName:string, handler:Function) MapsEventListener Like addListener, but the handler removes itself after handling the first event.
clearInstanceListeners(instance:Object) None Removes all listeners for all events for the given instance.
clearListeners(instance:Object, eventName:string) None Removes all listeners for the given event for the given instance.
removeListener(listener:MapsEventListener) None Removes the given listener, which should have been returned by addListener above.
trigger(instance:Object, eventName:string, var_args:*) None Triggers the given event. All arguments after eventName are passed as arguments to the listeners.

google.maps.MouseEvent object

This object is returned from various mouse events on the map and overlays, and contains all the fields shown below.

Methods

Methods Return Value Description
stop() None Prevents this event from propagating further.

Properties

Properties Type Description
latLng LatLng The latitude/longitude that was below the cursor when the event occurred.

google.maps.LatLng class

LatLng is a point in geographical coordinates, latitude and longitude.

Notice that although usual map projections associate longitude with the x-coordinate of the map, and latitude with the y-coordinate, the latitude coordinate is always written first, followed by the longitude.

Notice also that you cannot modify the coordinates of a LatLng. If you want to compute another point, you have to create a new one.

Constructor

Constructor Description
LatLng(lat:number, lng:number, noWrap?:boolean) Notice the ordering of latitude and longitude. If the noWrap flag is true, then the numbers will be used as passed, otherwise latitude will be clamped to lie between -90 degrees and +90 degrees, and longitude will be wrapped to lie between -180 degrees and +180 degrees.

Methods

Methods Return Value Description
equals(other:LatLng) boolean Comparison function.
lat() number Returns the latitude in degrees.
lng() number Returns the longitude in degrees.
toString() string Converts to string representation.
toUrlValue(precision?:number) string Returns a string of the form "lat,lng" for this LatLng. We round the lat/lng values to 6 decimal places by default.

google.maps.LatLngBounds class

A LatLngBounds instance represents a rectangle in geographical coordinates, including one that crosses the 180 degrees longitudinal meridian.

Constructor

Constructor Description
LatLngBounds(sw?:LatLng, ne?:LatLng) Constructs a rectangle from the points at its south-west and north-east corners.

Methods

Methods Return Value Description
contains(latLng:LatLng) boolean Returns true if the given lat/lng is in this bounds.
equals(other:LatLngBounds) boolean Returns true if this bounds approximately equals the given bounds.
extend(point:LatLng) LatLngBounds Extends this bounds to contain the given point.
getCenter() LatLng Computes the center of this LatLngBounds
getNorthEast() LatLng Returns the north-east corner of this bounds.
getSouthWest() LatLng Returns the south-west corner of this bounds.
intersects(other:LatLngBounds) boolean Returns true if this bounds shares any points with this bounds.
isEmpty() boolean Returns if the bounds are empty.
toSpan() LatLng Converts the given map bounds to a lat/lng span.
toString() string Converts to string.
toUrlValue(precision?:number) string Returns a string of the form "lat_lo,lng_lo,lat_hi,lng_hi" for this bounds, where "lo" corresponds to the southwest corner of the bounding box, while "hi" corresponds to the northeast corner of that box.
union(other:LatLngBounds) LatLngBounds Extends this bounds to contain the union of this and the given bounds.

google.maps.Point class

Constructor

Constructor Description
Point(x:number, y:number) A point on a two-dimensional plane.

Methods

Methods Return Value Description
equals(other:Point) boolean Compares two Points
toString() string Returns a string representation of this Point.

Properties

Properties Type Description
x number The X coordinate
y number The Y coordinate

google.maps.Size class

Constructor

Constructor Description
Size(width:number, height:number, widthUnit?:string, heightUnit?:string) Two-dimensonal size, where width is the distance on the x-axis, and height is the distance on the y-axis.

Methods

Methods Return Value Description
equals(other:Size) boolean Compares two Sizes.
toString() string Returns a string representation of this Size.

Properties

Properties Type Description
height number The height along the y-axis, in pixels.
width number The width along the x-axis, in pixels.

google.maps.MVCObject class

Constructor

Constructor Description
MVCObject() Base class implementing KVO.

Methods

Methods Return Value Description
bindTo(key:string, target:MVCObject, targetKey?:string, noNotify?:boolean) None Binds a View to a Model.
changed(key:string) None Generic handler for state changes. Override this in derived classes to handle arbitrary state changes.
get(key:string) * Gets a value.
notify(key:string) None Notify all observers of a change on this property. This notifies both objects that are bound to the object's property as well as the object that it is bound to.
set(key:string, value:*) None Sets a value.
setValues(values:Object|undefined) None Sets a collection of key-value pairs.
unbind(key:string) None Removes a binding. Unbinding will set the unbound property to the current value. The object will not be notified, as the value has not changed.
unbindAll() None Removes all bindings.

google.maps.MVCArray class

This class extends MVCObject.

Constructor

Constructor Description
MVCArray(array?:Array) A mutable MVC Array.

Methods

Methods Return Value Description
clear() None Removes all elements from the array.
forEach(callback:function(*, number)) None Iterate over each element, calling the provided callback. The callback is called for each element like: callback(element, index).
getArray() Array Returns a reference to the underlying Array. Warning: if the Array is mutated, no events will be fired by this object.
getAt(i:number) * Get an element at the specified index.
getLength() number Returns the number of elements in this array.
insertAt(i:number, elem:*) None Inserts an element at the specified index.
pop() * Removes the last element of the array and returns that element.
push(elem:*) number Adds one element to the end of the array and returns the new length of the array.
removeAt(i:number) * Removes an element from the specified index.
setAt(i:number, elem:*) None Sets an element at the specified index.

Events

Events Arguments Description
insert_at number This event is fired when insertAt() is called. The event passes the index that was passed to insertAt().
remove_at number, * This event is fired when removeAt() is called. The event passes the index that was passed to removeAt() and the element that was removed from the array.
set_at number, * This event is fired when setAt() is called. The event passes the index that was passed to setAt() and the element that was previously in the array at that index.

google.maps.geometry.encoding namespace

Utilities for polyline encoding and decoding.

Library

geometry

Static Methods

Methods Return Value Description
decodePath(encodedPath:string) Array.<LatLng> Decodes an encoded path string into a sequence of LatLngs.
encodePath(path:Array.<LatLng>|MVCArray.<LatLng>) string Encodes a sequence of LatLngs into an encoded path string.

google.maps.geometry.spherical namespace

Utility functions for computing geodesic angles, distances and areas. The default radius is Earth's radius of 6378137 meters.

Library

geometry

Static Methods

Methods Return Value Description
computeArea(loop:Array.<LatLng>|MVCArray.<LatLng>, radius?:number) number Computes the area of the given loop. Loops must be closed.
computeDistanceBetween(from:LatLng, to:LatLng, radius?:number) number Computes the distance between two LatLngs.
computeHeading(from:LatLng, to:LatLng) number Computes the heading from one LatLng to another LatLng.
computeLength(path:Array.<LatLng>|MVCArray.<LatLng>, radius?:number) number Computes the length of the given path.
computeOffset(from:LatLng, distance:number, heading:number, radius?:number) LatLng Computes the LatLng produced by starting from a given LatLng and heading a given distance.
computeSignedArea(loop:Array.<LatLng>|MVCArray.<LatLng>, radius?:number) number Computes the signed area of the given loop. Loops must be closed. The signed area may be used to determine the orientation of a loop.
interpolate(from:LatLng, to:LatLng, fraction:number) LatLng Travels a fraction of the way from one LatLng to another LatLng.

google.maps.geometry.poly namespace

Utility functions for computations involving polygons and polylines.

Library

geometry

Static Methods

Methods Return Value Description
containsLocation(point:LatLng, polygon:Polygon) boolean Computes whether the given point lies inside the specified polygon.
isLocationOnEdge(point:LatLng, poly:Polygon|Polyline, tolerance?:number) boolean Computes whether the given point lies on or near to a polyline, or the edge of a polygon, within a specified tolerance.

google.maps.adsense.AdUnit class

Implements AdSense for Content advertising on an associated map. To use an AdUnit, you must obtain and specify an AdSense for Content publisher ID within the AdUnit's constructor options.

This class extends MVCObject.

Library

adsense

Constructor

Constructor Description
AdUnit(container:Node, opts:AdUnitOptions) Creates an AdSense for Content display ad on the associated map.

Methods

Methods Return Value Description
getChannelNumber() string Returns the channel number in use by this AdUnit.
getContainer() Node Returns the containing element of the AdUnit.
getFormat() AdFormat Returns the format in use by this AdUnit.
getMap() Map Returns the map to which this AdUnit's ads are targeted.
getPosition() ControlPosition Returns the ControlPosition at which this AdUnit is displayed on the map.
getPublisherId() string Returns the specified AdSense For Content publisher ID.
setChannelNumber(channelNumber:string) None Specifies the channel number for this AdUnit. Channel numbers are optional and can be created for Google AdSense tracking.
setFormat(format:AdFormat) None Specifies the display format for this AdUnit.
setMap(map:Map) None Associates this AdUnit with the specified map. Ads will be targeted to the map's viewport. The map must be specified in order to display ads.
setPosition(position:ControlPosition) None Sets the ControlPosition at which to display the AdUnit on the map. If the position is set to null, the AdUnit is removed from the map.

Events

Events Arguments Description
channelnumber_changed None This event is fired when the AdUnit's channelNumber property changes.
format_changed None This event is fired when the AdUnit's format property changes.
map_changed None This event is fired when the AdUnit's map property changes.
position_changed None This event is fired when the AdUnit's position property changes.

google.maps.adsense.AdUnitOptions object

Library

adsense

Properties

Properties Type Description
channelNumber string The AdSense For Content channel number for tracking the performance of this AdUnit. It must be stored as a string as it will typically be a large UINT64. (Optional)
format AdFormat the Format of the AdUnit. See https://google.com/adsense/adformats. (Optional)
map Map The map associated with this AdUnit. Ads will be targeted to the location the map's viewport. (Required)
position ControlPosition The position of the AdUnit. If specified, the AdUnit will be displayed at this position. Otherwise, it will not be added to the map. (Optional)
publisherId string Your AdSense for Content publisher ID. Required and must be set at the time of initialization. (Required)

google.maps.adsense.AdFormat class

Identifiers used to specify an AdSense For Content format. See https://google.com/adsense/adformats.

Library

adsense

Constant

Constant Description
BANNER A horizontal "banner" ad. (468x60px)
BUTTON A small ad. (125x125px)
HALF_BANNER A smaller horizontal "banner" ad. (234x60px)
LARGE_RECTANGLE A large rectangulare ad. (336x280px)
LEADERBOARD A fully horizontal display area. (728x90px)
MEDIUM_RECTANGLE A medium rectangular ad. (300x250px)
SKYSCRAPER A large vertical ad. (120x600px)
SMALL_RECTANGLE A small rectangular ad. (180x150px)
SMALL_SQUARE A smaller square ad. (200x200px)
SQUARE A square ad with large type. (250x250px)
VERTICAL_BANNER A medium-sized vertical ad. (120x240px)
WIDE_SKYSCRAPER A wide, vertical ad using larger type. (160x600px)

google.maps.panoramio.PanoramioLayer class

A PanoramioLayer displays photos from Panoramio as a rendered layer.

This class extends MVCObject.

Library

panoramio

Constructor

Constructor Description
PanoramioLayer(opts?:PanoramioLayerOptions) A layer that displays data from Panoramio.

Methods

Methods Return Value Description
getMap() Map Returns the map on which this layer is displayed.
getTag() string
getUserId() string
setMap(map:Map) None Renders the layer on the specified map. If map is set to null, the layer will be removed.
setOptions(options:PanoramioLayerOptions) None
setTag(tag:string) None
setUserId(userId:string) None

Events

Events Arguments Description
click PanoramioMouseEvent This event is fired when a feature in the layer is clicked.

google.maps.panoramio.PanoramioLayerOptions object

This object defines the properties that can be set on a PanoramioLayer object.

Library

panoramio

Properties

Properties Type Description
clickable boolean If true, the layer receives mouse events. Default value is true.
map Map The map on which to display the layer.
suppressInfoWindows boolean Suppress the rendering of info windows when layer features are clicked.
tag string A panoramio tag used to filter the photos which are displayed. Only photos which have been tagged with the supplied string will be shown.
userId string A Panoramio user ID. If provided, only photos by this user will be displayed on the map. If both a tag and user ID are provided, the tag will take precedence.

google.maps.panoramio.PanoramioFeature object

Describes a single Panoramio feature.

Library

panoramio

Properties

Properties Type Description
author string The username of the user who uploaded this photo.
photoId string The unique identifier for this photo, as used in the Panoramio API (see http://www.panoramio.com/api/widget/api.html).
title string The title of the photo.
url string The URL of the photo.
userId string The unique identifier for the user who uploaded this photo, as used in the Panoramio API (see http://www.panoramio.com/api/widget/api.html).

google.maps.panoramio.PanoramioMouseEvent object

The properties of a mouse event on a PanoramioLayer.

Library

panoramio

Properties

Properties Type Description
featureDetails PanoramioFeature A PanoramioFeature object containing information about the clicked feature.
infoWindowHtml string Pre-rendered HTML content to display within a feature's InfoWindow when clicked.
latLng LatLng The position at which to anchor an info window on the clicked feature.
pixelOffset Size The offset to apply to an info window anchored on the clicked feature.

google.maps.places.Autocomplete class

A service to provide Place predictions based on a user's text input. It attaches to an input element of type text, and listens for text entry in that field. The list of predictions is presented as a drop-down list, and is updated as text is entered.

This class extends MVCObject.

Library

places

Constructor

Constructor Description
Autocomplete(inputField:HTMLInputElement, opts?:AutocompleteOptions) Creates a new instance of Autocomplete that attaches to the specified input text field with the given options.

Methods

Methods Return Value Description
getBounds() LatLngBounds Returns the bounds to which predictions are biased.
getPlace() PlaceResult Returns the details of the Place selected by the user, or null if no Place has been selected yet.
setBounds(bounds:LatLngBounds) None Sets the preferred area within which to return Place results. Results are biased towards, but not restricted to, this area.
setTypes(types:Array.<string>) None Sets the types of predictions to be returned. Supported types are 'establishment' for businesses and 'geocode' for addresses. If no type is specified, both types will be returned.

Events

Events Arguments Description
place_changed None This event is fired when a PlaceResult is made available for a Place the user has selected.
If the user enters the name of a Place that was not suggested by the control and presses the Enter key, a place_changed event will be fired that contains the user input in the name property, with no other properties defined.

google.maps.places.AutocompleteOptions object

The options that can be set on an Autocomplete object.

Library

places

Properties

Properties Type Description
bounds LatLngBounds The area in which to search for places. Results are biased towards, but not restricted to, places contained within these bounds.
types Array.<string> The types of predictions to be returned. Four types are supported: 'establishment' for businesses, 'geocode' for addresses, '(regions)' for administrative regions and '(cities)' for localities. If nothing is specified, all types are returned.

google.maps.places.PlaceDetailsRequest object

A Place details query to be sent to the PlacesService.

Library

places

Properties

Properties Type Description
reference string The reference of the Place for which details are being requested.

google.maps.places.PlaceGeometry object

Defines information about the geometry of a Place.

Library

places

Properties

Properties Type Description
location LatLng The Place's position.
viewport LatLngBounds The preferred viewport when displaying this Place on a map. This property will be null if the preferred viewport for the Place is not known.

google.maps.places.PlaceResult object

Defines information about a Place.

Library

places

Properties

Properties Type Description
address_components Array.<GeocoderAddressComponent> The collection of address components for this Place's location.
formatted_address string The Place's full address.
formatted_phone_number string The Place's phone number, formatted according to the number's regional convention.
geometry PlaceGeometry The Place's geometry-related information.
html_attributions string Attribution text to be displayed for this Place result.
icon string URL to an image resource that can be used to represent this Place's category.
id string A unique identifier denoting this Place. This identifier may not be used to retrieve information about this Place, and to verify the identity of a Place across separate searches. As ids can occasionally change, it is recommended that the stored id for a Place be compared with the id returned in later Details requests for the same Place, and updated if necessary.
international_phone_number string The Place's phone number in international format. International format includes the country code, and is prefixed with the plus (+) sign.
name string The Place's name. Note: In the case of user entered Places, this is the raw text, as typed by the user. Please exercise caution when using this data, as malicious users may try to use it as a vector for code injection attacks (See http://en.wikipedia.org/wiki/Code_injection).
rating number The Place's rating, from 0.0 to 5.0, based on user reviews.
reference string An opaque string that may be used to retrieve up-to-date information about this Place (via PlacesService.getDetails()). reference contains a unique token that you can use to retrieve additional information about this Place in a Place Details request. You can store this token and use it at any time in future to refresh cached data about this Place, but the same token is not guaranteed to be returned for any given Place across different searches.
types Array.<string> An array of types for this Place (e.g., ["political",  "locality"] or ["restaurant", "establishment"]).
url string URL of the associated Google Place Page.
vicinity string A fragment of the Place's address for disambiguation (usually street name and locality).
website string The authoritative website for this Place, such as a business' homepage.

google.maps.places.PlaceSearchRequest object

A Place search query to be sent to the PlacesService.

Library

places

Properties

Properties Type Description
bounds LatLngBounds The bounds within which to search for Places. Both location and radius will be ignored if bounds is set.
keyword string A term to be matched against all available fields, including but not limited to name, type, and address, as well as customer reviews and other third-party content.
location LatLng The location around which to search for Places.
name string Restricts the Place search results to Places that include this text in the name.
radius number The distance from the given location within which to search for Places, in meters. The maximum allowed value is 50 000.
types Array.<string> Restricts the Place search results to Places with a type matching at least one of the specified types in this array. Valid types are given here.

google.maps.places.PlacesService class

Contains methods related to searching for Places and retrieving details about a Place.

Library

places

Constructor

Constructor Description
PlacesService(attrContainer:HTMLDivElement|Map) Creates a new instance of the PlacesService that renders attributions in the specified container.

Methods

Methods Return Value Description
getDetails(request:PlaceDetailsRequest, callback:function(PlaceResult, PlacesServiceStatus)) None Retrieves details about the Place identified by the given reference.
search(request:PlaceSearchRequest, callback:function(Array.<PlaceResult>, PlacesServiceStatus)) None Retrieves a list of Places in a given area. The PlaceResults passed to the callback are stripped-down versions of a full PlaceResult. A more detailed PlaceResult for each Place can be obtained by sending a Place Details request with the desired Place's reference value.

google.maps.places.PlacesServiceStatus class

The status returned by the PlacesService on the completion of its searches.

Library

places

Constant

Constant Description
INVALID_REQUEST This request was invalid.
OK The response contains a valid result.
OVER_QUERY_LIMIT The application has gone over its request quota.
REQUEST_DENIED The application is not allowed to use the PlacesService.
UNKNOWN_ERROR The PlacesService request could not be processed due to a server error. The request may succeed if you try again.
ZERO_RESULTS No result was found for this request.

google.maps.drawing.DrawingManager class

Allows users to draw markers, polygons, polylines, rectangles, and circles on the map. The DrawingManager's drawing mode defines the type of overlay that will be created by the user. Adds a control to the map, allowing the user to switch drawing mode.

This class extends MVCObject.

Library

drawing

Constructor

Constructor Description
DrawingManager(options?:DrawingManagerOptions) Creates a DrawingManager that allows users to draw overlays on the map, and switch between the type of overlay to be drawn with a drawing control.

Methods

Methods Return Value Description
getDrawingMode() OverlayType Returns the DrawingManager's drawing mode.
getMap() Map Returns the Map to which the DrawingManager is attached, which is the Map on which the overlays created will be placed.
setDrawingMode(drawingMode:OverlayType) None Changes the DrawingManager's drawing mode, which defines the type of overlay to be added on the map. Accepted values are MARKER, POLYGON, POLYLINE, RECTANGLE, CIRCLE, or null. A drawing mode of null means that the user can interact with the map as normal, and clicks do not draw anything.
setMap(map:Map) None Attaches the DrawingManager object to the specified Map.
setOptions(options:DrawingManagerOptions) None Sets the DrawingManager's options.

Events

Events Arguments Description
circlecomplete Circle This event is fired when the user has finished drawing a circle.
markercomplete Marker This event is fired when the user has finished drawing a marker.
overlaycomplete OverlayCompleteEvent This event is fired when the user has finished drawing an overlay of any type.
polygoncomplete Polygon This event is fired when the user has finished drawing a polygon.
polylinecomplete Polyline This event is fired when the user has finished drawing a polyline.
rectanglecomplete Rectangle This event is fired when the user has finished drawing a rectangle.

google.maps.drawing.DrawingManagerOptions object

Options for the drawing manager.

Library

drawing

Properties

Properties Type Description
circleOptions CircleOptions Options to apply to any new circles created with this DrawingManager. The center and radius properties are ignored, and the map property of a new circle is always set to the DrawingManager's map.
drawingControl boolean The enabled/disabled state of the drawing control. Defaults to true.
drawingControlOptions DrawingControlOptions The display options for the drawing control.
drawingMode OverlayType The DrawingManager's drawing mode, which defines the type of overlay to be added on the map. Accepted values are MARKER, POLYGON, POLYLINE, RECTANGLE, CIRCLE, or null. A drawing mode of null means that the user can interact with the map as normal, and clicks do not draw anything.
map Map The Map to which the DrawingManager is attached, which is the Map on which the overlays created will be placed.
markerOptions MarkerOptions Options to apply to any new markers created with this DrawingManager. The position property is ignored, and the map property of a new marker is always set to the DrawingManager's map.
polygonOptions PolygonOptions Options to apply to any new polygons created with this DrawingManager. The paths property is ignored, and the map property of a new polygon is always set to the DrawingManager's map.
polylineOptions PolylineOptions Options to apply to any new polylines created with this DrawingManager. The path property is ignored, and the map property of a new polyline is always set to the DrawingManager's map.
rectangleOptions RectangleOptions Options to apply to any new rectangles created with this DrawingManager. The bounds property is ignored, and the map property of a new rectangle is always set to the DrawingManager's map.

google.maps.drawing.DrawingControlOptions object

Options for the rendering of the drawing control.

Library

drawing

Properties

Properties Type Description
drawingModes Array.<OverlayType> The drawing modes to display in the drawing control, in the order in which they are to be displayed. The hand icon (which corresponds to the null drawing mode) is always available and is not to be specified in this array. Defaults to [MARKER, POLYLINE, RECTANGLE, CIRCLE, POLYGON].
position ControlPosition Position id. Used to specify the position of the control on the map. The default position is TOP_LEFT.

google.maps.drawing.OverlayCompleteEvent object

The properties of an overlaycomplete event on a DrawingManager.

Library

drawing

Properties

Properties Type Description
overlay Marker|Polygon|Polyline|Rectangle|Circle The completed overlay.
type OverlayType The completed overlay's type.

google.maps.drawing.OverlayType class

The types of overlay that may be created by the DrawingManager.

Library

drawing

Constant

Constant Description
CIRCLE Specifies that the DrawingManager creates circles, and that the overlay given in the overlaycomplete event is a circle.
MARKER Specifies that the DrawingManager creates markers, and that the overlay given in the overlaycomplete event is a marker.
POLYGON Specifies that the DrawingManager creates polygons, and that the overlay given in the overlaycomplete event is a polygon.
POLYLINE Specifies that the DrawingManager creates polylines, and that the overlay given in the overlaycomplete event is a polyline.
RECTANGLE Specifies that the DrawingManager creates rectangles, and that the overlay given in the overlaycomplete event is a rectangle.

google.maps.weather.CloudLayer class

A layer showing cloud imagery.

This class extends MVCObject.

Library

weather

Constructor

Constructor Description
CloudLayer() Creates a new CloudLayer instance that displays a cloud overlay.

Methods

Methods Return Value Description
getMap() Map Returns the map on which this layer is displayed.
setMap(map:Map) None Renders the layer on the specified map. If map is set to null, the layer will be removed.

google.maps.weather.WeatherLayer class

A layer that displays weather icons.

This class extends MVCObject.

Library

weather

Constructor

Constructor Description
WeatherLayer(opts?:WeatherLayerOptions) Creates a new WeatherLayer instance that displays weather icons.

Methods

Methods Return Value Description
getMap() Map Returns the map on which this layer is displayed.
setMap(map:Map) None Renders the layer on the specified map. If map is set to null, the layer will be removed.
setOptions(options:WeatherLayerOptions) None Sets the WeatherLayer's options.

Events

Events Arguments Description
click WeatherMouseEvent This event is fired when a feature in the weather layer is clicked.

google.maps.weather.WeatherLayerOptions object

This object defines the properties that can be set on a WeatherLayer object.

Library

weather

Properties

Properties Type Description
clickable boolean If true, the layer receives mouse events. Default value is true.
labelColor LabelColor The color of labels on the weather layer. If this is not explicitly set, the label color is chosen automatically depending on the map type.
map Map The map on which to display the layer.
suppressInfoWindows boolean Suppress the rendering of info windows when weather icons are clicked.
temperatureUnits TemperatureUnit The units to use for temperature.
windSpeedUnits WindSpeedUnit The units to use for wind speed.

google.maps.weather.TemperatureUnit class

The temperature unit displayed by the weather layer.

Library

weather

Constant

Constant Description
CELSIUS Specifies that temperatures should be displayed in degrees Celsius.
FAHRENHEIT Specifies that temperatures should be displayed in degrees Fahrenheit.

google.maps.weather.WindSpeedUnit class

The wind speed unit displayed by the weather layer.

Library

weather

Constant

Constant Description
KILOMETERS_PER_HOUR Specifies that wind speeds should be displayed in kilometers per hour.
METERS_PER_SECOND Specifies that wind speeds should be displayed in meters per second.
MILES_PER_HOUR Specifies that wind speeds should be displayed in miles per hour.

google.maps.weather.LabelColor class

The color of the labels displayed on the weather layer.

Library

weather

Constant

Constant Description
BLACK Weather labels will be displayed as black text with a white border.
WHITE Weather labels will be displayed as white text with a black border.

google.maps.weather.WeatherMouseEvent object

The properties of a mouse event on a WeatherLayer.

Library

weather

Properties

Properties Type Description
featureDetails WeatherFeature A WeatherFeature object containing information about the clicked feature.
infoWindowHtml string Pre-rendered HTML content to display within a feature's InfoWindow when clicked.
latLng LatLng The position at which to anchor an info window on the clicked feature.
pixelOffset Size The offset to apply to an info window anchored on the clicked feature.

google.maps.weather.WeatherFeature object

Describes a single Weather feature.

Library

weather

Properties

Properties Type Description
current WeatherConditions The current weather conditions at this location.
forecast Array.<WeatherForecast> A forecast of weather conditions over the next four days. The forecast array is always in chronological order.
location string The location name of this feature, e.g. "San Francisco, California".
temperatureUnit TemperatureUnit The temperature units being used.
windSpeedUnit WindSpeedUnit The wind speed units being used.

google.maps.weather.WeatherConditions object

Describes a single weather feature.

Library

weather

Properties

Properties Type Description
day string The current day of the week in long form, e.g. "Monday".
description string A description of the conditions, e.g. "Partly Cloudy".
high number The highest temperature reached during the day.
low number The lowest temperature reached during the day.
shortDay string The current day of the week in short form, e.g. "M".
temperature number The current temperature, in the specified temperature units.
windDirection string The current wind direction.
windSpeed number The current wind speed, in the specified wind speed units.

google.maps.weather.WeatherForecast object

Describes a single day's weather forecast.

Library

weather

Properties

Properties Type Description
day string The day of the week in long form, e.g. "Monday".
description string A description of the conditions, e.g. "Partly Cloudy".
high number The highest temperature reached during the day.
low number The lowest temperature reached during the day.
shortDay string The day of the week in short form, e.g. "M".

Authentication required

You need to be signed in to do that.

Signing you in...

Google Developers needs your
permission to do that.