SolidWorks
SolidWorks 是一款参数化三维 CAD(Computer-Aided Design) 软件, 主要用于:
- 机械零件建模: 螺丝座、支架、外壳、机加工件、钣金件
- 装配设计: 把多个零件按约束装起来,检查干涉、运动
- 工程图: 自动生成三视图、尺寸、公差、BOM
核心优势: 你做的每一步都有参数和历史记录, 后续能改尺寸, 改结构, 模型会跟着更新
从计算机科学和几何学的底层来看, SolidWorks 是一个基于特征 (Feature-Based) 的参数化 (Parametric) 实体建模 (Solid Modeling) 数据库
- 实体 (Solid): 它模拟的物体是实心的, 有密度, 有体积, 有质量, 符合物理世界的拓扑结构
- 参数化 (Parametric): 物体的形状由数字和关系驱动. 修改数字, 形状自动改变
- 基于特征 (Feature-Based): 它不是像捏泥巴一样随意变形, 而是由一个个有逻辑的操作步骤 (如拉伸,旋转,切除) 叠加而成的
边界条件 (什么情况不要用)
- CG 动画/游戏角色:如果你要捏一个怪兽或者美女,请用 Maya 或 Blender。因为 SW 是基于数学参数的,难以处理随意的、艺术性的有机曲面。
- 建筑设计:如果你要盖楼,请用 Revit 或 SketchUp。SW 对于处理几公里的地形和成千上万个重复的建筑构件效率极低。
- 高度复杂的艺术曲面:如复杂的跑车外壳(A 级曲面),虽然 SW 能做,但 Rhino 或 Alias 会更顺手。
给新手的建议
- 学习 SolidWorks,本质上是在学习如何用严谨的逻辑描述形状。
- 忘掉绘画,建立“草图 + 特征”的堆叠思维。
- 死磕“完全定义”,养成把每一条草图线都变成黑色的强迫症,这是专业与业余的分水岭。
- 理解“父子关系”,如果你在第一步的草图上删了一条线,后面基于这条线建立的特征就会报错。理解这种逻辑依赖,你就能看懂报错信息。
概念
参数化 (Parametric)
你画的每个尺寸 (长宽孔径) 都可以以后改, 模型会自动重建. 所以 SolidWorks 的思路不是 ” 雕塑式随便捏 ”, 而是 ” 有逻辑地构建 “
特征 (Feature)
你做模型的每一步
例如: 拉伸、切除、倒角、圆角、孔向导、阵列 等 左侧的 ” 特征树 ” 就是历史记录
草图 (Sketch)
2D 轮廓, 是特征的输入
大多数实体特征都从草图开始:
- 拉伸凸台: 草图 → 变成立体
- 拉伸切除: 草图 → 挖掉材料
约束 (Relations) + 尺寸 (Dimensions)
这俩共同决定草图的 ” 可控性 ”
- 约束: 水平、垂直、同心、重合等
- 尺寸: 数值控制 (长度、角度、半径) 目标: 让草图变成 完全定义 (Fully Defined)
基准 (Datum)
基准面 / 基准轴 / 基准点
三大基准面: Front / Top / Right 建模要学会 ” 先选对基准面 ”, 这决定你的零件方向与后续装配方便程序
参考几何 (Reference Geometry)
比如: 基准面偏置、通过三点建面、基准轴等 很多复杂结构不是靠 ” 硬画 ”, 而是靠 ” 建立正确参考 “
设计意图 (Design Intent)
要让模型 ” 以后改起来合理 ”, 例如:
- 孔永远在中心 → 用对称约束或中面拉伸
- 壁厚保持一致 → 用壳(Shell)
- 改一个尺寸,相关结构跟随 → 用方程/关联尺寸
三个工作对象
- Part (零件): 单个实体
- Assembly (装配): 多个零件配合
- Drawing (工程图): 2D 出图, 标注尺寸, BOM
对比同类软件
对比 AutoCAD
| AutoCAD | SolidWorks | |
|---|---|---|
| 本质 | 对纸和笔的模拟 | 对物理世界的模拟 |
| 底层数据 | 记录的是线条的集合 当你画一个圆, 计算机记录的是 ” 这里有个圆, 半径 5” | 记录的是特征和参数. 当你画一个圆, 计算机记录 ” 这是一个实体圆柱,它是铁做的, 重量是 X” |
| 逻辑 | 它不管这个圆是一个孔, 还是一根轴的界面. 它没有 ” 实体 ” 概念, 只有 ” 图形 ” 概念 | 具备 ” 拓扑关系 “. 它知道面和面是连在一起的, 零件和零件之间是有装配关系的 |
| 非参化: 你改动一根线, 另一条连接的线不会自动跟着变, 除非你手动去修剪或延伸 | 全参化: 你改动一个尺寸, 整个模型、装配关系、工程图纸全部自动更新 |
三个维度对比
| 维度 | AutoCAD | SolidWorks |
|---|---|---|
| 思维方式 | 做加法:需要在脑海中构建三维结构,然后在平面上分别绘制其投影(三视图)。大脑作为 3D 处理器,软件仅负责记录。 | 做减法:直接在软件中创建三维物体,软件自动生成三视图。软件作为 3D 处理器,大脑只需关注设计意图。 |
| 修改与迭代 | 修改需在各个视图中手动调整对应线条,例如将机器加宽 10mm 时,需分别修改主视图、俯视图和左视图的相关线条,容易遗漏导致错误。 | 通过修改参数(如将宽度从 100 改为 110)直接更新模型,所有相关图纸自动同步修改,高效且准确。 |
| 数据关联性 | 各个视图之间相互独立,缺乏关联。设计完成后若零件存在干涉(如装配冲突),软件无法自动检测,可能导致制造时才发现错误。 | 零件、装配体和工程图三位一体,高度关联。在装配体中检测到干涉可直接修改,零件图和工程图自动同步更新,提前排除物理错误。 |
各自应用场景
虽然 SolidWorks 看起来更高级,但 AutoCAD 依然不可被替代。为什么?因为有些领域不需要“物理实体”,只需要“平面布局”。
| AutoCAD | SolidWorks | |
|---|---|---|
| 核心领域 | 建筑、土木、工厂布局、电气原理 | 机械设计、产品设计、模具、钣金 |
| 典型任务 | 画户型图、施工平面图、电路图 | 设计汽车发动机、鼠标外壳、机器人手臂 |
| 关注点 | 位置与符号(东西放在哪里?) | 结构与功能(东西长什么样?怎么动?) |
| 文件交互 | .dwg / .dxf(二维数据交换的标准) | .step / .igs(三维数据交换的标准) |
| 优势 | 处理极大规模的 2D 图纸速度快(如整个机场的图纸) | 能够进行仿真、计算重量、干涉检查 |
| 劣势 | 画 3D 非常痛苦,修改极其繁琐 | 画简单的 2D 示意图往往“杀鸡用牛刀” |
对比 Blender
| SolidWorks | Blender | |
|---|---|---|
| 底层数学 | NURBS (非均匀有理 B 样条):记录几何形状的数学公式(如圆的方程),无论放大多少倍都保持绝对光滑,没有棱角。 | Mesh (多边形网格):记录由大量小三角形或四边形面片组成的近似形状,无限放大时会看到棱角(除非开启细分曲面)。 |
| 第一性原理 | 以“制造”为中心 (Manufacturability):核心逻辑是尺寸驱动和几何约束,保证模型为“水密”(无漏洞)、尺寸精确(误差达微米级),面向实际生产。 | 以“视觉”为中心 (Visual Appeal):核心逻辑是顶点操作和视觉欺骗,不在乎模型实际尺寸,只关注在摄像机镜头中的视觉效果是否逼真。 |
| 思维方式 | “这是多少毫米?孔与孔的距离是多少?生产出来能否装配?”——强调精确尺寸、可制造性与装配性。 | “这个光影好不好看?皮肤褶皱是否自然?动作是否流畅?”——注重艺术表现、视觉效果和动画流畅度。 |
| 修改逻辑 | 参数化修改:通过修改历史树中的参数(如尺寸数值)驱动模型重新计算,实现精确控制与关联更新。 | 直观造型:像捏泥巴一样直接拉扯模型的点、线、面进行编辑,强调直观、灵活的手工调整。 |
深度对比:左脑 vs 右脑
| 维度 | SolidWorks (左脑/理性) | Blender (右脑/感性) |
|---|---|---|
| 主要操作对象 | 特征 (Feature):孔、凸台、倒角 | 顶点 (Vertex):点、线、面、纹理 |
| 对于“圆”的定义 | 一个圆心坐标 + 半径数值(绝对完美) | 一圈 32 个点连成的多边形(看起来像圆) |
| 对于“公差” | 极其敏感(0.01mm 的干涉都不行) | 不在乎(模型穿插没关系,只要渲染图看不出来) |
| 工作流 | 草图 → 约束 → 特征 → 装配 | 建模 → 雕刻 → 展 UV → 贴图 → 绑定 → 动画 |
| 输出产物 | 工程图、BOM 表、STL/STEP 制造文件 | 效果图、动画视频、游戏资产 (.fbx/.obj) |
| 致命弱点 | 做不规则的有机形态(如:人脸、衣服皱褶、破碎的石头) | 做精确的机械配合(如:齿轮啮合、手机内部卡扣) |
适用场景
- SolidWorks: 凡是需要 ” 造 ” 出来的
- 工业产品, 机械设备, 家具设计等
- 一句话: 把图纸发给工厂, 让数控机床,注塑机或 3D 打印把它生产出来, 首选 solidworks
- Blender: 凡是需要 ” 看 ” 的
- 游戏开发, 影视特效, 广告渲染等
- 一句话: 做一个酷炫的视频, 一张逼真的海报, 或者一个放入游戏引擎的模型