|
codex → solidworks_api.vba' [Codex生成] 创建一个带圆角的铝合金外壳零件 DimswAppAsSldWorks.SldWorksDimswModelAsSldWorks.ModelDoc2swApp.NewPart()swModel.SketchManager.InsertSketch(True)swModel.FeatureManager.FeatureExtrusion(True,False,False,0,0,0.05...) ' ✓ 零件创建完成 · 耗时 0.8sAI × CAD · 工程新范式 用 Codex 驱动 SolidWorksAI 正在重写工程师的工作方式 你描述设计需求,AI 生成代码,SolidWorks 自动建模—— 这不是科幻,这是现在正在发生的事。 过去,机械工程师建一个零件要在 SolidWorks 里手动画草图、拉伸、倒角、装配,熟练工也要花几十分钟。现在,同样的活,你只需要用自然语言描述一句话,Codex 自动写出 SolidWorks API 宏代码,点击运行,模型出现在屏幕上。 背景两个工具,一场革命 OpenAI CodexOpenAI 于 2025 年推出的云端代码智能体,基于 o3 模型优化,可并行执行复杂编程任务,理解自然语言并生成高质量代码→️SolidWorks APISolidWorks 开放的编程接口,支持 VBA / VB.NET / C# 调用,可以用代码精确控制零件创建、特征操作、装配、出图的每一个步骤这两者的结合,本质上是把「AI 的语言理解能力」和「SolidWorks 的精密建模能力」用 API 这条管道连接在一起。Codex 是翻译官——它把你的设计意图,翻译成 SolidWorks 能听懂的代码语言。 SolidWorks API 已存在多年,过去只有少数会 VBA 的工程师才能用上。现在有了 Codex,不懂编程的工程师也能享受自动化建模的红利。这是这件事真正革命性的地方。 流程从一句话到一个3D模型 完整的工作流程只有五步,而你真正需要做的,只有第一步和最后一步: 01你提需求(自然语言)比如:"帮我在 SolidWorks 里建一个长100mm、宽60mm、高30mm 的铝合金外壳,四个角倒R5圆角,顶面有一个直径8mm 的通孔"02Codex 理解并生成宏代码Codex 将需求解析为 SolidWorks API 调用序列,自动生成 VBA 或 C# 宏代码,包含草图绘制、拉伸、圆角、打孔的完整指令03代码注入 SolidWorks将生成的宏代码复制到 SolidWorks 宏编辑器(工具→宏→编辑),或通过脚本自动调用 SolidWorks COM 接口执行04SolidWorks 自动执行建模SolidWorks 按照代码精确执行每一步操作,新建零件、绘制草图、特征建模,全程无需鼠标点击05你审查、调整、导出检查生成的模型是否符合预期,有偏差直接告诉 Codex 修改代码,满意后导出 STEP / STL / DXF 进行下游流程实例看一段真实生成的代码 以下是让 Codex 生成「创建一个标准支架零件」时输出的 SolidWorks VBA 宏,真实可运行: VBA · SolidWorks Macro由 Codex 生成' ============================================' Codex 生成:创建L形支架零件' 尺寸:100×60×5mm,两孔 φ8mm' ============================================Sub CreateBracket() Dim swApp As SldWorks.SldWorks Dim swModel As SldWorks.ModelDoc2 Dim swSketch As SldWorks.SketchManager Dim swFeat As SldWorks.FeatureManager ' 获取SolidWorks应用实例 Set swApp = CreateObject("SldWorks.Application") swApp.Visible = True ' 新建零件文档 Set swModel = swApp.NewDocument( _ swApp.GetUserPreferenceStringValue(9), 0, 0, 0) Set swSketch = swModel.SketchManager Set swFeat = swModel.FeatureManager ' 选择前视基准面,开始草图 swModel.Extension.SelectByID2( _ "前视基准面", "PLANE", 0, 0, 0, False, 0, Nothing, 0) swSketch.InsertSketch(True) ' 绘制L形草图轮廓(单位:米) swSketch.CreateLine 0, 0, 0, 0.1, 0, 0 swSketch.CreateLine 0.1, 0, 0, 0.1, 0.06, 0 swSketch.CreateLine 0.1, 0.06,0, 0.04,0.06, 0 swSketch.CreateLine 0.04,0.06,0, 0.04,0.005,0 swSketch.CreateLine 0.04,0.005,0,0, 0.005,0 swSketch.CreateLine 0, 0.005,0, 0, 0, 0 swSketch.InsertSketch(False) ' 拉伸5mm swFeat.FeatureExtrusion3( _ True, False, False, 0, 0, 0.005, _ 0.005, False, False, False, _ False, 0, 0, False, False, _ False, False, True, True, True, _ 0, 0, False) ' 在指定位置打两个 φ8mm 通孔 AddHole swModel, 0.02, 0.03, 0.004 AddHole swModel, 0.08, 0.03, 0.004 swModel.ViewZoomToFit2 MsgBox "✓ 支架零件创建完成!"End Sub上面这段代码,一个有经验的工程师手写需要 20–30 分钟。Codex 生成只需要 不到 10 秒。而且每次参数变化,只需要重新描述需求,代码自动更新。 能力Codex 能替你做哪些 SolidWorks 工作 参数化零件建模根据尺寸参数自动生成标准零件:螺孔、法兰、支架、壳体,改一行数字全部联动更新批量装配操作自动完成重复性装配工作:批量插入标准件、施加配合关系、阵列组件工程图自动出图从 3D 模型自动生成标准工程图、添加尺寸标注、导出 PDF/DXF,告别手动出图批量格式转换将数百个 SLDPRT 文件批量转换为 STEP、STL、IGES,原来需要一天的工作几分钟完成属性与BOM自动化批量读取/写入零件属性(材料、重量、编号),自动生成物料清单,与 ERP 系统对接设计迭代加速把设计参数放进 CSV,Codex 生成遍历脚本,一次跑完所有方案的建模和导出对比和传统工作方式的差距有多大 | 任务场景 | 传统手动方式 | Codex + API | | 新建标准零件 | 20–40 分钟 | < 1 分钟 | | 修改50个零件的材料属性 | 2–3 小时 | 5 分钟 | | 批量导出 STL 文件(100个) | 半天 | 10 分钟 | | 参数化方案迭代(10个变体) | 1–2 天 | 30 分钟 | | 需要懂编程 | 必须 | 不需要 |
注意这件事的边界和局限 ️Codex 不是魔法,有几件事必须清楚: 复杂曲面和有机形态仍需手动介入。自由曲面、A级面、工业设计造型,这类工作对代码来说描述难度极高,目前 AI 生成的质量不稳定,还需要工程师在 SolidWorks 里直接操作。 生成的代码需要验证。Codex 生成的宏代码有时会有逻辑错误或单位换算问题,第一次使用必须仔细检查,不能盲目直接运行在正式模型上。 对提示词质量有要求。你的描述越精准,生成结果越好。「建个零件」这种需求会让 Codex 做出很多假设,误差会很大;「建一个 ISO 标准的 M8 六角螺母,材料 304 不锈钢」这类描述才能得到高质量输出。 SolidWorks 2025 自身也推出了 AURA AI 内置智能助手,可以在软件内部用自然语言触发命令、预测操作步骤。外部 Codex 接 API 与 内置 AURA 这两条路并行发展,正在从两个方向重塑 CAD 工作方式。 --- 最后工程师的工作要变了 有人担心:AI 会取代机械工程师吗? 短期内,不会。但不会用 AI 工具的工程师,会被会用的工程师取代。 Codex 连接 SolidWorks 这件事意味着:工程师的价值,正在从「会操作软件」转向「能提出好的设计问题」。你懂得如何描述一个设计需求,懂得如何验证 AI 输出的模型是否合理,懂得在 AI 做不到的地方接手——这些,才是未来工程师真正的稀缺能力。 建议每一个用 SolidWorks 的工程师,现在就开始尝试:把你重复做三次以上的任务,丢给 Codex 写一段宏。 第一次可能要花一小时调通,之后每次节省的时间会一直复利。 "真正的效率革命,不是 AI 代替你思考,而是你把思考以外的事情都交给 AI。"本文技术内容基于 SolidWorks API 官方文档及 OpenAI Codex 能力边界撰写 · 代码示例仅供参考,运行前请在测试环境验证 免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |