
Mirage Flow 在SolidWorks设计中的应用基于自然语言的零件参数化建模辅助作为一名和三维设计软件打了十几年交道的工程师我深知在SolidWorks里画图尤其是重复性、参数化的建模工作有多耗时。从构思草图到完成特征每一步都需要精准的鼠标点击和参数输入。有没有一种可能我们只需要像说话一样描述想要的零件就能自动生成建模代码呢这正是Mirage Flow带来的新思路。它就像一个能听懂工程师“行话”的智能助手你把“一个带法兰的轴长度200mm法兰直径80mm上有6个均布螺栓孔”这样的描述丢给它它就能理解你的意图并生成对应的SolidWorks VBA宏代码。这不仅仅是简单的命令翻译而是对设计意图的解析和自动化实现能让我们从繁琐的重复操作中解放出来把更多精力放在创意和方案优化上。接下来我就结合几个具体场景带你看看它是如何工作的。1. 从语言到模型Mirage Flow如何理解设计意图要让机器理解“带法兰的轴”这种描述听起来有点科幻但Mirage Flow的运作逻辑其实很清晰。它并不是直接操作SolidWorks软件而是扮演了一个“高级翻译官”和“代码生成器”的角色。1.1 核心工作原理解析与映射整个过程可以拆解为三步。第一步是自然语言解析。当你输入一段描述时Mirage Flow会先识别其中的关键实体如“轴”、“法兰”和属性参数如“长度200mm”、“直径80mm”。它需要理解“均布”意味着圆周阵列“螺栓孔”是切除特征。这一步的核心是把模糊的人类语言转化为结构化的设计要素。第二步是设计逻辑重建。这是最关键的一步。Mirage Flow需要根据机械设计的常识和SolidWorks的建模逻辑规划出创建这个零件的步骤顺序。例如它得知道应该先拉伸生成轴体再添加法兰凸台最后打孔。这个顺序如果错了生成的代码可能就无法运行或得不到正确模型。第三步是API代码生成。在理解了“做什么”和“怎么做”之后Mirage Flow会调用其内置的SolidWorks API知识库将每一步操作转化为具体的VBA代码。比如“拉伸”对应Part.Extrude2方法“打孔”对应FeatureManager.HoleWizard方法并将你提供的参数200mm, 80mm填充到对应的变量中。1.2 它能处理什么样的描述并不是所有天马行空的描述都能被完美处理。根据我的尝试遵循一些简单的规则能大幅提高成功率结构清晰最好按“主体特征 - 附加特征 - 细节特征”的顺序描述。例如“一个长方体底板上面立着一个圆柱圆柱顶部有一个通孔”就比杂乱地描述所有特征要好。参数明确尽量给出具体的数值和单位。说“一个长100mm宽50mm的板”比说“一块板”要好得多。Mirage Flow通常能识别常见的工程单位mm, cm, in。使用常见术语使用“拉伸”、“旋转”、“切除”、“倒角”、“阵列”等SolidWorks和机械设计中的通用术语它更容易理解。一次聚焦一个零件目前更适合用于生成单个、相对标准化的零件代码对于复杂的装配体关系描述挑战会大很多。2. 实战演练让Mirage Flow帮你画一个法兰轴光说不练假把式我们直接用一个完整的例子看看如何从一句话描述得到可运行的SolidWorks宏代码。我们的目标是创建文章开头提到的那个零件一个带法兰的轴长度200mm法兰直径80mm厚度10mm法兰上带有6个均布的M8通孔。2.1 第一步向Mirage Flow描述你的设计你可以这样输入描述尽量涵盖所有关键信息“创建一个零件。首先在右视基准面上绘制一个直径30mm的圆以其圆心为原点向前拉伸200mm生成轴体。然后在轴体的一端拉伸的起始面或结束面创建一个直径80mm、厚度10mm的法兰盘。最后在该法兰盘上以直径60mm的圆周均布创建6个M8的通孔。”这段描述比最初的更结构化明确了草图平面、特征顺序和定位关系Mirage Flow解析起来会更准确。2.2 第二步解析生成的VBA代码框架Mirage Flow会根据你的描述生成一段VBA代码框架。下面是一个高度简化和注释后的示例展示了核心逻辑Option Explicit Sub CreateFlangedShaft() Dim swApp As SldWorks.SldWorks Dim swModel As SldWorks.ModelDoc2 Dim boolstatus As Boolean Dim longstatus As Long 连接到SolidWorks实例或启动新实例 Set swApp Application.SldWorks Set swModel swApp.ActiveDoc 如果当前没有打开零件文档则新建一个 If swModel Is Nothing Then Set swModel swApp.NewDocument(C:\ProgramData\SolidWorks\SOLIDWORKS [版本]\templates\零件.prtdot, 0, 0, 0) End If swModel.ViewDisplayWireframe 切换到线框模式便于观看 --- 1. 创建轴体 --- boolstatus swModel.Extension.SelectByID2(前视基准面, PLANE, 0, 0, 0, False, 0, Nothing, 0) swModel.SketchManager.InsertSketch True 在前视基准面插入草图 绘制直径为30mm的圆此处应为API绘制圆的具体代码如CreateCircle ... swModel.ClearSelection2 True 拉伸200mm boolstatus swModel.FeatureManager.FeatureExtrusion2(True, False, False, 0, 0, 0.2, 0.01, False, False, False, False, 0, 0, False, False, False, False, True, True, True, 0, 0, False) 0.2米 200mm --- 2. 创建法兰盘 --- 选择轴体的一端面 boolstatus swModel.Extension.SelectByID2(拉伸1零件1, FACE, 0, 0, 0, False, 0, Nothing, 0) swModel.SketchManager.InsertSketch True 绘制直径为80mm的圆 ... swModel.ClearSelection2 True 拉伸10mm boolstatus swModel.FeatureManager.FeatureExtrusion2(True, False, False, 0, 0, 0.01, 0.01, False, False, False, False, 0, 0, False, False, False, False, True, True, True, 0, 0, False) 0.01米 10mm --- 3. 创建均布螺栓孔 --- 选择法兰端面 boolstatus swModel.Extension.SelectByID2(拉伸2零件1, FACE, 0, 0, 0, False, 0, Nothing, 0) 调用孔向导创建M8通孔此处为简化示意实际需配置孔规格 longstatus swModel.FeatureManager.HoleWizard(swWzdCounterBore, swStandardISO, Hex Bolt, M8, swEndCondThroughAll, 0.008, 0.01, 0, 0, 0, 0, 0, 0, 0, 0, False, False) ... 创建圆周阵列数量6直径60mm boolstatus swModel.FeatureManager.FeatureCircularPattern(6, 0.06, True, , True, False) 0.06米 60mm swModel.ViewDisplayShaded 切换回着色模式 MsgBox 法兰轴创建完成 End Sub请注意上面这段代码是一个逻辑框架示意。Mirage Flow实际生成的代码会更完整包含具体的草图绘制API如CreateCircle、完整的特征参数以及错误处理。你需要将其复制到SolidWorks的宏编辑器工具 - 宏 - 新建/编辑中并根据生成的完整代码或SolidWorks API手册进行微调如补全草图绘制命令。2.3 第三步在SolidWorks中运行与调整创建宏在SolidWorks中按AltF8或通过菜单打开宏编辑器新建一个宏模块。粘贴代码将Mirage Flow生成并经过你检查的完整代码粘贴进去。运行测试点击运行。第一次运行时很可能会因为某些API参数不匹配或草图引用问题而报错或中断。迭代调试这正是工程师的价值所在。根据错误提示检查代码中的面选择、草图定义或特征参数。你可能需要调整面或边的选择逻辑SelectByID2。修正草图绘制坐标确保几何关系正确。确认特征参数如拉伸深度、阵列直径的单位和数值。添加必要的swModel.EditRebuild3来重建模型。这个过程看似多了调试步骤但其价值在于Mirage Flow已经完成了从无到有搭建代码骨架这个最耗时、最需要知识储备的工作。你只需要进行“精装修”效率提升是显而易见的。3. 拓展应用场景不止于简单零件生成一个法兰轴的代码只是开始。Mirage Flow在机械设计流程中还有更多可以发挥价值的场景。3.1 设计变更与参数化驱动当设计方案修改时传统方法是手动打开特征树逐个修改参数。利用Mirage Flow你可以直接描述变更需求。例如将之前的描述改为“…法兰直径改为100mm螺栓孔改为8个均布…”让它生成新的代码或者修改原代码中的关键变量。这为快速进行设计迭代和方案对比提供了新工具。3.2 创建标准件/常用件库很多公司有自己的非标标准件库。你可以用Mirage Flow为一系列常用的垫片、接头、支架等编写参数化生成宏。未来只需输入关键尺寸如“生成一个外径50内径22厚度3的平垫圈”就能瞬间得到模型无需从零画起或费力查找图库。3.3 辅助设计文档与说明生成除了生成建模代码Mirage Flow强大的语言理解能力也可以反向工作。你可以让它分析一段简单的VBA代码或描述一个建模步骤然后生成对应的、易于阅读的设计步骤说明或操作手册片段这对于团队知识沉淀和新手培训很有帮助。4. 当前局限与最佳实践建议当然这项技术还在发展初期并非万能。了解它的边界才能更好地利用它。复杂逻辑与判断对于需要复杂条件判断、循环或引用其他零件几何关系的操作如复杂的曲面建模、自顶向下设计中的关联参考目前处理起来比较困难。代码的精确性生成的代码是“可用”的起点但往往不是“完美”的终点。它可能缺少详尽的错误处理或某些API调用方式不是最优解需要工程师进行审查和优化。对描述的依赖性输出的质量高度依赖于输入描述的准确性和清晰度。模糊的描述会导致错误的代码。基于这些我的使用建议是从简单到复杂先从拉伸、旋转、打孔、阵列这些基础特征开始尝试积累有效描述的模式。充当高级助手不要期望它完全替代你的设计工作。把它视为一个能极大加速代码编写、处理重复性指令的智能助手。复核与测试永远在测试环境中或新建的零件文件里先运行生成的宏确认无误后再用于重要设计。积累自己的“提示词”库将那些能稳定生成正确代码的描述方式和句式记录下来形成自己的高效协作模板。5. 总结回过头来看Mirage Flow为SolidWorks参数化建模引入了一种全新的交互范式。它降低了自动化建模的启动门槛让不擅长编程的工程师也能通过描述意图来驱动设计。虽然现阶段还需要人工进行最后的代码调试和验证但它已经显著缩短了从“想法”到“代码”的距离。实际体验下来最深的感受是它特别适合那些特征明确、步骤清晰、但操作重复的建模任务。对于探索设计原型、构建参数化零件库、快速响应设计变更这些场景效率提升非常明显。它不会取代工程师而是将工程师从重复劳动中解放出来让我们能更专注于设计本身的结构、性能和工艺。如果你经常被类似的建模工作困扰不妨找个简单的零件试试体验一下这种“动动嘴皮子”就能开始建模的新鲜感。获取更多AI镜像想探索更多AI镜像和应用场景访问 CSDN星图镜像广场提供丰富的预置镜像覆盖大模型推理、图像生成、视频生成、模型微调等多个领域支持一键部署。