
熔化/优化/美化PCB
熔化/优化/美化PCB
mRNA623
熔化/优化/美化PCB
简体中文 | English | 当翻译有偏差时,请以中文版本为准
一键将 PCB 拐角优化为圆弧,改善几何连续性与布线观感,降低尖角带来的制造与应力风险;线宽突变处支持贝塞尔过渡(支持位置偏移调节);支持差分/等长保护、DRC检查、覆铜自动重铺、多步撤销、快照管理、强制圆弧生成等高级优化功能
1、拐角美化为圆弧(可二次编辑半径)

2、突变线宽平滑美化(基于贝塞尔曲线)

3、快照管理 & 撤销支持

4、DRC 规则检查

注意:插件开发中,建议操作前备份工程,遇到问题欢迎反馈。
使用
菜单位置: 高级 → 美化PCB
- 圆滑布线(选中/全部) - 处理走线拐角(基于圆弧走线美化),圆角半径比率默认
10x - 连接节点保护 - 默认保持焊盘、过孔中心以及 T 形、十字等分叉节点的原始连接,避免圆滑后断连
- 差分/等长保护 - 默认识别 DRC 中的差分对和等长网络组,匹配成功时使用同心圆弧,无法可靠匹配时保守保持直角
- 过渡线宽(选中) - 不同线宽间平滑渐变(基于贝塞尔曲线美化,支持位置偏移调节);顶部菜单仅保留选中操作
- DRC 规则检查 - 先乐观布线,再逐轮缩小或回退不符合规则的圆角;最大调整轮数默认为
60(可配置1–100),支持忽略覆铜规则;美化流程完成全部后处理后固定补一次最终检查 - 覆铜自动重铺 - 操作完成后智能重铺存在冲突的相关覆铜区域;自动重铺上限默认是 30 块覆铜区域且可配置,超过上限时提示手动执行宿主的
Shift+B - 撤销 / 快照 - “选中”操作采用增量撤销,仅同步变化图元;“全部”操作采用全量恢复,优先保证整板结果完整;支持手动/自动快照视图切换
- 快捷键 - 默认
F6圆滑选中、F9圆滑全部、Ctrl+Shift+Z撤销;支持自定义、冲突检测和运行时兼容提示 - 高级设置 - 配置半径、过渡参数、DRC 调整轮数、覆铜上限、管理快照和快捷键;支持卡片排序与折叠,调试日志默认关闭、可按需开启
- Alpha 性能加速 - 默认开启;圆滑和全量恢复期间暂停飞线计算,全量恢复优先快速枚举图元 ID,并在恢复后尝试批量重铺覆铜。任一接口不可用时自动回退;画布暂停能力已预留但在完成宿主实测前强制关闭
Alpha 性能实测
测试板为 立创·庐山派 Lite-K230D-CanMV 开发板的副本工程,测试状态约有 5276–5278 条导线;圆滑后约有 2258–2303 条圆弧。宿主版本为嘉立创 EDA 专业版 V3.2.148。
同方向“约 5300 条导线、约 2300 条圆弧恢复到 4 条圆弧”的现场对比如下:
| 设置 | 几何变更与校验 | 覆铜 | 恢复后快照 | 合计 |
|---|---|---|---|---|
| Alpha 开启 | 13.0s | 7.2s | 0.2s | 20.3s |
| Alpha 关闭 | 21.9s | 7.0s | 0.2s | 29.2s |
Alpha 开启后本次全量恢复总耗时降低约 30%,其中创建导线由约 17.4s 降至 9.2s。这是暂停飞线计算与快速 ID 枚举共同生效的现场结果,不能拆分为单个 API 的独立收益;覆铜耗时基本不变。另一次美化从 85.1s 降至 31.7s,但 DRC 收敛轮数同时由 29 轮降至 8 轮,因此只作为运行观察,不作为严格性能结论。
适用场景与注意事项
- 圆滑布线更适合用于布线观感优化、柔性基板、高压、大电流、部分射频或对尖角敏感的场景。对普通低速板通常风险较低,但仍建议保留快照并检查 DRC。
- 手工制作 PCB 同样很需要圆弧美化:平顺的转角更便于手工描线、转印和腐蚀,也能减少尖角处的制作难度。完成后仍应检查间距和连通性。
- 高频数字、射频、阻抗控制网络不要无脑全局圆滑。外观看起来平滑不等于信号反射更低,关键网络应结合阻抗、线长和 SI 仿真评估;线宽过渡长度也应按实际频率与结构计算(例如
Variational Theory of the Tapered Impedance Transformer中的 tapered impedance transformer 思路)。 - 焊盘/过孔节点保护固定开启,插件会保持同网络中心连接及 T 形、十字等分叉节点原样。高速设计中的直连位置仍应结合局部挖空、阻抗补偿等要求单独检查。
- 差分/等长保护默认开启。插件会优先对可可靠匹配的拐角使用同心圆弧;无法可靠匹配时会保守保持直角,避免为了圆滑而破坏长度关系。操作后仍建议用 EDA 的网络长度、等长规则和 DRC 再确认。
- 导出生产文件前请用 Gerber 预览或制造检查确认最终图形,尤其是强制圆弧、线宽过渡和复杂板边/覆铜附近的修改。
可通过 高级 → 扩展管理器 → 已安装扩展 → 美化PCB → 配置 勾选“显示在顶部菜单”,方便使用(右键菜单API暂未开放)



设置截图用于展示界面布局;当前默认参数和快捷键以本文及安装后的实际设置为准。
参与贡献
欢迎 Fork & Pr!开发环境搭建如下:
克隆仓库
git clone --recursive https://github.com/m-RNA/Easy_EDA_PCB_Beautify.git
cd Easy_EDA_PCB_Beautify
已克隆?拉取子模块
git submodule update --init --recursive
注意:子模块已锁定到兼容的特定版本,请勿使用
--remote参数更新,否则可能导致编译失败。
安装 & 构建
npm install
npm run build
构建产物:build/dist/ 目录下的 .eext 扩展包
开发注意
嘉立创 EDA API 与已验证运行时经验见 开发技术笔记
结构
src/
├── index.ts # 入口 & 菜单注册
└── lib/
├── beautify.ts # 拐角圆滑 (Beautify)
├── arcGeometry.ts # 圆角与同心圆弧几何计算
├── widthTransition.ts # 线宽过渡
├── drc.ts # DRC 检查与覆铜过滤
├── snapshot.ts # 快照管理
├── shortcuts.ts # 快捷键注册
├── math.ts # 数学工具
├── routeTopology.ts # 整板拓扑与电气锚点保护
├── eda_utils.ts # EDA 工具 (覆铜重铺等)
├── logger.ts # 日志打印
└── settings.ts # 设置读写
iframe/
└── settings.html # 设置界面
pro-api-sdk/ # Git子模块 (嘉立创专业版扩展API SDK)
License
这个项目采用 Apache-2.0 许可证,详情见 【Apache-2.0 许可证】
Changelog
1.0.51 (2026-07-26)
Alpha 性能实验
- 新增默认开启的“实验性性能加速”开关;启用时在圆滑和全量恢复的图元变更阶段暂停飞线计算,并在成功或失败后恢复原状态,用户仍可手动关闭
- 快照恢复优先尝试 Alpha
rebuildCopperRegions()一次重铺全部覆铜,接口不可用、返回异常或调用失败时自动回退逐块重铺 - 全量清空循环优先使用
getAllPrimitiveId()快速枚举,但稳定空板判定仍使用完整图元读取复核;接口不可用或失败时自动回退原路径 - 升级
@jlceda/pro-api-types至0.3.11,接入运行时能力检测,并为不可用或失败的 Alpha API 保留原路径回退 - 画布暂停 API 保留能力检测与恢复代码,但正式路径强制关闭,等待后续宿主实测后再开放
性能实测
- 测试板:立创·庐山派 Lite-K230D-CanMV 开发板副本,约
5276–5278条导线、圆滑后约2258–2303条圆弧,宿主版本V3.2.148 - 同方向全量恢复中,Alpha 开启后几何变更与校验由约
21.9s降至13.0s,包含覆铜和恢复后快照的总耗时由约29.2s降至20.3s,降低约30% - 创建导线由约
17.4s降至9.2s;该结果包含暂停飞线计算和快速 ID 枚举的共同作用,覆铜耗时仍约7s - 美化现场观察由
85.1s降至31.7s,但 DRC 收敛轮数由29轮变为8轮,不作为严格对照结论
完成状态
- 美化、线宽过渡、恢复和撤销只在覆铜及最终 DRC 完成后显示终态吐司
- 恢复和撤销在覆铜后固定追加一次最终 DRC,并在开始检查时显示进度提示;检查失败或仍有违规时显示警告
设置精简
- 移除“同步线宽过渡”设置及圆滑后的自动线宽过渡调用;独立的“过渡线宽(选中)”功能不受影响
- 移除“保护焊盘/过孔节点”开关并固定开启节点保护,避免旧配置关闭后造成圆滑断连
1.0.45 (2026-07-25)
稳定性与撤销
- 全量恢复彻底清空:恢复前重复枚举并删除整板 Line/Arc,确认稳定空板后再重建快照,避免宿主在删除过程中重新编号或延迟暴露圆弧而造成残留
- 快照诊断按需显示:仅在调试模式开启时显示快照诊断按钮并输出详细几何差异,正常使用时保留必要的恢复错误而隐藏诊断噪声
- 恢复后重新覆铜:撤销和手动恢复在布线校验成功后按设置重新铺设全部覆铜区域,避免恢复导线后继续显示旧填充结果
- 圆弧规范化校验:全量恢复允许宿主把同一圆弧拆分或合并为等价圆弧段,但必须通过同网络、同层、同线宽、同圆心半径和双向角度覆盖验证;真实额外圆弧仍会阻止恢复
- 手动快照强制全量恢复:手动快照及其恢复前后安全快照不再使用增量差分,恢复时必须先稳定清空全部导线和圆弧,再从空状态重建目标
- 美化后最终 DRC:美化或线宽过渡成功完成全部后处理后,在启用 DRC 时固定追加一次全局检查,不再依赖是否实际重铺覆铜
默认设置
- 圆角半径比率默认值由
5x提高为10x - DRC 最大调整轮数默认值由
30提高为60,继续支持在1–100范围内配置
1.0.39 (2026-07-22)
文档
- 将代理协作规则与嘉立创 EDA 技术笔记拆分:根目录
AGENTS.md保留可执行规则,详细 API 和运行时经验迁移至docs/DEVELOPER_NOTES.md - 补充手工制作 PCB 同样适合圆弧美化的场景说明,并提醒完成后检查间距和连通性
默认设置
- DRC 最大调整轮数默认提高为
30,设置范围扩展为1–100 - 自动重铺覆铜上限默认提高为 30 块覆铜区域
菜单
- 移除顶部菜单中的“过渡线宽(全部)”,保留“过渡线宽(选中)”
1.0.38 (2026-07-20)
DRC 收敛与稳定性
- 中型板多轮修复:DRC 最大调整轮数默认由
4提高为10,并在设置页开放1–20轮配置,处理较大 PCB 在前一批圆角修复后才继续暴露的违规 - 单轮去重:同一圆角的直线和圆弧同时被 DRC 命中时,每轮只调整一次,避免缩放步骤被重复消耗
- 最终校验:最后一轮几何调整后再执行一次 DRC;无可调整内容时提前停止,DRC API 调用失败不再误判为检查通过
设置与测试
- 高级设置的 DRC 卡片新增“最大 DRC 调整轮数”,支持保存和输入范围校验
- 新增 DRC 圆角收敛回归测试,并扩展内联设置页测试覆盖默认值与保存
1.0.37 (2026-07-18)
稳定性与撤销
- 按操作范围恢复:“圆滑/过渡(选中)”使用增量撤销,“圆滑/过渡(全部)”使用全量恢复;显式记录恢复策略,避免几何相同的 Selected Before 快照误复用 All Before 的全量策略
- 全量恢复收敛:强化导线/圆弧删除重试、稳定窗口校验与宿主几何规范化识别,避免恢复过程中残留圆弧、重复导线或因宿主自动合并共线段而误报失败
- 圆滑结果校验:不再仅凭宿主可能变化的导线数量判定失败;保留原线残留检测,并对真实几何差异输出诊断
- 设置页回归修复:修复内联设置页卡片无法折叠、设置无法保存等问题,并加入实际 HTML 运行测试
性能
- 圆滑流程:批量删除原线、有限并发创建新图元,减少大型 PCB 初次重绘耗时
- DRC 复用:圆滑、修复与覆铜处理复用同一次 DRC 结果,减少重复检查;无可修复项时提前结束重试
- 日志策略:性能与诊断日志默认关闭,开启调试模式后统一附带插件版本,便于问题定位
设置与兼容性
- 默认参数:圆角半径比率和线宽过渡长度比率统一为
5x - 快捷键:默认改为
F6(圆滑选中)、F9(圆滑全部)、Ctrl+Shift+Z(撤销);修复运行时大小写格式,增加宿主冲突、修饰键包含关系及不受支持组合的提示 - 覆铜重铺上限:开放自动重铺上限设置,默认 10 块覆铜区域;超过上限时跳过逐块 β API 调用并提示手动执行宿主
Shift+B - 移除 Beta 功能:移除“合并过渡线段”及其残留设置引用,避免原导线和新圆弧重叠
测试
- 新增快照恢复、设置页内联交互、快捷键生命周期、异步池、圆弧几何与整板拓扑自动化测试
1.0.11 (2026-07-17)
修复
- 连接节点保护:圆滑布线默认保持焊盘、过孔中心以及 T 形、十字等分叉节点的原始连接,避免生成圆弧后与电气节点脱离
- 选中圆滑拓扑:改为依据整板导线拓扑识别分叉,修复只选中部分支路时将真实分叉误判为普通拐角的问题
性能
- 批量图元操作:旧导线改为分块批量删除,新直线和圆弧采用有限并发创建,减少大型 PCB 圆滑时逐条等待 Worker 的耗时;批量删除失败时自动回退逐条处理
- 快照重建优化:恢复快照时采用有限并发重建,对返回失败的图元自动降低并发重试,并按实际成功数量报告恢复结果
设置
- 新增“保护焊盘/过孔节点”开关,默认开启;关闭后仍会保留分叉节点的连接安全保护
1.0.10 (2026-07-08)
新功能
- 差分/等长保护:圆滑布线默认识别 DRC 中配置的差分对与等长网络组,优先使用同心圆弧策略处理匹配拐角,降低独立圆角破坏长度关系的风险
- 保守回退策略:当差分对或等长组拐角无法可靠匹配时,保持该组拐角为直角,避免强行圆滑造成新的不等长问题
- 设置开关:设置界面新增“差分/等长保护”开关,默认开启,可按项目需要关闭
SDK 与稳定性
- 同步
@jlceda/pro-api-types到^0.3.4,并更新pro-api-sdk子模块到最新模板 - 兼容新版/旧版
getAllDifferentialPairs()返回结构,支持数组与对象格式归一化 - 新增轻量几何测试,覆盖普通圆角长度计算、同心圆弧半径同步和无法匹配时跳过保护拐角
文档
- README 补充差分/等长保护说明
- README 补充高速数字、射频和阻抗控制网络的适用边界与检查建议
- 开发说明文件统一为
agents.md,并更新覆铜重建 API 说明
1.0.9 (2026-02-14 新年快乐~)
新功能
- 支持快捷键:在设置界面新增“快捷键配置”卡片,支持用户自定义圆滑、过渡、撤销等功能的触发按键,并具备冲突检测与诊断功能
- 增量式快照引擎:快照恢复和撤销由"全删全建"升级为"增量更新"。引入 ID 与几何指纹双重匹配机制,仅对发生变化的图元执行操作,大幅提升大型 PCB 的响应速度与稳定性
- 快照持久化 V4 构建:重构存储架构,迁移至
ExtensionAllUserConfigs统一容器。保证本地浏览器的快照存储 - 智能快照对比反馈:恢复完成后细化交互提示,显示“保持数量”与“更新处数”,让恢复状态一目了然
UI & 交互优化
- 交互视觉统一:统一了快照删除与快捷键清理按钮、恢复按钮与执行按钮的视觉风格(高度、样式、悬浮反馈)
- 交互细节增强:优化了设置页面的悬浮背景对比度,并修复了保存操作干扰卡片动画(抖动)的 Bug,提升了 UI 的丝滑感
- 消息提示标准化:移除了代码中冗余的手动国际化调用,利用 SDK 自动翻译机制简化逻辑,并统一了 Toast 消息的弹出类型与持续时间
性能与稳定性
- 铜皮重铺安全阈值:由于当前API限制,给自动重铺铜皮添加了 5 个铺铜的保护限制,防止超大规模 PCB 在重铺耗时且无法操作界面,并增加了重铺进度的 Toast 提示
- 快捷键:修复了快捷键冲突名无法释放的 Bug,支持快捷键的静默注册与一键清理
修复
- 圆弧线宽 10mil Bug:有一些情况依旧10mil,现在最后的一道保障是圆弧会从导线获取可信线宽,以修复快照中线宽问题
- 修复了快照达到 20 个上限后 UI 列表不更新的显示问题
- 解决了因 PCB 内部重新分配 ID 导致快照一致性检查失败(全删全建)的问题
1.0.8 (2026-02-10)
新功能
- DRC 忽略覆铜规则:DRC 检查时可选择跳过覆铜相关违规(覆铜重铺后通常会自动解决)
- 重铺覆铜:执行"圆滑全部"或"过渡线宽(全部)"后,自动重铺所有覆铜区域(调用未公开 API
rebuildCopperRegion(),runtime 验证可用) - 以上两个功能均在设置界面提供开关,默认开启
重大修复
- 圆弧线宽 10mil Bug:修复快照恢复时,圆弧宽度变为默认 10mil 的严重 Bug(原因:
beautify.ts与snapshot.ts获取pcbId的逻辑不一致,导致arcWidthMap的 key 不匹配、查找失败,回退到getState_LineWidth()而该 API 对圆弧返回值不正确。修复:统一 pcbId 获取逻辑,并在创建圆弧时自行记录线宽至全局 Map)
重构
- DRC 引擎重写:基于实际 API 返回数据,定义完整 TypeScript 接口(
DrcCategory→DrcSubCategory→DrcIssue三级结构),替换原有递归遍历与模糊关键字匹配逻辑 - 覆铜检测精确化:从宽泛的
copper/pour/fill/plane关键字匹配改为精确的Copper Region字符串匹配,避免误杀(如copperThickness1oz规则名包含 copper 导致正常违规被忽略) - EDA 工具集:将
rebuildAllCopperPours()/rebuildAllCopperPoursIfEnabled()提取至eda_utils.ts,供多个模块复用
其他
- 更新
DEVELOPER_NOTES.md,补充 DRC API 三级数据结构文档、覆铜过滤策略、陷阱说明 - 清理无用的诊断日志和历史遗留代码
- 新增多条 i18n 翻译(覆铜重铺相关)
1.0.7 (2026-02-09)
核心升级 (线宽过渡偏移 & 快照管理V3 & 设置UI优化)
- 线宽过渡偏移:生成位置是偏向于窄端/宽端可自行在 0-100% 调节
- UI 交互优化:设置界面的卡片现在支持鼠标拖拽排序,并支持记忆排序与折叠状态
- 快照持久化 V3:重构存储底层,从全局单 Key 升级为按 PCB ID 独立存储,彻底解决大型项目中快照丢失的问题
- 数据压缩优化:引入图元数据压缩(使用 sX, sY 等短键名),大幅降低存储空间占用
- 迁移支持:实现从 V2 自动迁移旧快照至 V3 格式
修复
- 修复由于 JSON payload 过大导致
sys_Storage写入静默失败的问题
1.0.6 (2026-02-08)
核心升级
- 将圆角半径设置从固定值改为比率模式
- DRC自动避让使用二分法自动尝试缩小半径避让
- 设置界面添加深色模式,根据系统主题自动切换
- 设置卡片添加折叠效果,怎么折都有...
其他
- 移除单位选择下拉框
- 更新UI描述文本,改进用户体验
- 重新排列设置项顺序(过渡段数)
- 添加保存失败时的用户提示对话框
- 微调README文档,更新设置界面截图
- 为设置窗口添加最小化按钮(折叠按钮)
- 优化扩展关键字
1.0.5 (2026-02-07)
核心升级(DRC)
- 设计规则检查(DRC)设置,包含启用选项
修复
- 修复当选中一条线段时,点击菜单的 圆弧布线(全部)/ 线宽过渡(全部),不会触发进度条的BUG
其他
- 添加 README.en.md
1.0.4 (2026-02-04)
优化
- 设置界面:全新UI布局,独立快照管理卡片;增加自动/手动快照视图切换
- 动画效果:优化刷新按钮交互,文档切换或数据刷新时播放丝滑的旋转动画
核心升级 (快照管理 V2)
- 智能分支:实现Git风格的时间线管理,撤销后产生新变更时自动截断无效的"未来"历史
- 深度去重:引入基于图元ID排序的深度比对算法,彻底解决乱序导致的假性重复快照
- 逻辑修正:修复撤销操作索引计算错误,消除跳过状态的Bug
- 代码重构:清理遗留代码,全面转移在 V2 存储结构
其他
- 更新相关文档、设置界面图片
- 重命名扩展名称:熔化/优化/美化PCB (融化)
1.0.3-rc1 (2026-02-03)
新增
- 扩展名称和描述优化
- 中文翻译表达优化
1.0.2 (2026-02-02)
新增
- 重命名扩展名称:熔化PCB-美化PCB(融化)
- 添加"熔化"和"Melt"关键字
- 更新主页和问题链接
1.0.1 (2026-02-02)
新增
- 设置界面:支持简单的数学表达式运算;支持键盘上下按键、鼠标滚轮调整数值
- 设置界面:添加作者信息
修复
- 快照管理:添加PCB_ID检查,防止恢复错误快照;优化用户撤销体验,保存用户操作前后快照;手动创建快照时不与最新记录的快照重复
- 设置界面:修复JS警告,输入框合法检查
- 代码清洗:移除不必要无用代码,统一日志前缀格式
1.0.0 (2026-02-01)
功能
- 圆滑布线:将直角拐角转换为平滑圆弧
- 线宽过渡:不同线宽间平滑渐变,基于贝塞尔曲线
- 快照管理:一键备份/恢复布线状态
- 撤销支持:操作前自动备份,随时回退
- 设置界面:可配置圆角半径、过渡参数、快照选项等
说明
- 支持选中处理和全局处理两种模式
- 圆弧基于实际圆弧图元,可二次编辑半径
- 线宽过渡智能限制,不超过窄端线长

类型
关键词
扩展信息
| 版本 | v1.0.51 |
| 发布者 | m-RNA |
| 发布时间 | 2026-07-26 01:56:40 |
| 名称 | eext-pcb-beautify |
| UUID | 3911cc55444d4833b5762da1521fe616 |
| 适用EDA版本: | ^3.0.0 |
| 报告 | 报告滥用 |
评论