Appearance
Overlay
说明
Overlay 是一个覆盖物类,用于在地图上创建HTML覆盖物,可以绑定到地图上的元素(如Graphic、Poi等)。
构造函数
typescript
new Overlay(context: Context, options?: Partial<OverlayOptions>);参数
| 参数 | 类型 | 说明 | 默认值 |
|---|---|---|---|
| context | Context | 地图上下文 | - |
| options | Partial<OverlayOptions> | 覆盖物配置 | {} |
配置项
| 参数 | 类型 | 说明 | 默认值 |
|---|---|---|---|
| autoUpdate | boolean | 是否自动更新位置 | true |
| appendToBody | boolean | 是否添加到body上 | false |
| autoChangePlacement | boolean | 是否自动改变位置 | false |
返回值
Overlay 覆盖物实例
属性
div
- 类型:
HTMLDivElement - 默认值:-
覆盖物的DOM元素
position
- 类型:
Vector3 - 默认值:
new Vector3()
覆盖物的位置
visible
- 类型:
boolean - 默认值:
true
覆盖物是否可见
options
- 类型:
OverlayOptions - 默认值:
{autoUpdate: true, appendToBody: false, autoChangePlacement: false}
覆盖物配置
placement
- 类型:
Placement - 默认值:
"top"
覆盖物的位置类型,可选值:"top" | "bottom" | "left" | "right" | "leftTop" | "rightTop" | "leftBottom" | "rightBottom" | "center"
方法
bindElement
typescript
bindElement(element: Object3D): void;将覆盖物绑定到地图元素上
参数
| 参数 | 类型 | 说明 | 默认值 |
|---|---|---|---|
| element | Object3D | 要绑定的地图元素 | - |
返回值
无
使用示例
typescript
overlay.bindElement(graphic);unBindElement
typescript
unBindElement(): void;解除覆盖物与地图元素的绑定
参数
无
返回值
无
使用示例
typescript
overlay.unBindElement();setVisible
typescript
setVisible(visible: boolean, display?: string): void;设置覆盖物是否可见
参数
| 参数 | 类型 | 说明 | 默认值 |
|---|---|---|---|
| visible | boolean | 是否可见 | - |
| display | string | display样式 | "block" |
返回值
无
使用示例
typescript
overlay.setVisible(false);setOpacity
typescript
setOpacity(opacity: number): void;设置覆盖物透明度
参数
| 参数 | 类型 | 说明 | 默认值 |
|---|---|---|---|
| opacity | number | 透明度值 | - |
返回值
无
使用示例
typescript
overlay.setOpacity(0.5);dispose
typescript
dispose(): void;销毁覆盖物
参数
无
返回值
无
使用示例
typescript
overlay.dispose();事件
update-position
typescript
(event: "update-position", args: { x: number; y: number; width: number; height: number }): void;覆盖物位置更新事件,仅在autoUpdate为false且appendToBody为false时触发
参数
| 参数 | 类型 | 说明 | 默认值 |
|---|---|---|---|
| x | number | x坐标 | - |
| y | number | y坐标 | - |
| width | number | 容器宽度 | - |
| height | number | 容器高度 | - |
返回值
无
使用示例
typescript
overlay.addEventListener("update-position", ({ x, y, width, height }) => {
console.log(x, y, width, height);
});