新手第一次来到 FreeCAD 的时候往往-无从下手,这里就简单介绍一下使用方法。
创建文件
和其他的建模软件一样,新建文件后开始项目的编辑。
参数视图(Part Design)
选择“参数视图”后,就会进入主界面。
应用程序的主窗口大致可以分为11个部分:
- 主视图区域,包含以下的所有界面。可以包含不同的选项卡窗口。
- 界面最顶部,标准菜单。
- 界面顶部,工具栏区域, 1. 文件 2. 工作台选择器,它本身就是一个工具栏 3. 视图 4. 帮助
- 3D视图,通常嵌入主视图区域
- 组合视图 1. 上部,包括树视图和任务面板 2. 下部,包括属性编辑器 3. 选择视图
- 报告视图
- Python控制台
- 状态栏
以草图(Sketcher) 为例
- 草图编辑模式
- 草图几何体
- 草图约束
- 草图工具
- 草图 B 样条工具
- 草图visual
- 草图编辑工具
右侧是工程预览区,左侧是项目区。
有时候你需要在这一步选择 “创建实体”。
创建草图
在工具栏中,选择“创建草图”,然后在预览区选择一个平面,任意一个平面都可以,可以先选择 XZ 平面,等熟悉之后再做抉择。
然后你会看到一个网格图,现在就可以开始正式的创作了。
练习:画一个圆。
在工具栏点击 “通过中心创建圆”(鼠标指针能够捕捉参考线,当鼠标靠近横坐标轴、纵坐标轴或者交叉点的时候,轴颜色变化,并且鼠标指针变化。另外,如果是在参考线上创建的图形,那么图形会被约束到参考线上。)
点击鼠标后可以输入数值或者在合适的位置再次点击回车完成创建,但是,创建 B 样条的时候需要闭合,即首尾需要连接在一起。创建过程中,想要取消,可以点击 ESC 按键。创建完成后(点击 ESC)可以拖动红色的点(控制点)进行修改。
完成后,可以发现这个设计是 2D 的,那么接下来就需要在零件设计(PartDesign)工作台中添加厚度,切换工作台到 “Part Design”,然后在模型窗口中,选中设计的草图(Sketcher),点击“凸台”,设置长度(凸起的高度)。现在就可以看见产品的厚度了。
现在,你就完成了一个基本的立体图形了。
任何一个产品都是由基本的几何体拼接而成,那么如何拼接其他的几何体呢?
- 点击“创建草图”按钮,选择你希望创建新几何体的面,
创建施工图
- 打开 TechDraw,然后点击对应的模型实体,再点击工具栏的插入视图,单击实体,然后点击插入视图,在任务面板中进行调整
装配
一个产品由多个部分组成,这时候就需要装配(Assembly),先创建装配,然后双击装配的节点,接下来点击任何一个实体都会出现移动旋转坐标轴,根据显示进行移动或者旋转即可。
有限元分析
https://forum.freecad.org/viewtopic.php?f=18&t=20499
约束问题
需要自身约束,例如垂直约束、水平约束、定位约束、距离约束,还需要全局坐标中的约束,例如重合约束(Sketcher的点与坐标轴的中心点约束)。
如果重合到了坐标系的原点,可以 ESC 退出后,拖动 Sketch 的点,然后选中两个点进行约束。
创建零件、创建装配和创建实体的区别
简单来说,实体是单个最小几何体,是构成产品的最小单元。零件是多个几何体的组合,装配是零件之间的关系定义
**直接回答:在FreeCAD中,实体(Body)是单一连续几何体,零件(Part)是容纳一个或多个实体的位置/运动容器,装配(Assembly)是约束排列多个零件的结构。**这是三个完全不同的概念层级,绝不能混用。
非常关键的一点:您从搜索结果中看到的所有权威定义都指向同一个结论——绝大多数用户的困惑不是因为操作不熟,而是因为日常口语和软件严格定义严重冲突。下面我用一个类比+三张对照表,帮您彻底理清。
🧠 先建立一个“俄罗斯套娃”式的层级认知
把FreeCAD的建模逻辑想象成真实的机械车间:
| 层级 | 真实车间类比 | FreeCAD对应物 | 核心特征 |
|---|---|---|---|
| 实体(Body) | 一个未被切割加工的铁块 | PartDesign::Body | 单一、连续、不可分离 |
| 零件(Part) | 一个带位置信息的铁块(放在几号工位) | App::Part (Std Part) | 容器、位置、可包含多个铁块 |
| 装配(Assembly) | 把多个铁块用螺丝/滑轨组装起来 | A2plus/Assembly4等 | 约束、自由度、相对关系 |
一句话核心:
实体是“肉”,零件是“筐”,装配是“关系网”。
📋 三大概念详细对比(基于官方文档)
1️⃣ 实体(Body) —— 真正的“几何本身”
| 维度 | 说明 |
|---|---|
| 官方定义 | 用于单个连续的几何元素,通常用Part或PartDesign工作台创建 |
| 物理含义 | 代表一块完整的材料,内部不允许有空隙或分离的部分 |
| 特征行为 | 一个Pad必须挨着上一个Pad,凹坑必须在同一个Body内开孔——模拟一整块材料被加工 |
| 典型错误 | 试图用同一个Body做一把椅子的四条腿 + 椅面 → ❌ 非法,因为四个腿是分离的 |
| 模型树表现 | 最后一个特征是高亮,前面的特征是灰色——代表当前加工状态 |
✅ 您什么时候应该用实体(Body):
- 您在设计一个不能被拆开的单一零件(一个法兰盘、一根轴、一个外壳)
- 您在使用PartDesign工作台画草图、拉伸、开孔
2️⃣ 零件(Part) —— 真正的“位置/运动容器”
| 维度 | 说明 |
|---|---|
| 官方定义 | App::Part类,由基础系统定义,不依赖特定工作台 |
| 本质身份 | 一个容器对象,用来管理3D形状的位置以构建机械装配 |
| 核心能力 | 可以容纳单个Body,也可以容纳多个Body |
| 几何所有权 | 零件自身没有几何形状,它的“形状”是它包含的所有Body的形状的集合 |
| 位置独立性 | Part内的Body可以在空间上完全分开,不要求连续 |
| 创建方式 | 任何工作台的结构工具栏 → 点击Std Part按钮 |
✅ 您什么时候应该用零件(Part):
- 您需要把多个分离的Body打包成一个逻辑单元(一把椅子:坐垫Body + 四条腿Body ×4)
- 您需要整体移动一组物体(移动Part,里面的所有Body一起动)
- 您准备做装配了(因为装配工作台要求导入的是Part)
3️⃣ 装配(Assembly) —— 真正的“约束关系网”
| 维度 | 说明 |
|---|---|
| 官方定义 | 以某种方式排列起来的Part集合,可以是手动排列,也可以用装配工作台 |
| 本质身份 | 一个记录了Part之间相对关系的结构,不是单纯把零件堆在一起 |
| 实现方式 | A2plus/Assembly4/内置Assembly等多种实现,原理各不相同 |
| 核心操作 | 添加约束:点重合、轴对齐、面对齐、角度等 |
| 关键区别 | 单纯把多个Part放进一个文件 ≠ 装配。没有约束,就不是装配。 |
| 子装配 | 装配体可以包含其他装配体,形成任意层次的嵌套 |
✅ 您什么时候应该用装配(Assembly):
- 您需要定义零件A的孔对齐零件B的轴
- 您需要模拟运动机构(滑块在导轨上滑动、齿轮啮合)
- 您需要生成零件清单(BOM)(A2plus有这个功能)
⚠️ 90%的用户都会踩的“术语陷阱”
您的日常口语经常这样讲,但在FreeCAD里全是错的:
| 您口头说的 | 您实际指的东西 | FreeCAD的正确称呼 | 为什么是错的 |
|---|---|---|---|
| “我建了一个零件” | 画了个立方体 | 实体(Body) 或 特征(Feature) | Part是容器,不是几何体 |
| “把这个零件装配进去” | 导入了一个文件 | 把Part(容器)导入Assembly | 您导入的必须是Part,不是裸Body |
| “这是一个装配文件” | 放了几个Body在一个文档里 | 只是一堆未约束的物体 | 没有约束关系 = 不是装配 |
最致命的一个误区:
Std Part(零件)根本不是您以为的“零件”,它是一个“包装盒”。
您以为的“零件”(那个螺栓、那个螺母)在FreeCAD里叫Body(实体)。
📌 结论:三种操作的根本区别
| 操作 | 您到底在做什么 | 后果/用途 |
|---|---|---|
| 创建实体(Body) | 进入PartDesign,开始堆特征 | 得到一个有几何形状但无独立定位能力的连续体 |
| 创建零件(Part) | 点击Std Part按钮,得到一个空容器 | 得到一个无几何形状但有定位能力的容器,可放入Body |
| 创建装配(Assembly) | 切换到A2plus/Assembly4,开始加约束 | 得到一个记录了零件间相对运动关系的结构 |

