feat(all): init commit

This commit is contained in:
plum
2026-04-19 18:46:28 +08:00
commit 5d7f479765
479 changed files with 178500 additions and 0 deletions
@@ -0,0 +1,50 @@
---
outline: [2, 3]
---
# EventManagerEvents
- 源文件:`packages/sdk/src/enums/EventManagerEvents.ts`
- 文档位置:`packages/docs/api/enums/EventManagerEvents.md`
## 枚举:`EventManagerEvents`
- 作用:EventManager 事件名称枚举
| 枚举项 | 值 | 说明 |
| --- | --- | --- |
| `RAYCAST_PICK` | `'raycastPick'` | 鼠标点击事件 |
| `RAYCAST_PICK_ALL` | `'raycastPickAll'` | 枚举值 `RAYCAST_PICK_ALL`。 |
| `BOX_SELECTION_MOVE` | `'boxSelectionMove'` | 框选事件 |
| `BOX_SELECTION_COMPLETE` | `'boxSelectionComplete'` | 枚举值 `BOX_SELECTION_COMPLETE`。 |
## 类型:`EventManagerEventMap`
- 作用:EventManager 事件映射类型
### 定义
```ts
export type EventManagerEventMap = {
[EventManagerEvents.RAYCAST_PICK]: { intersects: any[], object: any, point: any, face: any, distance: any };
[EventManagerEvents.RAYCAST_PICK_ALL]: { intersects: any[], object: any, point: any, face: any, distance: any };
[EventManagerEvents.BOX_SELECTION_MOVE]: [{ data: { objects: any[], collection: any } }];
[EventManagerEvents.BOX_SELECTION_COMPLETE]: [{ data: { objects: any[] } }];
};
```
## Demo 参考
### `EventManagerEvents`
以下示例文件中可以看到该 API 的实际调用方式:
- `packages/demo/src/components/Toolbar.vue`
- `packages/demo/src/disasterFormationPanel/TunnelScene/RuptureEventPanel.vue`
- `packages/demo/src/panels/FracturingPanel.vue`
- `packages/demo/src/panels/GoldMineScene/DrillingPanel.vue`
- `packages/demo/src/panels/GoldMineScene/VentilationFillingPanel.vue`
- `packages/demo/src/panels/OilGasScene/FluidApplicationPanel.vue`
- `packages/demo/src/panels/TunnelScene/DisturbanceLoadingPanel.vue`
- `packages/demo/src/panels/TunnelScene/StressApplicationPanel.vue`
@@ -0,0 +1,51 @@
---
outline: [2, 3]
---
# SelectionManagerEvents
- 源文件:`packages/sdk/src/enums/SelectionManagerEvents.ts`
- 文档位置:`packages/docs/api/enums/SelectionManagerEvents.md`
## 枚举:`SelectionManagerEvents`
- 作用:SelectionManager 事件名称枚举
| 枚举项 | 值 | 说明 |
| --- | --- | --- |
| `OBJECT_SELECTED` | `'objectSelected'` | 选择事件 |
| `OBJECT_UNSELECTED` | `'objectUnselected'` | 枚举值 `OBJECT_UNSELECTED`。 |
## 接口:`SelectionManagerEventData`
- 作用:SelectionManagerEventData 的结构定义。
### 字段
| 字段名 | 类型 | 必填 | 作用 |
| --- | --- | --- | --- |
| `name` | `SelectionManagerEvents` | 是 | 名称。 |
| `data` | `THREE.Object3D \| null` | 是 | 输入数据。 |
## 类型:`SelectionManagerEventMap`
- 作用:SelectionManager 事件映射类型
### 定义
```ts
export type SelectionManagerEventMap = {
[SelectionManagerEvents.OBJECT_SELECTED]: THREE.Object3D | null
[SelectionManagerEvents.OBJECT_UNSELECTED]: THREE.Object3D | null
};
```
## Demo 参考
### `SelectionManagerEvents`
以下示例文件中可以看到该 API 的实际调用方式:
- `packages/demo/src/components/SceneTree.vue`
- `packages/demo/src/hooks/useDebug.ts`
+68
View File
@@ -0,0 +1,68 @@
---
outline: [2, 3]
---
# ViewerEvents
- 源文件:`packages/sdk/src/enums/ViewerEvents.ts`
- 文档位置:`packages/docs/api/enums/ViewerEvents.md`
## 枚举:`ViewerEvents`
- 作用:Viewer 事件名称枚举
| 枚举项 | 值 | 说明 |
| --- | --- | --- |
| `INIT` | `'init'` | Viewer 初始化事件 |
| `BEFORE_RENDER` | `"BEFORE_RENDER"` | 枚举值 `BEFORE_RENDER`。 |
| `AFTER_RENDER` | `"AFTER_RENDER"` | 枚举值 `AFTER_RENDER`。 |
| `CAMERA_TYPE_CHANGED` | `"CAMERA_TYPE_CHANGED"` | 枚举值 `CAMERA_TYPE_CHANGED`。 |
## 接口:`RenderEventData`
- 作用:RenderEventData 的结构定义。
### 字段
| 字段名 | 类型 | 必填 | 作用 |
| --- | --- | --- | --- |
| `data` | `{ delta: number; }` | 是 | 输入数据。 |
| `name` | `ViewerEvents` | 是 | 名称。 |
## 接口:`CameraTypeChangedEventData`
- 作用:CameraTypeChangedEventData 的结构定义。
### 字段
| 字段名 | 类型 | 必填 | 作用 |
| --- | --- | --- | --- |
| `type` | `'perspective' \| 'orthographic'` | 是 | 类型标识。 |
## 类型:`ViewerEventMap`
- 作用:Viewer 事件映射类型
### 定义
```ts
export type ViewerEventMap = {
[ViewerEvents.INIT]: any;
[ViewerEvents.BEFORE_RENDER]: { delta: number }
[ViewerEvents.AFTER_RENDER]: { delta: number }
[ViewerEvents.CAMERA_TYPE_CHANGED]: CameraTypeChangedEventData
};
```
## Demo 参考
### `ViewerEvents`
以下示例文件中可以看到该 API 的实际调用方式:
- `packages/demo/src/disasterFormationPanel/TunnelScene/RuptureEventPanel.vue`
- `packages/demo/src/views/GeothermalScene.vue`
- `packages/demo/src/views/GoldMineScene.vue`
- `packages/demo/src/views/OilGasScene.vue`
- `packages/demo/src/views/TunnelScene.vue`