# QtFlow **Repository Path**: Little_rock/qt-flow ## Basic Information - **Project Name**: QtFlow - **Description**: 基于Qt的图形化节点编辑框架 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-06-03 - **Last Updated**: 2025-11-09 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README Qt-Flow 项目 README --- ### 项目简介 Qt-Flow 是一个基于 Qt 框架开发的可视化流程编辑器。该项目提供了一套基础组件和框架,用于构建可视化编程界面,支持节点之间的数据交互和连接。 主要组件包括: - **BasePort**:端口基类,用于定义节点之间的输入输出接口。 - **BaseWidget**:基础控件类,用于构建可视化节点。 - **BaseScene** 和 **BaseViewer**:用于管理可视化场景和视图交互。 - **TypeCompatibilityManager**:类型兼容性管理器,用于判断端口之间的数据类型是否兼容。 该项目使用 C++ 编写,并利用 Qt 的图形界面功能实现可视化流程编辑功能。 --- ### 安装说明 1. **依赖项**: - Qt 5 或更高版本 - CMake 3.0 或更高版本 2. **构建步骤**: ```bash mkdir build cd build cmake .. make ``` 3. **运行**: ```bash ./QtFlow ``` --- ### 使用示例 - **创建自定义节点**: 继承 `BaseWidget` 并实现 `paintEvent` 方法,定义自己的可视化节点。 - **定义端口**: 使用 `BasePort` 创建输入和输出端口,并通过 `TypeCompatibilityManager` 注册类型兼容性规则。 - **可视化编辑**: 通过 `BaseViewer` 提供的交互功能,实现节点之间的拖拽连接和场景缩放。 --- ### 贡献指南 欢迎贡献代码和改进文档。请遵循以下步骤: 1. Fork 项目 2. 创建新分支 (`git checkout -b feature/new-feature`) 3. 提交更改 (`git commit -am 'Add new feature'`) 4. 推送分支 (`git push origin feature/new-feature`) 5. 提交 Pull Request --- ### 许可证 本项目采用 MIT 许可证。详情请查看 LICENSE 文件。