Map3DElement class
google.maps.maps3d
. Map3DElement
class
Map3DElement is an HTML interface for the 3D Map view. Note that the mode
must be set for the 3D Map to start rendering.
Custom element: <gmp-map-3d center="lat,lng,altitude" default-ui-hidden description="string" gesture-handling="auto" heading="number" internal-usage-attribution-ids="id1 id2" map-id="string" max-altitude="number" max-heading="number" max-tilt="number" min-altitude="number" min-heading="number" min-tilt="number" mode="hybrid" range="number" roll="number" tilt="number" default-ui-disabled></gmp-map-3d>
This class extends HTMLElement
.
This class implements Map3DElementOptions
.
Access by calling const {Map3DElement} = await google.maps.importLibrary("maps3d")
.See Libraries in the Maps JavaScript API
.
Constructor
Map3DElement([options])
-
options:Map3DElementOptions optional
Properties
LatLngBounds
| LatLngBoundsLiteral
optional
-180
and 180
, respectively. For longitude-only bounds use north and south latitudes of 90
and -90
, respectively. LatLngAltitude
| LatLngAltitudeLiteral
optional
range
field affects the camera's distance from the map center. If not set, defaults to {lat: 0, lng: 0, altitude: 63170000}
. 63170000 meters is a maximum allowed altitude (Earth radius multiplied by 10).-
<gmp-map-3d center="lat,lng,altitude"></gmp-map-3d>
boolean optional
false
true
, all default UI buttons are hidden.-
<gmp-map-3d default-ui-hidden></gmp-map-3d>
string optional
-
<gmp-map-3d description="string"></gmp-map-3d>
GestureHandling
optional
GestureHandling.GREEDY
COOPERATIVE
, modifier keys or two-finger gestures are required to scroll the map. When set to GREEDY
, the host page cannot be scrolled from user events on the map element. When set to AUTO
, the gesture handling is determined by the scrollability of the host page.-
<gmp-map-3d gesture-handling="auto"></gmp-map-3d> -
<gmp-map-3d gesture-handling="cooperative"></gmp-map-3d> -
<gmp-map-3d gesture-handling="greedy"></gmp-map-3d>
number optional
-
<gmp-map-3d heading="number"></gmp-map-3d>
Iterable
<string> optional
-
<gmp-map-3d internal-usage-attribution-ids="id1 id2"></gmp-map-3d>
string optional
This must be set when the element is created, and cannot be updated after the map has loaded.
string optional
-
<gmp-map-3d map-id="string"></gmp-map-3d>
number optional
0
and 63170000
meters (Earth radius multiplied by 10).-
<gmp-map-3d max-altitude="number"></gmp-map-3d>
number optional
0
and 360
degrees. minHeading
and maxHeading
represent an interval of <= 360
degrees in which heading gestures will be allowed. minHeading = 180
and maxHeading = 90
will allow heading in [0, 90]
and heading in [180, 360]
. minHeading = 90
and maxHeading = 180
will allow heading in [90, 180]
.-
<gmp-map-3d max-heading="number"></gmp-map-3d>
number optional
0
and 90
degrees.-
<gmp-map-3d max-tilt="number"></gmp-map-3d>
number optional
0
and 63170000
meters (Earth radius multiplied by 10).-
<gmp-map-3d min-altitude="number"></gmp-map-3d>
number optional
0
and 360
degrees. minHeading
and maxHeading
represent an interval of <= 360
degrees in which heading gestures will be allowed. minHeading = 180
and maxHeading = 90
will allow heading in [0, 90]
and heading in [180, 360]
. minHeading = 90
and maxHeading = 180
will allow heading in [90, 180]
.-
<gmp-map-3d min-heading="number"></gmp-map-3d>
number optional
0
and 90
degrees.-
<gmp-map-3d min-tilt="number"></gmp-map-3d>
MapMode
optional
-
<gmp-map-3d mode="hybrid"></gmp-map-3d> -
<gmp-map-3d mode="satellite"></gmp-map-3d>
number optional
-
<gmp-map-3d range="number"></gmp-map-3d>
string optional
This must be set when the element is created, and cannot be updated after the map has loaded.
number optional
-
<gmp-map-3d roll="number"></gmp-map-3d>
number optional
180
degrees.-
<gmp-map-3d tilt="number"></gmp-map-3d>
boolean optional
false
true
, all default UI buttons are disabled. Does not disable the keyboard and gesture controls.-
<gmp-map-3d default-ui-disabled></gmp-map-3d>
Methods
addEventListener(type, listener[, options])
-
type:stringA case-sensitive string representing the event type to listen for. -
listener:EventListener | EventListenerObjectThe object that receives a notification. This must be a function or an object with the handleEvent method -
options:boolean| AddEventListenerOptions optionalSee options . Custom events only supportcaptureandpassive.
void
flyCameraAround(options)
-
options:FlyAroundAnimationOptions
FlyAroundAnimationOptions.repeatCount
times.The camera will move in a clockwise direction.
The method is asynchronous because animations can only start after the map has loaded a minimum amount. The method returns once the animation has been started.
If the number of
FlyAroundAnimationOptions.repeatCount
times is zero, no spin will occur, and the animation will complete immediately after it starts.flyCameraTo(options)
-
options:FlyToAnimationOptions
The method is asynchronous because animations can only start after the map has loaded a minimum amount. The method returns once the animation has been started.
removeEventListener(type, listener[, options])
-
type:stringA string which specifies the type of event for which to remove an event listener. -
listener:EventListener | EventListenerObjectThe event listener of the event handler to remove from the event target. -
options:boolean| EventListenerOptions optionalSee options .
void
stopCameraAnimation()
The method is asynchronous because animations can only start or stop after the map has loaded a minimum amount. The method returns once the animation has stopped.
Events
function(animationEndEvent)
-
animationEndEvent:Event
function(centerChangeEvent)
-
centerChangeEvent:Event
function(clickEvent)
-
clickEvent:LocationClickEvent | PlaceClickEvent
function(mapInitializationErrorEvent)
-
mapInitializationErrorEvent:Event
function(headingChangeEvent)
-
headingChangeEvent:Event
function(mapIdErrorEvent)
-
mapIdErrorEvent:Event
function(rangeChangeEvent)
-
rangeChangeEvent:Event
function(rollChangeEvent)
-
rollChangeEvent:Event
function(steadyChangeEvent)
-
steadyChangeEvent:SteadyChangeEvent
Map3DElement
changes.function(tiltChangeEvent)
-
tiltChangeEvent:Event
Map3DElementOptions interface
google.maps.maps3d
. Map3DElementOptions
interface
Map3DElementOptions object used to define the properties that can be set on a Map3DElement.
Properties |
|
|---|---|
bounds
optional
|
Type:
LatLngBounds
| LatLngBoundsLiteral
optional
|
center
optional
|
Type:
LatLngAltitude
| LatLngAltitudeLiteral
optional
|
|
Type:
boolean optional
|
defaultUIHidden
optional
|
Type:
boolean optional
|
description
optional
|
Type:
string optional
|
gestureHandling
optional
|
Type:
GestureHandling
optional
|
heading
optional
|
Type:
number optional
|
internalUsageAttributionIds
optional
|
Type:
Iterable
<string> optional
|
language
optional
|
Type:
string optional
|
mapId
optional
|
Type:
string optional
|
maxAltitude
optional
|
Type:
number optional
|
maxHeading
optional
|
Type:
number optional
|
maxTilt
optional
|
Type:
number optional
|
minAltitude
optional
|
Type:
number optional
|
minHeading
optional
|
Type:
number optional
|
minTilt
optional
|
Type:
number optional
|
mode
optional
|
Type:
MapMode
optional
|
range
optional
|
Type:
number optional
|
region
optional
|
Type:
string optional
|
roll
optional
|
Type:
number optional
|
tilt
optional
|
Type:
number optional
|
MapMode constants
google.maps.maps3d
. MapMode
constants
Specifies a mode the map should be rendered in.
Access by calling const {MapMode} = await google.maps.importLibrary("maps3d")
.See Libraries in the Maps JavaScript API
.
Constants |
|
|---|---|
HYBRID
|
This map mode displays a transparent layer of major streets on satellite, or photorealistic imagery. |
SATELLITE
|
This map mode displays satellite, or photorealistic imagery where available. |
GestureHandling constants
google.maps.maps3d
. GestureHandling
constants
Specifies how gesture events should be handled on the map element.
Access by calling const {GestureHandling} = await google.maps.importLibrary("maps3d")
.See Libraries in the Maps JavaScript API
.
Constants |
|
|---|---|
AUTO
|
This lets the map choose whether to use cooperative or greedy gesture handling. This is the default behavior if not specified. This will cause the map to enter cooperative mode if the map is dominating its scroll parent (usually the host page) to where the user cannot scroll away from the map to other content. |
COOPERATIVE
|
This forces cooperative mode, where modifier keys or two-finger gestures are required to scroll the map. |
GREEDY
|
This forces greedy mode, where the host page cannot be scrolled from user events on the map element. |
FlyAroundAnimationOptions interface
google.maps.maps3d
. FlyAroundAnimationOptions
interface
Customization options for the FlyCameraAround Animation.
Properties |
|
|---|---|
camera
|
Type:
CameraOptions
The central point at which the camera should look at during the orbit animation. Note that the map heading will change as the camera orbits around this center point.
|
durationMillis
optional
|
Type:
number optional
The duration of one animation cycle in milliseconds.
|
repeatCount
optional
|
Type:
number optional
Specifies the number of times an animation should repeat. If the number is zero, the animation will complete immediately after it starts.
|
|
Type:
number optional
The number of rounds to rotate around the center in the given duration. This controls the overall speed of rotation. Passing a negative number to rounds will cause the camera to rotate in a counter-clockwise direction instead of the default clockwise direction.
|
FlyToAnimationOptions interface
google.maps.maps3d
. FlyToAnimationOptions
interface
Customization options for the FlyCameraTo Animation.
Properties |
|
|---|---|
endCamera
|
Type:
CameraOptions
The location at which the camera should point at the end of the animation.
|
durationMillis
optional
|
Type:
number optional
The duration of the animation in milliseconds. A duration of 0 will teleport the camera straight to the end position.
|
CameraOptions interface
google.maps.maps3d
. CameraOptions
interface
CameraOptions object used to define the properties that can be set on a camera object. The camera object can be anything that has a camera position, e.g. a current map state, or a future requested animation state.
Properties |
|
|---|---|
center
optional
|
Type:
LatLngAltitude
| LatLngAltitudeLiteral
optional
|
heading
optional
|
Type:
number optional
|
range
optional
|
Type:
number optional
|
roll
optional
|
Type:
number optional
|
tilt
optional
|
Type:
number optional
|
SteadyChangeEvent class
google.maps.maps3d
. SteadyChangeEvent
class
This event is created from monitoring a steady state of Map3DElement
. This event bubbles up through the DOM tree.
This class extends Event
.
Access by calling const {SteadyChangeEvent} = await google.maps.importLibrary("maps3d")
.See Libraries in the Maps JavaScript API
.
Properties |
|
|---|---|
isSteady
|
Type:
boolean
Indicates whether Map3DElement is steady (i.e. all rendering for the current scene has completed) or not.
|
LocationClickEvent class
google.maps.maps3d
. LocationClickEvent
class
This event is created from clicking a Map3DElement.
This class extends Event
.
Access by calling const {LocationClickEvent} = await google.maps.importLibrary("maps3d")
.See Libraries in the Maps JavaScript API
.
Properties |
|
|---|---|
position
|
Type:
LatLngAltitude
optional
The latitude/longitude/altitude that was below the cursor when the event occurred. Please note, that at coarser levels, less accurate data will be returned. Also, sea floor elevation may be returned for the altitude value when clicking at the water surface from higher camera positions. This event bubbles up through the DOM tree.
|
PlaceClickEvent class
google.maps.maps3d
. PlaceClickEvent
class
This event is created from clicking on a place icon on a Map3DElement
. To prevent the default popover from showing up, call the preventDefault()
method on this event to prevent it being handled by the Map3DElement
.
This class extends LocationClickEvent
.
Access by calling const {PlaceClickEvent} = await google.maps.importLibrary("maps3d")
.See Libraries in the Maps JavaScript API
.
Properties |
|
|---|---|
placeId
|
Type:
string
The place id of the map feature.
|
Inherited:
position
|
|
Methods |
|
|---|---|
fetchPlace
|
fetchPlace()
Parameters: None
Fetches a
Place
for this place id. In the resulting Place
object, the id property will be populated. Additional fields can be subsequently requested via Place.fetchFields()
subject to normal Places API enablement and billing. The promise is rejected if there was an error fetching the Place
. |

