Introducing Places UI Kit: A ready-to-use, low-cost component library that lets you bring the familiar Google Maps UI for Places to any map of your choice. Try it out, andshare your input to help shape the future of GMP!

Image overlays

MapTypeinterface

google.maps.MapTypeinterface

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

Properties

maxZoom
Type: number
The maximum zoom level for the map when displaying this MapType. Required for base MapTypes, ignored for overlay MapTypes.
minZoom
Type: number
The minimum zoom level for the map when displaying this MapType. Optional; defaults to 0.
radius
Type: number
Radius of the planet for the map, in meters. Optional; defaults to Earth's equatorial radius of 6378137 meters.
altoptional
Type: stringoptional
Alt text to display when this MapType's button is hovered over in the MapTypeControl. Optional.
nameoptional
Type: stringoptional
Name to display in the MapTypeControl. Optional.
projectionoptional
Type: Projectionoptional
The Projection used to render this MapType. Optional; defaults to Mercator.
tileSizeoptional
Type: Sizeoptional
The dimensions of each tile. Required.

Methods

getTile
getTile(tileCoord, zoom, ownerDocument)
Parameters: 
  • tileCoordPoint Tile coordinates.
  • zoomnumber Tile zoom.
  • ownerDocumentDocument The document which owns this tile.
Return Value: Element|null Resulting tile.
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
releaseTile(tile)
Parameters: 
  • tileElementoptional Tile to release.
Return Value: void
Releases the given tile, performing any necessary cleanup. The provided tile will have already been removed from the document. Optional.

Projectioninterface

google.maps.Projectioninterface

Methods

fromLatLngToPoint
fromLatLngToPoint(latLng[, point])
Parameters: 
Return Value: Point|null
Translates from the LatLng cylinder to the Point plane. This interface specifies a function which implements translation from givenLatLng 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, but may returnnull if the projection cannot calculate thePoint.
fromPointToLatLng
fromPointToLatLng(pixel[, noClampNoWrap])
Parameters: 
  • pixelPoint
  • noClampNoWrapbooleanoptional
Return Value: LatLng|null
This interface specifies a function which implements translation from world coordinates on a map projection toLatLng 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, but may returnnull if the projection cannot calculate theLatLng.

ImageMapTypeclass

google.maps.ImageMapTypeclass

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

This class extendsMVCObject.

This class implementsMapType.

Access by callingconst {ImageMapType} = await google.maps.importLibrary("maps").
SeeLibraries in the Maps JavaScript API.

Constructor

ImageMapType
ImageMapType(opts)
Parameters: 
Constructs an ImageMapType using the provided ImageMapTypeOptions

Properties

alt
Type: stringoptional
maxZoom
Type: number
minZoom
Type: number
name
Type: stringoptional
projection
Type: Projection
radius
Type: number
tileSize
Type: Size

Methods

getOpacity
getOpacity()
Parameters:  None
Return Value: number opacity The current opacity.
Returns the opacity level (0 (transparent) to1.0) of theImageMapType tiles.
getTile
getTile(tileCoord, zoom, ownerDocument)
Parameters: 
  • tileCoordPoint Tile coordinates.
  • zoomnumber Tile zoom.
  • ownerDocumentDocument The document which owns this tile.
Return Value: Element|null Resulting tile.
releaseTile
releaseTile(tileDiv)
Parameters: 
  • tileDivElementoptional Tile to release.
Return Value:  None
setOpacity
setOpacity(opacity)
Parameters: 
  • opacitynumber The new opacity.
Return Value:  None
Sets the opacity level (0 (transparent) to1.0) of theImageMapType tiles.
Inherited:addListener,bindTo,get,notify,set,setValues,unbind,unbindAll

Events

tilesloaded
function()
Arguments:  None
This event is fired when the visible tiles have finished loading.

ImageMapTypeOptionsinterface

google.maps.ImageMapTypeOptionsinterface

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

Properties

altoptional
Type: stringoptional
Alt text to display when this MapType's button is hovered over in the MapTypeControl.
getTileUrloptional
Type: function(Point, number): (stringoptional)optional
Returns a string (URL) for given tile coordinate (x, y) and zoom level.
maxZoomoptional
Type: numberoptional
The maximum zoom level for the map when displaying this MapType.
minZoomoptional
Type: numberoptional
The minimum zoom level for the map when displaying this MapType. Optional.
nameoptional
Type: stringoptional
Name to display in the MapTypeControl.
opacityoptional
Type: numberoptional
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.
tileSizeoptional
Type: Sizeoptional
The tile size.

