63 lines
3.0 KiB
Markdown
63 lines
3.0 KiB
Markdown
# EG 本地项目模块分析(Qt 清理后)
|
||
|
||
更新时间:2026-02-28
|
||
分析范围:`d:\IMGUI\EG` 本地文件,不包含任何远程仓库信息。
|
||
|
||
## 1. 当前结论
|
||
|
||
- 主编辑器路径已切换为 ImGui 方案,Qt/PySide 在项目代码主路径中已清理完成。
|
||
- 本地扫描结果(排除 `RenderPipelineFile` 第三方目录):
|
||
- `PyQt/PySide/Qt` 关键引用:`0`
|
||
- Python 脚本数:`385`
|
||
- 当前主要技术债已从“Qt 运行时依赖”转为“旧接口命名和耦合残留”。
|
||
- 已完成基础稳定性优化:入口保护、兼容字段初始化、脚本恢复拼写错误修复。
|
||
- 已完成第一轮接口收敛:`event_handler/selection/runtime_actions/InfoPanelManager` 已改为 helper 访问模式。
|
||
|
||
## 2. 本轮 Qt 清理落点
|
||
|
||
已完成清理的关键文件:
|
||
|
||
- [core/InfoPanelManager.py](d:/IMGUI/EG/core/InfoPanelManager.py)
|
||
- [core/selection.py](d:/IMGUI/EG/core/selection.py)
|
||
- [scene/scene_manager_convert_tiles_mixin.py](d:/IMGUI/EG/scene/scene_manager_convert_tiles_mixin.py)
|
||
- [ui/widgets.py](d:/IMGUI/EG/ui/widgets.py)
|
||
- [ui/icon_manager.py](d:/IMGUI/EG/ui/icon_manager.py)
|
||
- [core/world.py](d:/IMGUI/EG/core/world.py)
|
||
- [core/vr_manager.py](d:/IMGUI/EG/core/vr_manager.py)
|
||
- [core/vr/testing/test_mode.py](d:/IMGUI/EG/core/vr/testing/test_mode.py)
|
||
- [scene/tree_roles.py](d:/IMGUI/EG/scene/tree_roles.py)
|
||
- [TransformGizmo/move_gizmo.py](d:/IMGUI/EG/TransformGizmo/move_gizmo.py)
|
||
- [TransformGizmo/rotate_gizmo.py](d:/IMGUI/EG/TransformGizmo/rotate_gizmo.py)
|
||
- [TransformGizmo/scale_gizmo.py](d:/IMGUI/EG/TransformGizmo/scale_gizmo.py)
|
||
- [requirements/requirements.txt](d:/IMGUI/EG/requirements/requirements.txt)
|
||
- [requirements/clean-requirements.txt](d:/IMGUI/EG/requirements/clean-requirements.txt)
|
||
- [requirements/environment.yml](d:/IMGUI/EG/requirements/environment.yml)
|
||
- [requirements/DEPLOYMENT_README.md](d:/IMGUI/EG/requirements/DEPLOYMENT_README.md)
|
||
|
||
## 3. 仍需优化的结构点(非 Qt 依赖问题)
|
||
|
||
- 旧接口命名残留仍较多:`interface_manager/treeWidget/gui_manager` 引用约 `92` 处。
|
||
- `main.py` 仍是脚本式入口(模块导入副作用风险仍在)。
|
||
- 场景树与 GUI 元素生命周期在多个模块分散维护,后续建议继续做单一上下文收敛。
|
||
|
||
## 4. 风险分级(Qt 清理后)
|
||
|
||
- 高风险:
|
||
- 多处旧接口命名仍在调用链中,后续重构若不做适配层可能引发行为回归。
|
||
- 中风险:
|
||
- 场景保存/加载与树状态同步仍跨模块分散,维护成本高。
|
||
- 低风险:
|
||
- 文档和模板文件中仍有历史术语,易造成新成员理解偏差。
|
||
|
||
## 5. 后续建议顺序
|
||
|
||
1. 建立统一 EditorContext,收敛 `interface_manager/gui_manager` 访问入口。
|
||
2. 将场景树操作抽象为 ImGui 专用接口,逐步移除 `treeWidget` 语义。
|
||
3. 统一入口规范(`if __name__ == "__main__":`)并补最小回归脚本。
|
||
|
||
## 6. 全量目录与脚本清单
|
||
|
||
为后续优化分析,完整目录树与全部脚本行数/用途清单见:
|
||
|
||
- [PROJECT_FULL_CATALOG.md](d:/IMGUI/EG/PROJECT_FULL_CATALOG.md)
|