You need to enable JavaScript to run this app. SolidWorks VBA宏改进:导出带折弯点的钣金平板DWG/DXF
优惠活动
大模型
产品
解决方案
定价
更多

SolidWorks VBA宏改进:导出带折弯点的钣金平板DWG/DXF

SolidWorks 钣金平板DWG导出宏折弯点缺失问题排查与优化

核心错误原因排查

  • 导出状态不匹配:原宏未在导出前将钣金零件切换到平板展开状态,SolidWorks仅在展开状态下识别折弯线的平面坐标,折叠状态下ExportBendLines选项会被系统直接忽略,仅导出实体面几何体
  • 导出选项位值组合缺失:原宏仅组合了平板几何、折弯线两个导出选项,未叠加IncludeHiddenEdges选项;折弯线属于非实体的参考边线,默认被系统判定为隐藏元素,不开启隐藏边导出时不会被写入DWG文件
  • 导出参数传值逻辑偏差:原宏向ExportToDWG2的实体选择参数传递空值,会触发系统默认的“仅导出可见实体面”过滤规则,所有非实体的参考元素(含折弯线、折弯点)都会被自动剔除

优化后的可正常导出折弯元素的宏代码

Enum SheetMetalOptions_e
    ExportFlatPatternGeometry = 1
    IncludeHiddenEdges = 2
    ExportBendLines = 4
    IncludeSketches = 8
    MergeCoplanarFaces = 16
    ExportLibraryFeatures = 32
    ExportFormingTools = 64
    ExportBoundingBox = 2048
End Enum

Const OUT_PATH As String = "D:\sm.dwg"

Dim swApp As SldWorks.SldWorks

Sub main()
    Set swApp = Application.SldWorks
    Dim swPart As SldWorks.PartDoc
    Set swPart = swApp.ActiveDoc
    
    ' 校验文档已保存
    Dim modelPath As String
    modelPath = swPart.GetPathName
    If modelPath = "" Then
        Err.Raise vbError, "", "Part document must be saved"
    End If
    
    ' *关键修正*:强制切换到平板展开状态
    swPart.ShowFlatPattern True
    
    ' *调整导出选项*:叠加隐藏边导出,确保折弯线被识别
    Dim smExportOpts As Long
    smExportOpts = SheetMetalOptions_e.ExportFlatPatternGeometry + _
                   SheetMetalOptions_e.ExportBendLines + _
                   SheetMetalOptions_e.IncludeHiddenEdges
    
    ' *修正参数传递*:实体选择集传入当前激活文档对象,避免空值触发过滤逻辑
    Dim exportRes As Boolean
    exportRes = swPart.ExportToDWG2( _
        OUT_PATH, _
        modelPath, _
        swExportToDWG_e.swExportToDWG_ExportSheetMetal, _
        True, _
        swPart, _
        False, _
        False, _
        smExportOpts, _
        Empty)
    
    If False = exportRes Then
        Err.Raise vbError, "", "Failed to export flat pattern"
    End If
    
    ' 可选:导出完成后切回折叠状态,取消注释即可启用
    ' swPart.ShowFlatPattern False
End Sub

导出校验注意事项

  • 折弯点是折弯线的固有端点,导出折弯线后会自动同步坐标到DWG文件,无需额外开启独立导出选项
  • 宏的导出选项优先级低于SolidWorks系统全局设置,若导出后仍缺折弯元素,需检查「系统选项-导出-钣金DXF/DWG」下的折弯线导出开关
  • 导出路径需提前创建对应文件夹,避免因路径不存在触发导出失败

内容的提问来源于stack exchange,提问作者Sylwester Marć

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.11.02 03:15:04