GroundOverlayclass

google.maps.GroundOverlayclass

A rectangular image overlay on the map.

This class extendsMVCObject.

Access by callingconst {GroundOverlay} = await google.maps.importLibrary("maps").
SeeLibraries in the Maps JavaScript API.

Constructor

GroundOverlay
GroundOverlay(url, bounds[, opts])
Parameters: 
Creates a ground overlay from the provided image URL and itsLatLngBounds. The image is scaled to fit the current bounds, and projected using the current map projection.

Methods

getBounds
getBounds()
Parameters:  None
Return Value: LatLngBounds
Gets theLatLngBounds of this overlay.
getMap
getMap()
Parameters:  None
Return Value: Map
Returns the map on which this ground overlay is displayed.
getOpacity
getOpacity()
Parameters:  None
Return Value: number
Returns the opacity of this ground overlay.
getUrl
getUrl()
Parameters:  None
Return Value: string
Gets the url of the projected image.
setMap
setMap(map)
Parameters: 
Return Value:  None
Renders the ground overlay on the specified map. If map is set tonull, the overlay is removed.
setOpacity
setOpacity(opacity)
Parameters: 
  • opacitynumber
Return Value:  None
Sets the opacity of this ground overlay.
Inherited:addListener,bindTo,get,notify,set,setValues,unbind,unbindAll

Events

click
function(event)
Arguments: 
This event is fired when the DOM click event is fired on theGroundOverlay.
dblclick
function(event)
Arguments: 
This event is fired when the DOM dblclick event is fired on theGroundOverlay.

GroundOverlayOptionsinterface

google.maps.GroundOverlayOptionsinterface

This object defines the properties that can be set on aGroundOverlay object.

Properties

clickableoptional
Type: booleanoptional
Iftrue, the ground overlay can receive mouse events.
mapoptional
Type: Mapoptional
The map on which to display the overlay.
opacityoptional
Type: numberoptional
Default:1.0
The opacity of the overlay, expressed as a number between 0 and 1. Optional.

StyledMapTypeclass

google.maps.StyledMapTypeclass

Creates aMapType with a custom style.

This class extendsMVCObject.

This class implementsMapType.

Access by callingconst {StyledMapType} = await google.maps.importLibrary("maps").
SeeLibraries in the Maps JavaScript API.

Constructor

StyledMapType
StyledMapType(styles[, options])
Parameters: 
Creates a styledMapType with the specified options. TheStyledMapType takes an array ofMapTypeStyles, where eachMapTypeStyle is applied to the map consecutively. A laterMapTypeStyle that applies the sameMapTypeStylers to the same selectors as an earlierMapTypeStyle will override the earlierMapTypeStyle.

Note that theStyledMapType is not supported when a map ID is set. When using both together, you will receive a console warning.

Properties

alt
Type: string
maxZoom
Type: number
minZoom
Type: number
name
Type: string
projection
Type: Projection
radius
Type: number
tileSize
Type: Size

Methods

getTile
getTile(tileCoord, zoom, ownerDocument)
Parameters: 
  • tileCoordPoint Tile coordinates.
  • zoomnumber Tile zoom.
  • ownerDocumentDocument The document which owns this tile.
Return Value: Element|null Resulting tile.
releaseTile
releaseTile(tile)
Parameters: 
  • tileElementoptional Tile to release.
Return Value:  None
Inherited:addListener,bindTo,get,notify,set,setValues,unbind,unbindAll

StyledMapTypeOptionsinterface

google.maps.StyledMapTypeOptionsinterface

This class is used to specify options when creating aStyledMapType. These options cannot be changed after theStyledMapType is instantiated.

Properties

altoptional
Type: stringoptional
Text to display when thisMapType's button is hovered over in the map type control.
maxZoomoptional
Type: numberoptional
The maximum zoom level for the map when displaying thisMapType. Optional.
minZoomoptional
Type: numberoptional
The minimum zoom level for the map when displaying thisMapType. Optional.
nameoptional
Type: stringoptional
The name to display in the map type control.

Except as otherwise noted, the content of this page is licensed under theCreative Commons Attribution 4.0 License, and code samples are licensed under theApache 2.0 License. For details, see theGoogle Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.

Last updated 2025-07-18 UTC.