Appearance
交互管理器
对交互进行管理操作
ts
interface InteractiveManager {
add(interactive: InteractiveItem): void
close(interactive: InteractiveItem): void
clean(): void
getOlMap(): OlMap
getContainer(): Container
getEmitter(): emitter.Emitter
getInteractiveItems(): InteractiveItem[]
}
const { interactive } = map
InteractiveManager事件
事件 | 参数 | 是否必填 | 描述 |
---|---|---|---|
add | InteractiveItem | 是 | 添加交互项 |
close | InteractiveItem | 是 | 删除交互项 |
clean | undefined | 否 | 清空交互项 |
getOlMap | undefined | 否 | 删除交互项 |
getContainer | undefined | 否 | 清空交互项 |
getEmitter | undefined | 否 | 删除交互项 |
getInteractiveItems | undefined | 否 | 获取当前所有的交互项 |
交互
交互由交互基本信息和交互事件组成,通常交互事件会通过emitter对外抛出相应的回调函数,交互项的通用事件是enable/close代表启用和停用。
有一些交互项还会有其他的交互事件
ts
type InteractiveEvent<T extends Record<string, unknown>> = {
enabled: boolean,
enable(): void
close(): void
destroy(): void
} & T
type Interactive<T extends Record<string, unknown> = Record<string, unknown>> = {
id: number
type: string
} & InteractiveEvent<T>
Interactive通用事件
事件 | 参数 | 是否必填 | 描述 |
---|---|---|---|
enable | undefined | 是 | 启用交互 |
close | undefined | 是 | 关闭交互 |
destroy | undefined | 是 | 销毁交互 |
已有的交互插件
目前有绘制、测距、修改、移动、选择交互 每一个交互项目都是通过enable 启用, close 关闭,基本有一些特殊的交互事件