LibreCAD
CAD · 二维绘图 · 工程图
开源二维 CAD,画平面图、零件轮廓。
正在打开工具详情…
开源参数化三维 CAD,适合零件和简单装配。
要参数化零件、出工程图,没有 SolidWorks / Fusion 许可。
只做影视级造型渲染,Blender 更合适;只画 2D 看 LibreCAD。
FreeCAD 是开源的参数化三维 CAD,用来画零件、做简单装配并导出工程图。它解决的是「只需要画几个能加工的零件,没必要买一套商业 CAD」。
参数化是它的工作方式:草图上标注尺寸,后面改尺寸会驱动整个模型更新;工作台按用途划分(零件、草图、装配、路径、有限元等),可以只装常用的几个。代价要提前知道:装配与工程图环节不如商业套件顺手,复杂模型容易出现拓扑命名问题导致报错,界面与术语沿用传统 CAD 概念,第一次上手需要跟着教程走一遍。
项目以 LGPL 许可开源,安装包从 freecad.org 发布,Windows、macOS、Linux 都有,稳定版与开发版分开提供。
优先用上面列出的官方渠道。镜像里的安装包可对照下方 SHA-256 自行核验; 不要下载「绿色版」或被修改过的包。
上手步骤之外的具体做法:常见场景怎么配、命令怎么写、报错怎么处理。
从 Part 与 PartDesign 两套工作台的分工讲起,讲到布尔运算的失败排查、参数化约束怎么用,以及 FreeCADCAD 与 STEP/IGES 的导出取舍。
FreeCAD 最容易让新手迷糊的地方是它有多套并行的工作台,不是「一个软件加插件」的结构。核心区分:
| 工作台 | 建模方式 | 适合 |
|---|---|---|
| Part | 直接对实体做布尔、加减 | 一次性零件、导入的形状处理 |
| PartDesign | 草图 + 特征,特征按顺序叠加 | 需要参数化、可反复改尺寸的零件 |
| Draft | 二维线框工具 | 画草图轮廓、简单线条 |
| Sketcher | 参数化草图编辑器 | 带尺寸约束的精确轮廓 |
选错工作台的典型症状:用 Part 手动画了 20 个实体,改尺寸时得一个个重做;正确做法是 PartDesign 里画一个带约束的草图,加一个 Pad(拉伸),改草图约束整个模型就跟着变。
易错点:PartDesign 的实体必须连续相接才能合并。新加的特征如果和已有实体没接触,Pad 会长成一个悬空实体并报 warning。
PartDesign 的价值全在草图。画草图时不要靠鼠标点位置,要加约束:
约束加对了,改一个半径就整个模型联动。约束没加,就会出现「孔跑到板子外面了」这种问题。
Cut / Fusion / Common 之后的形状不对,是 FreeCAD 里最耗时的排查。常见原因与对策:
Sketcher 检查草图闭合。Part 菜单里的 Part - Shape 工具检查实体数量。排查手段是直接选中失败的布尔特征按 Edit 回退到出错的那一步,改完再重做。开启 偏好设置 - Part/PartDesign - 高亮 系列选项后,出错的边会以红色标出。
File - Export 里的格式各有用途,选错会导致下游打不开:
| 格式 | 特征 | 用于 |
|---|---|---|
| STEP | 国际标准,保留 B-Rep 精确曲面 | 对外交付、导入 CAD/CAM |
| IGES | 老标准,只传多面体近似 | 老系统兼容 |
| STL | 三角网格,丢失参数与精度 | 3D 打印 |
| BREP | FreeCAD 原生,完整保留 | 存档、再打开继续编辑 |
给 3D 打印用 STL 时,Mesh - Export 里可以调网格偏差(deviation),偏差越小面数越多。曲面区域偏差别超过 0.1mm,否则打印出来会有可见的棱。
FreeCAD 的命令行和 FreeCADCmd 支持纯脚本批处理,适合参数化出图:
python# 建一个 60x40x5 的板子,四个 M3 通孔
import Part, FreeCAD as App
# ----
box = Part.makeBox(60, 40, 5)
for x in (5, 55):
for y in (5, 35):
hole = Part.makeCylinder(1.7, 6, App.Vector(x, y, -0.5))
box = box.cut(hole)
# ----
doc = App.newDocument("plate")
obj = doc.addObject("Part::Feature", "plate")
obj.Shape = box
doc.recompute()
doc.saveAs("plate.step")无界面运行:FreeCADCmd script.py。批量生成标准件库时比在界面里点快几个数量级。