Skip to content

Shingwha/node_graph

Repository files navigation

项目概述

node-graph 是一个基于 Python 和 PySide6 构建的节点编辑器,支持图像处理和数值计算。用户可通过节点和边的连接创建工作流,实现数据传递与处理。

运行演示

image

核心功能

  1. 节点创建与管理:提供多种类型节点,如输入、输出、计算和图像处理节点,可灵活添加、删除和移动。
  2. 节点连接:通过拖动插座创建边,实现节点间数据传递,确保数据类型匹配。
  3. 数据处理:支持图像处理(灰度化、翻转等)和数值计算(加减乘除等)。
  4. 场景管理:支持场景的导入和导出,方便保存和分享工作流。
  5. 撤销与重做:提供撤销和重做操作,方便用户纠正错误。

技术栈

  • 编程语言:Python 3.11 及以上
  • 图形界面库:PySide6
  • 图像处理库:opencv-python

项目结构

  • main.py:程序入口,启动主窗口。
  • main_window.py:主窗口,包含菜单栏和视图。
  • scene.py:图形场景,管理节点和边。
  • node.py:节点类,定义节点属性和行为。
  • edge.py:边类,实现节点间连接和数据传递。
  • graph.py:图类,确定节点执行顺序并执行。
  • node_factory.py:节点工厂,根据节点 ID 创建节点。
  • theme.py:主题配置,定义颜色、字体和样式。
  • box.py:输入框组件,提供不同类型输入框。
  • view.py:视图类,处理用户交互和绘制。

安装与运行

确保安装 Python 3.11 及以上版本,运行以下命令安装依赖:

uv sync

运行项目:

python main.py

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages