C# 可实现的 EDA2D/PCB 几何 & 版图全套算法
向田欢 发布于 阅读:49
EDA2D 几何引擎全套算法清单(C# 工业实现版)
一、2D 基础几何算法(底层必备)
- 点、线段、圆弧、多边形、多轮廓带孔洞数据结构
- 点在线上、点在多边形内、线段相交检测
- 线段 / 圆弧求交、最近距离、投影点计算
- 轮廓顶点去重、冗余点精简、轮廓闭合修复
- 折线拟合圆弧、圆弧离散折线、精度归一化
- 高精度浮点容错、容差阈值几何判定
二、核心几何运算算法
多边形布尔运算
- 并集、交集、差集、异或
- 多轮廓批量布尔、带孔洞布尔运算
轮廓偏移(等距扩缩)
- 向内偏移、向外偏移、全局偏移
- 局部倒角 / 圆角偏移、自相交修复
裁剪 / 分割 / 掩膜
- 矩形裁剪、多边形互裁
- 按禁布区裁剪、轮廓分割成子区域
轮廓合并与拆分
- 相邻轮廓融合、孤岛分离
- 内外环区分、孔洞提取
三、PCB 铺铜 专用算法(C# 常用)
- 多边形灌铜、网格铺铜、实心铺铜
- 铺铜孤岛剔除、死铜移除、回流路径优化
- 铺铜自动避让焊盘 / 走线 / 过孔
- 铺铜边界平滑、尖角优化、自动补洞
四、DRC 设计规则检查算法
- 线宽检查、线距安全间距检查
- 焊盘与走线、过孔与铜皮间距校验
- 禁入区检测、短路 / 开路检测
- 违规区域坐标定位、高亮轮廓生成
五、Gerber / GDSII 解析与可视化算法
- Gerber RS274X 文件解析、图层分离、光圈解析
- 轨迹转多边形、Flash 焊盘生成、图层合并
- Gerber 矢量渲染、缩放平移、分层可视化
- GDSII 二进制解析、层级展开、版图平铺、多边形提取
六、自动布线 & 路径算法
- 曼哈顿自动布线、绕障寻路
- A* 寻路、多障碍避障路径规划
- 走线最短路径、角度约束(45°/90°)布线
- 路径平滑、拐角优化、走线推挤
七、工业激光 / 数控 图形算法
- 激光切割轮廓预处理、去重去小碎片
- 切割路径排序、空行程优化、套料排版
- 图形偏移补偿、刀口补偿、尖角圆角过渡
- 数控图形分层、轮廓拆分导出 NC 路径
八、辅助实用算法
- 包围盒 AABB/OBB 碰撞检测、空间索引
- 多边形面积、周长、重心计算
- 轮廓旋转、平移、镜像、缩放变换
- 批量拓扑规整、几何容差统一