Map3DElement 类
google.maps.maps3d.Map3DElement
类
Map3DElement 是 3D 地图视图的 HTML 接口。
自定义元素:
<gmp-map-3d center="lat,lng,altitude" default-labels-disabled default-ui-disabled heading="number" max-altitude="number" max-heading="number" max-tilt="number" min-altitude="number" min-heading="number" min-tilt="number" range="number" roll="number" tilt="number"></gmp-map-3d>
此类扩展了 HTMLElement
。
此类实现了 Map3DElementOptions
。
通过调用 const {Map3DElement} = await google.maps.importLibrary("maps3d")
进行访问。
请参阅 Maps JavaScript API 中的库。
构造函数 | |
---|---|
Map3DElement |
Map3DElement([options]) 参数:
|
属性 | |
---|---|
bounds |
类型:
LatLngBounds|LatLngBoundsLiteral optional 设置后,将相机位置限制在指定的纬度/经度范围内。请注意,边界外的对象仍会呈现。边界可以同时限制经度和纬度,也可以仅限制纬度或经度。对于仅限纬度的边界,请分别使用 -180 和 180 的西经度和东经度。对于仅限经度的边界,请分别使用 90 和 -90 的北纬和南纬。 |
center |
类型:
LatLngAltitude|LatLngAltitudeLiteral optional 以 LatLngAltitude 形式给出的地图中心,其中海拔高度以地面以上米为单位。请注意,这不一定是相机所在的位置,因为
range 字段会影响相机与地图中心的距离。如果未设置,则默认为 {lat: 0, lng: 0, altitude: 63170000} 。63170000 米是允许的最大海拔高度(地球半径乘以 10)。HTML 属性:
|
defaultLabelsDisabled |
类型:
boolean optional 默认值:
false 如果值为
true ,则不会渲染默认地图标签。HTML 属性:
|
defaultUIDisabled |
类型:
boolean optional 默认值:
false 如果值为
true ,则所有默认界面按钮都会被停用。不会停用键盘和手势控制。HTML 属性:
|
heading |
类型:
number optional 地图的罗盘航向角(以度为单位),正北为零。如果没有倾斜,任何横滚都将被解读为航向。
HTML 属性:
|
maxAltitude |
类型:
number optional 地图上显示的最大地面海拔高度。有效值介于
0 米和 63170000 米之间(地球半径乘以 10)。HTML 属性:
|
maxHeading |
类型:
number optional 地图航向(旋转)的最大角度。有效值介于
0 度和 360 度之间。minHeading 和 maxHeading 表示一个不超过 360 度的区间,在此区间内将允许使用转头手势。minHeading = 180 和 maxHeading = 90 将允许 [0, 90] 中的标题和 [180, 360] 中的标题。minHeading = 90 和 maxHeading = 180 将允许在 [90, 180] 中添加标题。HTML 属性:
|
maxTilt |
类型:
number optional 地图的最大入射角。有效值介于
0 度和 90 度之间。HTML 属性:
|
minAltitude |
类型:
number optional 地图上显示的最低海拔高度(高于地面)。有效值介于
0 米和 63170000 米之间(地球半径乘以 10)。HTML 属性:
|
minHeading |
类型:
number optional 地图朝向(旋转)的最小角度。有效值介于
0 度和 360 度之间。minHeading 和 maxHeading 表示一个不超过 360 度的区间,在此区间内将允许使用转头手势。minHeading = 180 和 maxHeading = 90 将允许 [0, 90] 中的标题和 [180, 360] 中的标题。minHeading = 90 和 maxHeading = 180 将允许在 [90, 180] 中添加标题。HTML 属性:
|
minTilt |
类型:
number optional 地图的最小入射角。有效值介于
0 度和 90 度之间。HTML 属性:
|
range |
类型:
number optional 从相机到地图中心的距离(以米为单位)。
HTML 属性:
|
roll |
类型:
number optional 相机围绕视图向量的滚转角度(以度为单位)。为消除歧义,在没有倾斜时,任何横滚都将被解读为航向。
HTML 属性:
|
tilt |
类型:
number optional 相机视图向量的倾斜度(以度为单位)。如果视角向量直接向下指向地球,则倾斜角度为零度。指向远离地球方向的视图向量的倾斜角度为
180 度。HTML 属性:
|
方法 | |
---|---|
|
addEventListener(type, listener[, options]) 参数:
返回值:
void 设置一个函数,每当指定事件传递到目标时,系统都会调用该函数。请参阅 addEventListener。 |
flyCameraAround |
flyCameraAround(options) 参数:
返回值:无
此方法会在给定时间内围绕给定位置旋转相机,并在该时间内旋转给定的圈数。 默认情况下,相机按顺时针方向环绕。如果为圈数指定负数,相机将改为逆时针环绕拍摄。 该方法是异步的,因为动画只能在地图加载了最少数量后才能开始。动画开始播放后,该方法即会返回。 如果圈数为零,则不会发生旋转,动画会在开始后立即完成。 |
flyCameraTo |
flyCameraTo(options) 参数:
返回值:无
此方法可在给定的时长内将相机从当前位置抛物线式移动到给定的结束位置。 该方法是异步的,因为动画只能在地图加载了最少数量后才能开始。该方法会在动画开始播放后立即返回。 |
|
removeEventListener(type, listener[, options]) 参数:
返回值:
void 从目标中移除之前通过 addEventListener 注册的事件监听器。请参阅 removeEventListener。 |
stopCameraAnimation |
stopCameraAnimation() 参数:无
返回值:无
此方法会停止可能正在运行的任何飞行动画。相机停留在动画中途的任何位置,不会瞬移到终点。 该方法是异步的,因为动画只能在地图加载了最少数量后才能开始或停止。动画停止后,该方法即会返回。 |
事件 | |
---|---|
gmp-animationend |
function(animationEndEvent) 实参:
此事件会在飞行动画结束时触发。此事件会通过 DOM 树向上冒泡。 |
gmp-centerchange |
function(centerChangeEvent) 实参:
当 Map3DElement 的 center 属性发生更改时,会触发此事件。 |
gmp-click |
function(clickEvent) 实参:
当点击 Map3DElement 元素时,系统会触发此事件。 |
gmp-headingchange |
function(headingChangeEvent) 实参:
当 Map3DElement 的 heading 属性发生更改时,会触发此事件。 |
gmp-rangechange |
function(rangeChangeEvent) 实参:
当 Map3DElement 的 range 属性发生更改时,系统会触发此事件。 |
gmp-rollchange |
function(rollChangeEvent) 实参:
当 Map3DElement 的 roll 属性发生更改时,系统会触发此事件。 |
gmp-steadychange |
function(steadyChangeEvent) 实参:
当 Map3DElement 的稳定状态发生变化时,会触发此事件。 |
gmp-tiltchange |
function(tiltChangeEvent) 实参:
当 Map3DElement 的倾斜度属性发生更改时,会触发此事件。 |
Map3DElementOptions 接口
google.maps.maps3d.Map3DElementOptions
接口
用于定义可在 Map3DElement 上设置的属性的 Map3DElementOptions 对象。
属性 | |
---|---|
bounds optional |
类型:
LatLngBounds|LatLngBoundsLiteral optional 请参阅 Map3DElement.bounds 。 |
center optional |
类型:
LatLngAltitude|LatLngAltitudeLiteral optional 请参阅 Map3DElement.center 。 |
defaultLabelsDisabled optional |
类型:
boolean optional |
defaultUIDisabled optional |
类型:
boolean optional |
heading optional |
类型:
number optional 请参阅 Map3DElement.heading 。 |
maxAltitude optional |
类型:
number optional |
maxHeading optional |
类型:
number optional |
maxTilt optional |
类型:
number optional 请参阅 Map3DElement.maxTilt 。 |
minAltitude optional |
类型:
number optional |
minHeading optional |
类型:
number optional |
minTilt optional |
类型:
number optional 请参阅 Map3DElement.minTilt 。 |
range optional |
类型:
number optional 请参阅 Map3DElement.range 。 |
roll optional |
类型:
number optional 请参阅 Map3DElement.roll 。 |
tilt optional |
类型:
number optional 请参阅 Map3DElement.tilt 。 |
FlyAroundAnimationOptions 接口
google.maps.maps3d.FlyAroundAnimationOptions
接口
FlyCameraAround 动画的自定义选项。
属性 | |
---|---|
camera |
类型:
CameraOptions 在环绕动画期间,相机应朝向的中心点。请注意,随着相机绕此中心点环绕,地图朝向也会随之变化。 |
durationMillis optional |
类型:
number optional 动画的时长(以毫秒为单位)。这是动画的总时长,而不是单次旋转的时长。 |
rounds optional |
类型:
number optional 在指定时长内围绕中心旋转的圈数。此属性用于控制旋转的整体速度。如果向 rounds 传递负数,相机将逆时针旋转,而不是默认的顺时针旋转。 |
FlyToAnimationOptions 接口
google.maps.maps3d.FlyToAnimationOptions
接口
FlyCameraTo 动画的自定义选项。
属性 | |
---|---|
endCamera |
类型:
CameraOptions 动画结束时相机应指向的位置。 |
durationMillis optional |
类型:
number optional 动画的时长(以毫秒为单位)。如果时长为 0,相机将直接传送至结束位置。 |
CameraOptions 接口
google.maps.maps3d.CameraOptions
接口
用于定义可在相机对象上设置的属性的 CameraOptions 对象。相机对象可以是具有相机位置的任何对象,例如当前地图状态或未来请求的动画状态。
属性 | |
---|---|
center optional |
类型:
LatLngAltitude|LatLngAltitudeLiteral optional 请参阅 Map3DElement.center 。 |
heading optional |
类型:
number optional 请参阅 Map3DElement.heading 。 |
range optional |
类型:
number optional 请参阅 Map3DElement.range 。 |
roll optional |
类型:
number optional 请参阅 Map3DElement.roll 。 |
tilt optional |
类型:
number optional 请参阅 Map3DElement.tilt 。 |
SteadyChangeEvent 类
google.maps.maps3d.SteadyChangeEvent
类
此事件是通过监控 Map3DElement
的稳定状态创建的。此事件会通过 DOM 树向上冒泡。
此类扩展了 Event
。
通过调用 const {SteadyChangeEvent} = await google.maps.importLibrary("maps3d")
进行访问。
请参阅 Maps JavaScript API 中的库。
属性 | |
---|---|
isSteady |
类型:
boolean 指明 Map3DElement 是否稳定(即当前场景的所有渲染是否已完成)。 |
LocationClickEvent 类
google.maps.maps3d.LocationClickEvent
类
此事件是通过点击 Map3DElement 创建的。
此类扩展了 Event
。
通过调用 const {LocationClickEvent} = await google.maps.importLibrary("maps3d")
进行访问。
请参阅 Maps JavaScript API 中的库。
属性 | |
---|---|
position |
类型:
LatLngAltitude optional 事件发生时光标下方的纬度/经度/海拔高度。请注意,在较粗略的级别,返回的数据准确性会较低。此外,当从较高的相机位置点击水面时,系统可能会返回海床海拔高度作为海拔高度值。此事件会通过 DOM 树向上冒泡。 |
PlaceClickEvent 类
google.maps.maps3d.PlaceClickEvent
类
此事件是通过点击 Map3DElement 创建的。
此类扩展了 LocationClickEvent
。
通过调用 const {PlaceClickEvent} = await google.maps.importLibrary("maps3d")
进行访问。
请参阅 Maps JavaScript API 中的库。
属性 | |
---|---|
placeId |
类型:
string 地图项的地点 ID。 |
继承自:
position
|
方法 | |
---|---|
fetchPlace |
fetchPlace() 参数:无
返回值: Promise< |