119 lines
6.5 KiB
Markdown
119 lines
6.5 KiB
Markdown
# iflow-engine SDK 文档索引
|
||
|
||
> 🤖 **AI 代码助手入口文件** - 请从此文件开始了解项目结构
|
||
|
||
## 项目概述
|
||
|
||
| 项目 | 内容 |
|
||
|------|------|
|
||
| **名称** | iflow-engine |
|
||
| **版本** | 2.2.1 |
|
||
| **描述** | BIM 引擎 SDK,支持 3D 模型、2D 图纸、720° 全景,适用于 Vue2、Vue3、React 和原生 HTML |
|
||
| **类型** | 技术项目 / SDK |
|
||
| **语言** | TypeScript |
|
||
| **构建工具** | Vite |
|
||
| **核心依赖** | Three.js, iflow-engine-base |
|
||
## 快速导航
|
||
|
||
| 文档 | 说明 | 适合人群 |
|
||
|------|------|---------|
|
||
| [架构设计.md](架构设计.md) | 架构设计、设计模式、模块依赖 | 架构师、核心开发 |
|
||
| [快速开始.md](快速开始.md) | 快速开始、安装、基础用法(含 3D/2D/720) | 新用户、集成开发 |
|
||
| [MODULES/模块索引.md](MODULES/模块索引.md) | 所有模块的详细文档索引 | 所有开发者 |
|
||
| [ENGINNE_3D/API文档.md](ENGINNE_3D/API文档.md) | 3D 引擎底层 API 参考 | 3D 引擎开发者 |
|
||
| [ENGINE_2D/API文档.md](ENGINE_2D/API文档.md) | 2D 图纸引擎 API 参考 | 2D 引擎开发者 |
|
||
| [ENGINE_720/API文档.md](ENGINE_720/API文档.md) | 720° 全景引擎 API 参考 | 720 引擎开发者 |
|
||
| [贡献指南.md](贡献指南.md) | 开发协作、脚本说明、最小验证集 | 项目贡献者 |
|
||
| [运维手册.md](运维手册.md) | 构建/发布/回滚流程与常见问题 | 维护者 |
|
||
| [API调用链.md](API调用链.md) | API 调用链(用户交互 → Manager → Engine → 底层引擎) | SDK 维护者 |
|
||
| [外部API总览.md](外部API总览.md) | 外部可调用 API 全量清单(按模块) | SDK 集成开发 |
|
||
| [MODULES/设置系统.md](MODULES/设置系统.md) | 设置系统架构、API、第三方预设接入 | 所有开发者 |
|
||
## 模块概览
|
||
|
||
```
|
||
src/
|
||
├── bim-engine.ts # 3D 引擎主入口类 BimEngine
|
||
├── bim-engine-2d.ts # 2D 图纸引擎 BimEngine2d(独立轻量)
|
||
├── bim-engine-720.ts # 720° 全景引擎 BimEngine720(独立轻量)
|
||
├── index.ts # 导出文件
|
||
├── core/ # 核心基础设施
|
||
├── managers/ # 管理器层(仅 3D 使用)
|
||
├── components/ # 组件层(engine / engine-2d / engine-720 + UI 组件)
|
||
├── services/ # 全局服务(主题、国际化)
|
||
├── themes/ # 主题预设和类型
|
||
├── locales/ # 国际化文案
|
||
├── types/ # 公共类型定义
|
||
└── utils/ # 工具函数
|
||
|
||
## 引擎类概览
|
||
|
||
| 引擎类 | 路径 | 定位 | 文档 |
|
||
|--------|------|------|------|
|
||
| **BimEngine** | `src/bim-engine.ts` | 3D 完整引擎(含工具栏、测量、剖切等 UI) | [快速开始](快速开始.md#一3d-引擎bimengine) |
|
||
| **BimEngine2d** | `src/bim-engine-2d.ts` | 2D 图纸引擎(轻量独立) | [快速开始](快速开始.md#二2d-图纸引擎bimengine2d) / [API](ENGINE_2D/API文档.md) |
|
||
| **BimEngine720** | `src/bim-engine-720.ts` | 720° 全景引擎(轻量独立) | [快速开始](快速开始.md#三720-全景引擎bimengine720) / [API](ENGINE_720/API文档.md) |
|
||
|
||
## 核心模块
|
||
|
||
| 模块 | 路径 | 职责 | 文档 |
|
||
|------|------|------|------|
|
||
| **core** | `src/core/` | 事件系统、管理器基类、注册表 | [详情](MODULES/核心模块.md) |
|
||
| **managers** | `src/managers/` | 15 个管理器,处理业务逻辑(仅 3D) | [详情](MODULES/管理器模块.md) |
|
||
| **components** | `src/components/` | 引擎组件 + 20+ UI 组件 | [详情](MODULES/组件模块.md) |
|
||
| **services** | `src/services/` | 主题管理、国际化服务 | [详情](MODULES/服务模块.md) |
|
||
## 架构分层
|
||
|
||
```
|
||
┌─────────────────────────────────────────────────────────────┐
|
||
│ BimEngine (3D) BimEngine2d (2D) BimEngine720 (720)│ ← 用户 API 入口
|
||
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
|
||
│ │ManagerRegistry│ │ManagerRegistry│ │ManagerRegistry│ │
|
||
│ │ + 15 Managers │ │ (仅事件总线) │ │ (仅事件总线) │ │
|
||
│ │ + 20+ UI 组件 │ │ + Engine2d │ │ + Engine720 │ │
|
||
│ └──────────────┘ └──────────────┘ └──────────────┘ │
|
||
├─────────────────────────────────────────────────────────────┤
|
||
│ 服务层: LocaleManager (全局), ThemeManager (全局) │
|
||
├─────────────────────────────────────────────────────────────┤
|
||
│ 核心: EventEmitter, BaseManager │
|
||
├─────────────────────────────────────────────────────────────┤
|
||
│ 底层: iflow-engine-base (createEngine/createEngine2d/720) │
|
||
└─────────────────────────────────────────────────────────────┘
|
||
```
|
||
|
||
## 关键设计模式
|
||
|
||
| 模式 | 应用位置 | 说明 |
|
||
|------|---------|------|
|
||
| **实例模式** | ManagerRegistry | 每个引擎实例独立注册表 |
|
||
| **单例模式** | LocaleManager, ThemeManager | 全局共享服务 |
|
||
| **观察者模式** | EventEmitter, 服务订阅 | 事件驱动通信 |
|
||
| **模板方法** | BaseManager, BaseDialogManager | 统一生命周期 |
|
||
| **工厂模式** | BimEngine 初始化 | 创建管理器实例 |
|
||
|
||
## 公开 API 统计
|
||
|
||
| 类别 | 数量 |
|
||
|------|------|
|
||
| 引擎类 | 3 个(BimEngine / BimEngine2d / BimEngine720) |
|
||
| 管理器类 | 15 个(仅 3D) |
|
||
| UI 组件 | 20+ 个(仅 3D) |
|
||
| 事件类型 | 30+ 个 |
|
||
| 主题属性 | 70+ 个 |
|
||
| 国际化键 | 200+ 个 |
|
||
## 技术栈
|
||
|
||
- **语言**: TypeScript 5.x
|
||
- **构建**: Vite 7.x
|
||
- **3D 引擎**: Three.js 0.182.x
|
||
- **核心 SDK**: iflow-engine-base 3.1.x
|
||
|
||
## 相关链接
|
||
|
||
- **仓库**: http://123.60.156.158:13000/bim_engine/bimEngine
|
||
- **问题反馈**: http://123.60.156.158:13000/bim_engine/bimEngine/issues
|
||
|
||
---
|
||
|
||
**文档生成时间**: 2026-03-10
|
||
**文档版本**: 2.0.0
|