Solidwork建模完成后通常需要二维工程图,但有时公司可能需要cad格式(dwg)的二维图纸(以autocad的dwg文件格式)存档,一般转化字体会出现乱码,而每次设置都比较费时费力,怎样才能使Solidworks工程图转化成CAD的DWG格式图?而且转换的 DWG 在AutoCAD 打开时不需更改,图层和颜色都可一丝不差 。小编给大家详细介绍一下。
一、Solidworks工程图转CAD图一般转换
1、 打开需转换的 Solidworks 工程图,先查看和设置一下它的字体,打开菜单:工具 – 选项 – 文件属性 – 注解字体,右面列出的各注解的列表,如点击右面的“注释 – 零件序号”,显示的是你图纸“注释”和“零件序号”的字体的设置。如下图
2、把注释、零件序号、尺寸、细节、截面等全部设定好。
字体:“尺寸”的字体应设置为英文字体,如“ Times New Roman ”、“ Arial ”等,其他一般为华文仿宋、仿宋、宋体、或黑体,我选的是“仿宋 _GB2312 ”。(按国家制图标准,其实我最喜欢黑体,在图纸上显得很漂亮),选什么字体并不重要,重要的是你必须牢记字体的名字,一个字符都不能错,等一会要用。最简单的办法是用鼠标右键的“复制”。(注意:字体用得越少越好,不然转换时易出错)
字体样式:常规
高度:可根据你的要求设置,最好按国家标准,各种幅面大小都有不同的字高要求。
3、在SolidWorks 安装目录下的 data 目录中找到 drawfontmap.txt 文件,这就是转换的字体文件。打开它,在最后一行添加:你刚才复制的字体名 + 空格(随意) + 你刚才复制的字体名。“尺寸”的字体因为选择的是英文字体,列表中已有了,不需加入。
4、保存 drawfontmap.txt 文件。
5、操作:文件 – 另存为,保存类型为 DWG 或DXF 就OK 了。
在AutoCAD 中打开刚才转换的 DWG 的文件,应该转换的比较成功了,如果你觉得满意下面的《设置映射文件——图层、线型》和高级篇 《一键搞定——VBA宏》你可以不必看了。
二、进阶 设置映射文件 – 图层、线型
上面我们讨论了 Solidworks 工程图到 AutoCAD 图纸的一般转换,这样转换出来的图纸可以满足一般的要求,但它所有的物体都是在同一图层上的,如果需要在 AutoCAD 进一步编辑和打印比较麻烦。接下来,我们在把它设置的更完善些。
1、 操作:文件 – 另存为,选择保存类型为 DWG 或DXF ,点击选项;
2、 出现“输出选项”对话框,选中“自定义映射 Solidworks 到dxf ”;
3、再按“确定”。系统返回到“另存为”对话框;按“保存”;出现 Solidworks 到dxf 映射对话框;
4、 对AutoCAD 熟悉的朋友应该明白了,这就是设置转换成 DWG 文件的图层设置。点击添加,设置好图层的名称、颜色、和线条式样;
5、 点击“映射到实体,这是把你 Solidworks 工程图中的各种“实体”应该放到 DWG 文件的哪各图层的设置,点击添加,把各实体分别放到第 4 步设定好的图层上去。有很多,别弄昏了头。注意:最好不要在这里选颜色和线条样式,而应在第 4 步设定,它会自动把颜色和线条样式设置为 BYLAYER 熟悉 AutoCAD 的朋友都清楚这一点。如果你不知道为什么,照做就可以了;
6、 辛辛苦苦设置了这么多,可千万不能一确定了之,它可不会自动保存!选择“映射文件设定”,找个目录,起个名字,按“确定”保存起来。
7、 点击“确定”,完成。
打开转换的 DWG 文件,如果有什么不对的地方,回过头来修改设置,重新保存,直到满意为止。
三、高级 一键搞定
两篇我们已讨论了转换问题,本篇涉及到具体的转换并不多,而是介绍 Solidworks 的另一个有用的工具——宏。其实,其他 Solidworks 的操作也可以如此简化的。
你是否觉得,每次转换的时候很繁,需东点西选,经常容易搞错另存为的格式,讨厌的映射文件每次出现,等待你更改?下面我们摆平它!
1、 在Solidworks 中操作:文件 – 另存为,选择保存类型为 DWG 或DXF ,点击选项,出现“输出选项”对话框,选择“每次保存时不显示映射”,重新输出一遍。使映射设置对话框在输出的时候不再显示;
2、 在Solidworks 中操作:工具 – 宏操作 – 录制;
3、 把输出 DWG 文件的操作再来一遍。然后操作:工具 – 宏操作 – 停止,会出现宏的“另存为”对话框;
4、取名保存宏;
5、 操作:工具 – 宏操作 – 编辑,选择我们刚才保存的宏;
可以看见我们刚才执行的操作是把打开的工程图保存成一个 aaa.DWG 文件。
如果打开其他 Solidworks 工程图 bbb ,执行这个宏,结果会把这个图转换成 DWG 文件,但文件名仍然是 aaa.dwg ,这当然不行,我们来改进一下。
6、 把全部代码删除,输入以下代码:(直接从网页拷贝、粘贴吧,保证不会错);
Dim swApp As Object
Dim Part As Object
Dim Filename As String
Dim No As Integer
Dim Title As String
Sub main()
Set swApp = Application.SldWorks
Set Part = swApp.ActiveDoc
Filename = Part.GetPathName()
No = Len(Filename)
Filename = Left(Filename, No – 7)
Part.SaveAs2 Filename & “.DWG”, 0, True, False
Title = Part.GetTitle
Set Part = Nothing
swApp.CloseDoc Title
x = MsgBox(” 已保存为 DWG 文件 “, 0)
End Sub
7、 解释一下代码的功能,熟悉 VB 的朋友可以跳过此部的分析,直接看下一段;
A 部分:定义变量。让程序以相同的文件名把 DWG 文件保存在 Solidworks 工程图相同的文件夹内。(如果 Solidworks 工程图文件名为: XXX. SLDDRW 则AutoCAD 图纸的文件名为: XXX.DWG )。此部分不可删除和省略。
B 部分:转换完成后关闭 Solidworks 工程图,这对同时需转换大量的工程的话十分有用。如果你转换后不想关闭图纸的话,删了它。
C 部分:转换后出现一个信息框:“已保存为 DWG 文件”。增加这个部分的原因是因为:实现一键操作后,如果一次需转换大量的图纸,转换时太爽了,有时按键按得太快,系统有时会“发病”。如果把“已保存为 DWG 文件”换成:
” 文件已转成 : “& Title & “.DWG” 。
信息框就输出转换后的文件名。
在这里,你可能觉得没用,但如果你在 C 部分后再增加一个 D 部分:打开同目录中的下一个工程图,用循环语句全部转换,哈哈!……可以同时转换成千上万个工程图,没有 C 部分来检查和监测一下,你根本不知道程序运转到什么地方了,还以为死机了呢。
你觉得没用的话也可以删了它。
8、 直接关闭 VBA 宏编辑器,在更改的时候它会自动保存。所已在更改的时候要小心点;
9、添加“宏” TOOLBAR ,一键搞定它。操作:工具 – 自定义,出现“自定义”对话框;选命令 – 宏,把右面的人头小图标往你需要的工具栏上拖,松手;出现“自定义宏按钮”对话框;按右边的文件选择按钮,出现“宏路径”对话框;
10、 选择我们刚才编辑过的宏文件,按“打开”;此时你可以在“自定义宏按钮”对话框中设置“快捷键”,这对经常要用到转换的朋友也十分有用。此时也可以用“选择图象”给此按钮换一个与众不同的图标;
11、 点击“确定”,再确定;
12、 好了,现在打开一张工程图,点击刚才拖出来的按钮, DWG 输出一键结束。