论文部分内容阅读
摘要:AutoCAD被广泛应用于模具、机械等行业,现对AutoCAD进行二次开发,定制用户自定义下拉菜单,并结合Visual LISP 语言实现对模具零件的参数化设计,开发适合本专业的绘图工具,以提高绘图效率。
关键词:AutoCAD;AutoCAD二次开发;Visual LISP;工具条
中图分类号:TP391.72 文献标识码:A文章编号:1009-3044(2007)04-1112-02
1 引言
模具工业是国民经济的基础产业,模具工业的发展水平标志着一个国家的工业水平和产品的开发能力。无论是在汽车工业中新车型的开发与批量生产,还是机电与家电和轻工业产品等都与模具制造技术业息息相关[1]。怎样提高模具设计和生产的效率以提高企业竞争力和市场占有率,是各个模具企业亟待解决的问题。通过对模具类软件的二次开发,创建企业自己的产品零件库,是解决这一问题的有效途径之一。
AutoCAD是一种定位与全球各大领域和各类专业的通用微机CAD平台软件[2],它是Autodesk公司开发的CAD工业的旗帜产品。伴随着近年来整个PC基础工业的突飞猛进,它正在迅速而深刻地影响着人们从事设计和绘图的基本方式。
本文即是利用AutoCAD的二次开发功能,将开发成果应用于模具设计,从而为模具设计工作带来极大方便。
2 在AutoCAD2006中定制标准模座下拉菜单
在使用AutoCAD进行模具设计和零件图的绘制时,许多标准件如螺丝、标准模架、推杆等均可定制在工具条或下拉菜单中[3]。在AutoCAD2006中定制标准模座下拉菜单可依此流程进行:
(1)将所要用的标准模架分别绘出,如图1所示为2525标准模架图:
图1 MD2525标准模架图
(2)将各标准模架保存,并分别命名为“MD2525”、“MD2535”等,再将它们拷贝到新建名称为“MD”的文件夹下。
(3)拷贝AutoCAD2006以前版本如2004版本的“acad.mnu”文件到任意文件夹,并重命名为“mine.mnu”。“acad.mnu”文件的默认安装位置在“C:\Documents and Settings\Administrator\Application Data\Autodesk\AutoCAD 2004\R16.0\enu\Support\” 。
(4)用记事本打开“mine.mnu” ,在“***POP11”语句结束后加入“***POP12”功能菜单项的内容,并保存。格式如下:
ID_MnUser[&User] //下拉菜单名为USER,并指定U为快捷键
ID_UMD2525[MD2525]^C^C-insert;MD2525//第一条子菜单项为MD2525,单击该项后即插入“MD2525.dwg”
ID_UMD2535[MD2535]^C^C-insert;MD2535…
(5)加载定制好的菜单文件:
在Command中输入menu ,弹出对话框,系统默认的菜单文件是“acad.cui” ,我们选择新的文件类型——Menu Template(*.mnu), 然后将打开位置指向定制好的“mine.mnu” ,最后单击“打开”,即可载入我们自定义的菜单文件。若要恢复系统默认设置只需重新载入“acad.cui” 菜单文件。
载入后的效果如图2所示。
图2 自定义User下拉菜单
(6)定义设备驱动文件搜索路径:
完成以上操作后,我们只能显示下拉菜单,还不能打开已画好的模架图,这是因为我们没有给它们建立链接关系。在tools下拉菜单中,进入最后一项option设置,在Device Driver File Search Path中“Add”模架所存文件夹的路径,如图3所示。点击OK,保存后重启AutoCAD。
至此,用户自定义的主菜单程序就已成功定制在AutoCAD2006中,成为模具设计服务的专用软件,极大的方便了模具设计。
3 利用Visual LISP语言调用标准件
LISP(List Processing Language)是广泛应用的一种程序设计语言,主要用于人工智能、专家系统、定理证明等领域。LISP语言语法简单,编写程序便捷,数据类型丰富,利用LISP可以很容易的定义或调用新的函数。Autodesk公司在1986年推出了比较完整的AutoLISP语言[4]。利用AutoLISP语言可以进行各种工程的分析计算,自动绘制复杂的图形;还可以定义新的AutoCAD命令,驱动对话框,控制菜单;并可为AutoCAD扩充具有一定智能化、参数化的功能,使设计人员的主要精力用于产品的构思和创新设计上,实现真正意义上的计算机辅助设计[4]。
图3 设备驱动文件搜索路径对话框
Visual LISP是新一代的AutoLISP语言,是AutoLISP语言的扩展和延伸,是Autodesk公司在1997年的AutoCAD 14版本中推出的。Visual LISP是一个可视化的LISP语言开发环境,是为加速AutoLISP程序开发而设计的软件开发工具,它兼容以前版本的AutoLISP程序,是一个完整的集成开发环境。
3.1 进入Visual LISP界面编写程序
Visual LISP集成与AutoCAD内部,用户需先启动AutoCAD然后才能进入Visual LISP IDE环境。在AutoCAD2006版本中,启动Visual LISP的方式为:
图4 Visual LISP编辑界面
在Visual LISP Console编辑器中编写如下语句并保存:
(defun c:bolt1( )
(setvar "cmdecho" 0)//抑制AutoCAD普通命令的提示,以提高程序运行速度。
(setq a(getstring "bolt dia m4,5,6,8,10,12,16,20 d=")) //设置bolt直径可选值
(if (= a "4")(setq d1 "m4tap"))//如果值为4,则打开"m4tap.dwg"文件
(if (= a "5")(setq d1 "m5tap"))
(if (= a "6")(setq d1 "m6tap"))
……
(repeat 10
(command "insert" d1)))
3.2 定制工具条
准备好图标文件,如“ ”,并在“mine.mnu”文件中的“***TOOLBARS”语句后,加入如下语句:
**DCBOLT
ID_dcbolt [_Toolbar ("dcbolt", _Floating, _Hide, 719, 365, 1)]
ID__BOLT1 [_Button ("BOLT1 (LISP)", "m-tap.bmp", "ICON_32_BLANK")]^C^C(load"dcbolt") ^P$s=x bolt1
ID__BOLT2 [_Button("BOLT2(LISP)", "tap-h.bmp", "ICON_32_BLANK")]^C^C(load"dcbolt") ^P$s=x bolt2
ID__BOLT3 [_Button("BOLT3(LISP)", "bol-p.bmp", "ICON_32_BLANK")]^C^C(load"dcbolt") ^P$s=x bolt3 …
3.3 加载各项设置
(1)将相关文件的路径按前面的方法添加到设备驱动文件搜索路径中;
(2)将“mine.mnu”文件在软件重起后重新载入;
(3)加载Visual LISP程序:【Tools】→【AutoLISP】→【Load】,将编写好的语句载入。
(4)加载工具条,在任意工具条上点击鼠标右键,将出现的“dcbolt”复选,则显示图5所示工具条。
图5 dcbolt 自定义工具条
3.4 使用工具条
电击工具条上的图标“”,将弹出如图6所示的提示。输入直径值按回车即可调出相应文件。
图6 提示信息
按照上面的原理和方法可根据各用户的需求自定义如图7所示的众多工具条,给模具设计带来极大方便。
图7 自定义工具条
4 结束语
虽然三维软件已被应用于模具行业多年,但是在某些方面它们依然不能替代AutoCAD的作用。利用AutoCAD的二次开发功能能够给模具设计带来极大方便,本文通过作者的实际经验和技巧定制了用户自定义下拉菜单,并利用Visual LISP语言编辑出提示性的工具条,方便快捷的调出所需标准件文件,提高了工作效率。
在利用Visual LISP语言时,并没有用其进行图形的绘制,而是采取调用简单文件的方式加载模块,从而避开了繁琐的程序编辑过程,定制出了可选数值的标准件提示框,既节省了程序编辑的时间又方便了文件的调用。模具、机械等相关行业可以借鉴此方法,以提高设计效率。
参考文献:
[1]马斌.模具CAD技术及其发展趋势浅析[J].渝州大学学报(自然科学版),2002,19(1):86.
[2]张锋,陈爱萍.AutoCAD二次开发环境的探讨[J].机械设计与制造,2005,(9):125-127.
[3]周旭红.AutoCAD在模具设计中的运用[J].科技信息,2006(2):137.
[4]李学志.Visual LISP程序设计(AutoCAD2006)[M].北京:清华大学出版社,2006.
本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文。
关键词:AutoCAD;AutoCAD二次开发;Visual LISP;工具条
中图分类号:TP391.72 文献标识码:A文章编号:1009-3044(2007)04-1112-02
1 引言
模具工业是国民经济的基础产业,模具工业的发展水平标志着一个国家的工业水平和产品的开发能力。无论是在汽车工业中新车型的开发与批量生产,还是机电与家电和轻工业产品等都与模具制造技术业息息相关[1]。怎样提高模具设计和生产的效率以提高企业竞争力和市场占有率,是各个模具企业亟待解决的问题。通过对模具类软件的二次开发,创建企业自己的产品零件库,是解决这一问题的有效途径之一。
AutoCAD是一种定位与全球各大领域和各类专业的通用微机CAD平台软件[2],它是Autodesk公司开发的CAD工业的旗帜产品。伴随着近年来整个PC基础工业的突飞猛进,它正在迅速而深刻地影响着人们从事设计和绘图的基本方式。
本文即是利用AutoCAD的二次开发功能,将开发成果应用于模具设计,从而为模具设计工作带来极大方便。
2 在AutoCAD2006中定制标准模座下拉菜单
在使用AutoCAD进行模具设计和零件图的绘制时,许多标准件如螺丝、标准模架、推杆等均可定制在工具条或下拉菜单中[3]。在AutoCAD2006中定制标准模座下拉菜单可依此流程进行:
(1)将所要用的标准模架分别绘出,如图1所示为2525标准模架图:
图1 MD2525标准模架图
(2)将各标准模架保存,并分别命名为“MD2525”、“MD2535”等,再将它们拷贝到新建名称为“MD”的文件夹下。
(3)拷贝AutoCAD2006以前版本如2004版本的“acad.mnu”文件到任意文件夹,并重命名为“mine.mnu”。“acad.mnu”文件的默认安装位置在“C:\Documents and Settings\Administrator\Application Data\Autodesk\AutoCAD 2004\R16.0\enu\Support\” 。
(4)用记事本打开“mine.mnu” ,在“***POP11”语句结束后加入“***POP12”功能菜单项的内容,并保存。格式如下:
ID_MnUser[&User] //下拉菜单名为USER,并指定U为快捷键
ID_UMD2525[MD2525]^C^C-insert;MD2525//第一条子菜单项为MD2525,单击该项后即插入“MD2525.dwg”
ID_UMD2535[MD2535]^C^C-insert;MD2535…
(5)加载定制好的菜单文件:
在Command中输入menu ,弹出对话框,系统默认的菜单文件是“acad.cui” ,我们选择新的文件类型——Menu Template(*.mnu), 然后将打开位置指向定制好的“mine.mnu” ,最后单击“打开”,即可载入我们自定义的菜单文件。若要恢复系统默认设置只需重新载入“acad.cui” 菜单文件。
载入后的效果如图2所示。
图2 自定义User下拉菜单
(6)定义设备驱动文件搜索路径:
完成以上操作后,我们只能显示下拉菜单,还不能打开已画好的模架图,这是因为我们没有给它们建立链接关系。在tools下拉菜单中,进入最后一项option设置,在Device Driver File Search Path中“Add”模架所存文件夹的路径,如图3所示。点击OK,保存后重启AutoCAD。
至此,用户自定义的主菜单程序就已成功定制在AutoCAD2006中,成为模具设计服务的专用软件,极大的方便了模具设计。
3 利用Visual LISP语言调用标准件
LISP(List Processing Language)是广泛应用的一种程序设计语言,主要用于人工智能、专家系统、定理证明等领域。LISP语言语法简单,编写程序便捷,数据类型丰富,利用LISP可以很容易的定义或调用新的函数。Autodesk公司在1986年推出了比较完整的AutoLISP语言[4]。利用AutoLISP语言可以进行各种工程的分析计算,自动绘制复杂的图形;还可以定义新的AutoCAD命令,驱动对话框,控制菜单;并可为AutoCAD扩充具有一定智能化、参数化的功能,使设计人员的主要精力用于产品的构思和创新设计上,实现真正意义上的计算机辅助设计[4]。
图3 设备驱动文件搜索路径对话框
Visual LISP是新一代的AutoLISP语言,是AutoLISP语言的扩展和延伸,是Autodesk公司在1997年的AutoCAD 14版本中推出的。Visual LISP是一个可视化的LISP语言开发环境,是为加速AutoLISP程序开发而设计的软件开发工具,它兼容以前版本的AutoLISP程序,是一个完整的集成开发环境。
3.1 进入Visual LISP界面编写程序
Visual LISP集成与AutoCAD内部,用户需先启动AutoCAD然后才能进入Visual LISP IDE环境。在AutoCAD2006版本中,启动Visual LISP的方式为:
图4 Visual LISP编辑界面
在Visual LISP Console编辑器中编写如下语句并保存:
(defun c:bolt1( )
(setvar "cmdecho" 0)//抑制AutoCAD普通命令的提示,以提高程序运行速度。
(setq a(getstring "bolt dia m4,5,6,8,10,12,16,20 d=")) //设置bolt直径可选值
(if (= a "4")(setq d1 "m4tap"))//如果值为4,则打开"m4tap.dwg"文件
(if (= a "5")(setq d1 "m5tap"))
(if (= a "6")(setq d1 "m6tap"))
……
(repeat 10
(command "insert" d1)))
3.2 定制工具条
准备好图标文件,如“ ”,并在“mine.mnu”文件中的“***TOOLBARS”语句后,加入如下语句:
**DCBOLT
ID_dcbolt [_Toolbar ("dcbolt", _Floating, _Hide, 719, 365, 1)]
ID__BOLT1 [_Button ("BOLT1 (LISP)", "m-tap.bmp", "ICON_32_BLANK")]^C^C(load"dcbolt") ^P$s=x bolt1
ID__BOLT2 [_Button("BOLT2(LISP)", "tap-h.bmp", "ICON_32_BLANK")]^C^C(load"dcbolt") ^P$s=x bolt2
ID__BOLT3 [_Button("BOLT3(LISP)", "bol-p.bmp", "ICON_32_BLANK")]^C^C(load"dcbolt") ^P$s=x bolt3 …
3.3 加载各项设置
(1)将相关文件的路径按前面的方法添加到设备驱动文件搜索路径中;
(2)将“mine.mnu”文件在软件重起后重新载入;
(3)加载Visual LISP程序:【Tools】→【AutoLISP】→【Load】,将编写好的语句载入。
(4)加载工具条,在任意工具条上点击鼠标右键,将出现的“dcbolt”复选,则显示图5所示工具条。
图5 dcbolt 自定义工具条
3.4 使用工具条
电击工具条上的图标“”,将弹出如图6所示的提示。输入直径值按回车即可调出相应文件。
图6 提示信息
按照上面的原理和方法可根据各用户的需求自定义如图7所示的众多工具条,给模具设计带来极大方便。
图7 自定义工具条
4 结束语
虽然三维软件已被应用于模具行业多年,但是在某些方面它们依然不能替代AutoCAD的作用。利用AutoCAD的二次开发功能能够给模具设计带来极大方便,本文通过作者的实际经验和技巧定制了用户自定义下拉菜单,并利用Visual LISP语言编辑出提示性的工具条,方便快捷的调出所需标准件文件,提高了工作效率。
在利用Visual LISP语言时,并没有用其进行图形的绘制,而是采取调用简单文件的方式加载模块,从而避开了繁琐的程序编辑过程,定制出了可选数值的标准件提示框,既节省了程序编辑的时间又方便了文件的调用。模具、机械等相关行业可以借鉴此方法,以提高设计效率。
参考文献:
[1]马斌.模具CAD技术及其发展趋势浅析[J].渝州大学学报(自然科学版),2002,19(1):86.
[2]张锋,陈爱萍.AutoCAD二次开发环境的探讨[J].机械设计与制造,2005,(9):125-127.
[3]周旭红.AutoCAD在模具设计中的运用[J].科技信息,2006(2):137.
[4]李学志.Visual LISP程序设计(AutoCAD2006)[M].北京:清华大学出版社,2006.
本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文。