GraphViz v1.1.1
GraphViz v1.1.1 发行说明
发布日期: 2026-06-17
版本: v1.1.1
仓库: https://github.com/SiriLee/GraphViz
下载: https://github.com/SiriLee/GraphViz/releases/tag/v1.1.1
v1.1.1 变更日志
新增功能
孤立点支持
一行仅包含一个顶点名(不含边操作符)时创建孤立点(无边顶点)。支持两种格式:
- 无引号名:不含空格和
-的字符串,如A、v1 - 引号名:
"..."包裹任意内容,支持\"转义,如"Node A"、"A-B" - 序列化 (
serialize) 同步输出孤立点,保存/加载不丢失 - 力导向布局正确渲染孤立点(排斥力推向外围)
算法修复
平面性检测
- 阈值判断改用非孤立顶点数 (
nNonIsolated),避免孤立点膨胀顶点总数导致 K5/K3,3 暴力搜索被跳过 - Euler 公式界同步修正
哈密顿回路/通路
- 回溯门限 (
>20顶点跳过) 改用非孤立顶点数,避免含孤立点时误拒
工程
- 新增
CLAUDE.md— 项目架构、构建设置与发布流程文档
测试方案
| 功能 | 操作 | 预期 |
|---|---|---|
| 孤立点输入 | 编辑器输入 A---B + C + "孤立节点" |
解析 → 画布出现 4 个顶点 |
| 孤立点保存 | 保存 → 重新加载 | 孤立点不丢失 |
| 平面图 + 孤立点 | K5 图加 6 个孤立点 | 平面性检测 → ✗ K5 subgraph found |
| Hamilton + 孤立点 | 15 顶点连通图加 6 个孤立点 | 正常运行(不被阈值拒绝) |
| Euler + 孤立点 | 欧拉图加孤立点 | 欧拉回路结果不变 |
修改文件
CMakeLists.txt, CLAUDE.md (新增)
src/GraphParser.cpp, src/GraphAlgorithm.cpp
系统要求
- Windows 10/11 (64-bit)
- 无需安装 Qt — Portable 版解压即用
技术栈
C++17 · Qt 6 · CMake · MinGW-w64 · Fruchterman-Reingold Layout