SW转CAD乱码解决办法
后来发现存成DXF格式也可以 我也遇到过这个情况,看看能有帮助不:) Solidworks 工程图转换为AutoCAD 图纸全攻略已有不少高手对Solidworks 工程图转为AutoCAD dwg 图纸进行了探讨,但都
不全面。根据本人多年的经验,现总结出来,奉献给大家分享。
转换过程只需点一次鼠标就可搞定,而且转换的dwg 在AutoCAD 打开时不需更
改,连图层和颜色都可一丝不差。好了,不罗嗦了,下面就让我们开始吧!
首先,洗净手脚,泡杯龙井……。有条件的朋友可以来杯“鸟窝咖啡”,或干脆
来杯白开水,因为可能要忙一会儿,对了!忘了上趟厕所,(还要重新洗手)。
我们有一些工作要做,想要日后享福,必须先麻烦一点。
一、初级篇一般转换
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 文件的图层
设置。点击添加,设置好图层的名称、颜色、和线条式样。我的设置是
这可是按国标设置的阿。还不知道国标?正好,“精工e 匠”网站上有〈
GB/T14665 - 1998 机械工程CAD 制图规则〉,麻烦你看看吧!
5• 点击“映射到实体,这是把你Solidworks 工程图中的各种“实体”应该
放到DWG 文件的哪各图层的设置,点击添加,把各实体分别放到第4 步设定好
的图层上去。有很多,别弄昏了头。
注意:最好不要在这里选颜色和线条样式,而应在第4 步设定,它会自动把颜
色和线条样式设置为BYLAYER 熟悉AutoCAD 的朋友都清楚这一点。如果你不知
道为什么,照做就可以了。
6• 辛辛苦苦设置了这么多,可千万不能一确定了之,它可不会自动保存!选
择“映射文件设定”,找个目录,起个名字,按“确定”保存起来。
7• 再按“确定”。大功告成!
打开转换的DWG 文件,如果有什么不对的地方,回过头来修改设置,重新保存,
直到满意为止。
好了该喝茶、加水了,这次小心点……
满意了吗?应该是不错了……? OK !你可以结束了!没必要再看高级篇《一
键搞定——VBA 宏》了!
三、高级篇一键搞定
该喝茶了!你喝、我喝、大家喝!还得去厕所,别忘了洗手喔!
前两篇我们已讨论了转换问题,本篇涉及到具体的转换并不多,而是介绍
Solidworks 的另一个有用的工具——宏。其实,其他Solidworks 的操作也可
以如此简化的。
你是否觉得,每次转换的时候很繁,需东点西选,经常容易搞错另存为的格式,
讨厌的映射文件每次出现,等待你更改?下面我们摆平它!
1• 在Solidworks 中操作:文件/ 另存为,选择保存类型为DWG 或DXF ,
点击选项,出现“输出选项”对话框,选择“每次保存时不显示映射”,重新输
出一遍。使映射设置对话框在输出的时候不再显示。
2• 在Solidworks 中操作:工具/ 宏操作/ 录制
3• 把输出DWG 文件的操作再来一遍。然后操作:工具/ 宏操作/ 停止,会
出现宏的“另存为”对话框。
4• 取名保存宏。
5• 操作:工具/ 宏操作/ 编辑,选择我们刚才保存的宏。VBA 打开了宏。
可以看见我们刚才执行的操作是把打开的工程图保存成一个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 部分来检查和监测一下,你根本不知道程序运转到什么地方
了,还以为死机了呢。
你觉得没用的话也可以删了它。
现在插播广告: ~&)(%$#+| ?…… < 广告牌待租! > …… x$@$*&^%
什么?还放广告?
对了!不放广告的话,就没钱可赚,现在的社会没有好处的事,如果你去作的话,
大家都会怀疑你的目的和真实性。正好你我都可以先休息一下,当然是:喝茶…
厕所…洗手……。
^%*^* 洗头膏—— &*^%3 尿不湿—— %&*%$ ……关心您的古见糠!…… %&
8• 好了!广告结束了,记住:上一行的东西千万不能粘贴在代码里。我们接
着讨论——:
9• 直接关闭VBA 宏编辑器,在更改的时候它会自动保存。所已在更改的时候
要小心点。
10• 添加“宏” TOOLBAR ,一键搞定它。操作:工具/ 自定义,出现“自定
义”对话框;选命令/ 宏,把右面的人头小图标往你需要的工具栏上拖,松手;
出现“自定义宏按钮”对话框;按右边的文件选择按钮,出现“宏路径”对话框
11• 选择我们刚才编辑过的宏文件,按“打开”;此时你可以在“自定义宏按
钮”对话框中设置“快捷键”,这对经常要用到转换的朋友也十分有用。此时也
可以用“选择图象”给此按钮换一个与众不同的图标。
12• 点击“确定”,再确定。
13• 好了!现在打开一张工程图,点击刚才拖出来的按钮, DWG 输出一键结
束。
在宏里我们可以做多文章,有兴趣的朋友可以自己研究。“只有想不到的,没有
做不到的!”我相信这句话。(当然,有时代价太大,不合算!不管怎样,我做
梦总可以吧!)
支持无私奉献,谢谢,你辛苦了。 我也支持你,太感谢了 谢谢分享:).................... 感谢楼主分享。。。。。。 下载了学习学习!
自己试了一下还是不能解决问题不知哪一步没有做到位! 感谢分享,学习学习。
页:
[1]
2