deep-engine-demo/packages/docs/api/manager/PanelManager.md
2026-04-19 18:46:28 +08:00

118 lines
2.6 KiB
Markdown

---
outline: [2, 3]
---
# PanelManager
- 源文件:`packages/sdk/src/manager/PanelManager.ts`
- 文档位置:`packages/docs/api/manager/PanelManager.md`
## 接口:`IPanelManagerOptions`
- 作用:面板管理器配置选项
### 字段
| 字段名 | 类型 | 必填 | 作用 |
| --- | --- | --- | --- |
| `size` | `number` | 否 | 面板大小 |
| `cubeSize` | `number` | 否 | 小正方体大小 |
| `cubeGap` | `number` | 否 | 小正方体间距 |
| `panelOffset` | `number` | 否 | 面板位置偏移 |
| `initialData` | `{ [face: string]: ICubeData[][]; }` | 否 | 初始数据 |
## 类:`PanelManager`
- 作用:面板管理器 管理六个面的立方体面板
### 构造函数
#### `new PanelManager(options: IPanelManagerOptions = {})`
- 作用:创建面板管理器
- 入参:
| 参数名 | 类型 | 必填 | 说明 |
| --- | --- | --- | --- |
| `options` | `IPanelManagerOptions` | 否 | - 配置选项 |
- 出参:`PanelManager`
- 返回说明:返回当前类实例。
### 属性
| 属性名 | 可见性 | 类型 | 作用 |
| --- | --- | --- | --- |
| `group` | `public` | `THREE.Group` | 主组对象 |
| `panels` | `public` | `Map<string, CubePanel>` | 面板映射 |
| `options` | `public` | `Required<IPanelManagerOptions>` | 配置选项 |
### 方法
#### `initPanels(): void`
- 作用:初始化六个面
- 入参:无
- 出参:`void`
- 返回说明:无返回值。
#### `getPanel(name: string): CubePanel | undefined`
- 作用:获取指定面板
- 入参:
| 参数名 | 类型 | 必填 | 说明 |
| --- | --- | --- | --- |
| `name` | `string` | 是 | - 面板名称 |
- 出参:`CubePanel \| undefined`
- 返回说明:面板对象
#### `setPanelData(name: string, data: ICubeData[][]): void`
- 作用:设置指定面板的数据
- 入参:
| 参数名 | 类型 | 必填 | 说明 |
| --- | --- | --- | --- |
| `name` | `string` | 是 | - 面板名称 |
| `data` | `ICubeData[][]` | 是 | - 面板数据 |
- 出参:`void`
- 返回说明:无返回值。
#### `setAllPanelsData(data: { [face: string]: ICubeData[][]; }): void`
- 作用:批量设置所有面板数据
- 入参:
| 参数名 | 类型 | 必填 | 说明 |
| --- | --- | --- | --- |
| `data` | `{ [face: string]: ICubeData[][]; }` | 是 | - 所有面板数据 |
- 出参:`void`
- 返回说明:无返回值。
#### `dispose(): void`
- 作用:销毁面板管理器
- 入参:无
- 出参:`void`
- 返回说明:无返回值。
## 构造示例
- 当前 Demo 中没有直接展示 `PanelManager` 的构造调用。
## 函数示例
- 当前 Demo 中没有直接展示 `PanelManager` 的公开方法调用。