论文部分内容阅读
[摘 要]本文主要介绍参数化绘图的设计,以Visual Lisp为开发工具,实现零件的参数化绘图,简便、快捷,提高设计效率。
[关键词]参数化绘图;设计
中图分类号:TP391.72 文献标识码:A 文章编号:1009-914X(2014)20-0091-02
引言
AutoCAD是当前各行业应用最广泛的辅助设计绘图软件之一,在各领域使用AutoCAD进行工程图和效果图的绘制。AutoCAD为用户提供了丰富的绘图和编辑功能,利用其绘图和编辑功能可以使绘制图样简便、快捷。AutoCAD的另一功能优势是它的可开发性,这种开发性得以实现的最重要的因素在于AutoCAD的嵌入式程序设计语言——Visual Lisp。利用Visual Lisp开发AutoCAD,可对几何形状相似、尺寸大小变化的标准件、常用件实现参数化绘图,用户只需给出绘图充要参数,便可由AutoCAD自动绘制预期图形,绘图速度更加快捷。
1 总体设计思想
CAD向三维发展已是必然的趋势。因此,在机械零件CAD设计过程中,如能先显示出所设计零件的三维图,把更多的零件信息展现在设计者面前,供其直观地从不同角度观察、修改,就能较大程度地提高设计质量。而且零件三维图还可作为进一步设计、分析的基础,如形成CAD/CAM、供有限元软件分析计算使用等。本软件总体设计思想如图1所示:先根据给定参数绘出带轮的立体图形,供设计者观察、修改,满意后再生成符合国家机械制图标准的零件图,以便实际中伸用。
采用模块化程序设计方法可使软件设计思路清晰,便于程序的设计与调试。开发工具选用简单易学的Visual Lisp语言,操作界面采用DCL对话框。
带轮有V型带轮和平带轮两种常用结构,本文重点介绍V型带轮零件图的参数化绘图部分。
2 参数化绘图程序的实现
2.1 带轮绘图参数的确定
带轮的结构参数按GB/T 13575.1-2008取得,并根据参数化绘图参数选取的基本原则选取:带轮的结构形式(4种)、带轮的型号〔Typel)、带轮的基准直径〔D)、带轮的轮槽数〔n)、带轮安装轴的直径〔DH)作为基本儿何参数。另加入作图基点〔P0)作为绘图基点参数。
其余结构尺寸根据工程手册上的规定进行相应的计算机处理。如带轮轮毅的键槽数据可采用数据文件或数据库技术,本软件采用前者。
2.2 参数的输入
带轮基本参数输入模块界面,在该模块中,某些数据问具有关联性〔如带轮直径与其型号的相关联性),对各种输入数据的容错处理等是比较关键问题。
2.2.1 容错处理的实现
当输入值不符合规定要求时,应有相应提示或能白动地做出相应处理。
如下面的函数用来检查输入值是否小于零;VALUE是指输入值,KEY是指输入值所在控件。
(defun check-0 (value key)
(if(>0.0 value) (progn (alert“非法输入!\n请重新输入:“)(mode_ tile key 2)
2.2.2数据问关联性的实现
数据间的关联性是指当某一项数据改变时,与之关联的数据项随着改变。如下面的函数实现带轮型号与其直径的关联性,即当选择某一型号的带轮时,带轮直径一栏数据的显示,也作相应的改变。否则选出的直径有可能不符合设计手册的推荐优先选用值。
(setq typel (list "0" "A" "B" "C" "D" "E" "F"));带轮的型号
(setq do (list“100"“125"“160" "200"))
(setq da (list“125"“140"“160"“180" "200" "250" "315" "400" "500" "630"))
(setq df (list "800"“1000"“1120"“1400" "1600" "2000" "2500"))
;;; 以上是设置带轮相应型号的基准直径,以实现其关联性。
…
(setq dcl-id (load-dialog "dailun\\dww.dcl"));调用带轮参数输入对话框程序。
…
(action tile "typel" "(save type)");在对话框上显示带轮的型号供用户选择
…
(update dhj)
(set tile "d" (rtos asd)):相应型号的带轮基准直径在对话框上作关联变动
2.3 带轮零件图的绘图功能模块
分析V型带轮的结构,有3种绘图模块,如图2所示。
模块A:带轮轮槽作图模块:
模块B:实心轮辐作图模块:
模块C:孔、辐板轮辐作图模块。
把模块Aw Bw C进行组合,可完成:
模块A和模块B结合:绘制实心带轮:
模块A和模块C结合:绘制孔板带轮和辐板带轮。略作修改可完成椭圆辐带轮的绘制。
2.4 立体图的实现
总体思想是由平面图旋转生成立体图,再用布尔运算减去键槽及相应形状而成。简述如下:
实心带轮立体图:由模块A和模块B组合成一个整体,然后旋转生成:辐板带轮的立体图:由模块C先镜向对称生成另外一半,然后结合模块A,三者先组成一个整体再旋转生成:孔板带轮的立体图:在辐板带轮立体图的基础上,用布尔运算减去儿个圆柱。
由于模块组合是由多义线连接而成,因而在作图时线条长度必须精确。本设计是由参数将节点数据传到程序中去的,因而,可以很好的解决模块不能组合的问题。
2.5 零件图的生成
根据机械零件图组成要素和模块化程序设计思想,绘制带轮零件图的功能模块如图3所示。
上述模块还可继续分解为分功能模块,因篇幅有限略去。
在本软件设计中,工程标注模块、绘图框及标题栏是利用已开发的模块,减少了工作量,提高了软件开发效率,这也体现了模块化程序设计的魅力。
2.5.1 绘带轮视图
根据作图基点及带轮的基本儿何参数,计算相应绘图点的坐标,然后用Lisp编程作图。关键的问题是解决好程序白动设置绘图比例,即视图的大小与图框的匹配。
2.5.2注写技术要求
借鉴“所见即所得”的直观形式,技术要求的内容采用对话框界面来输入,并预览技术要求的内容。还允许用户扩充白己的特定要求,只需在“其它”栏里填上相应内容即可。如图4所示。
3 结束语
本软件经过多次调试运行,效果十分理想,能在AutoCAD R14.0版以上运行。生成的立体图形象直观,零件图符合国家机械制图标准,可用于实际生产,有较好的实用性和应用性。
该软件有以下儿个特点:
(1)输入数据方便、可靠。对话框操作界面形象直观、简洁,与Windows界面风格一致,操作方便。
[关键词]参数化绘图;设计
中图分类号:TP391.72 文献标识码:A 文章编号:1009-914X(2014)20-0091-02
引言
AutoCAD是当前各行业应用最广泛的辅助设计绘图软件之一,在各领域使用AutoCAD进行工程图和效果图的绘制。AutoCAD为用户提供了丰富的绘图和编辑功能,利用其绘图和编辑功能可以使绘制图样简便、快捷。AutoCAD的另一功能优势是它的可开发性,这种开发性得以实现的最重要的因素在于AutoCAD的嵌入式程序设计语言——Visual Lisp。利用Visual Lisp开发AutoCAD,可对几何形状相似、尺寸大小变化的标准件、常用件实现参数化绘图,用户只需给出绘图充要参数,便可由AutoCAD自动绘制预期图形,绘图速度更加快捷。
1 总体设计思想
CAD向三维发展已是必然的趋势。因此,在机械零件CAD设计过程中,如能先显示出所设计零件的三维图,把更多的零件信息展现在设计者面前,供其直观地从不同角度观察、修改,就能较大程度地提高设计质量。而且零件三维图还可作为进一步设计、分析的基础,如形成CAD/CAM、供有限元软件分析计算使用等。本软件总体设计思想如图1所示:先根据给定参数绘出带轮的立体图形,供设计者观察、修改,满意后再生成符合国家机械制图标准的零件图,以便实际中伸用。
采用模块化程序设计方法可使软件设计思路清晰,便于程序的设计与调试。开发工具选用简单易学的Visual Lisp语言,操作界面采用DCL对话框。
带轮有V型带轮和平带轮两种常用结构,本文重点介绍V型带轮零件图的参数化绘图部分。
2 参数化绘图程序的实现
2.1 带轮绘图参数的确定
带轮的结构参数按GB/T 13575.1-2008取得,并根据参数化绘图参数选取的基本原则选取:带轮的结构形式(4种)、带轮的型号〔Typel)、带轮的基准直径〔D)、带轮的轮槽数〔n)、带轮安装轴的直径〔DH)作为基本儿何参数。另加入作图基点〔P0)作为绘图基点参数。
其余结构尺寸根据工程手册上的规定进行相应的计算机处理。如带轮轮毅的键槽数据可采用数据文件或数据库技术,本软件采用前者。
2.2 参数的输入
带轮基本参数输入模块界面,在该模块中,某些数据问具有关联性〔如带轮直径与其型号的相关联性),对各种输入数据的容错处理等是比较关键问题。
2.2.1 容错处理的实现
当输入值不符合规定要求时,应有相应提示或能白动地做出相应处理。
如下面的函数用来检查输入值是否小于零;VALUE是指输入值,KEY是指输入值所在控件。
(defun check-0 (value key)
(if(>0.0 value) (progn (alert“非法输入!\n请重新输入:“)(mode_ tile key 2)
2.2.2数据问关联性的实现
数据间的关联性是指当某一项数据改变时,与之关联的数据项随着改变。如下面的函数实现带轮型号与其直径的关联性,即当选择某一型号的带轮时,带轮直径一栏数据的显示,也作相应的改变。否则选出的直径有可能不符合设计手册的推荐优先选用值。
(setq typel (list "0" "A" "B" "C" "D" "E" "F"));带轮的型号
(setq do (list“100"“125"“160" "200"))
(setq da (list“125"“140"“160"“180" "200" "250" "315" "400" "500" "630"))
(setq df (list "800"“1000"“1120"“1400" "1600" "2000" "2500"))
;;; 以上是设置带轮相应型号的基准直径,以实现其关联性。
…
(setq dcl-id (load-dialog "dailun\\dww.dcl"));调用带轮参数输入对话框程序。
…
(action tile "typel" "(save type)");在对话框上显示带轮的型号供用户选择
…
(update dhj)
(set tile "d" (rtos asd)):相应型号的带轮基准直径在对话框上作关联变动
2.3 带轮零件图的绘图功能模块
分析V型带轮的结构,有3种绘图模块,如图2所示。
模块A:带轮轮槽作图模块:
模块B:实心轮辐作图模块:
模块C:孔、辐板轮辐作图模块。
把模块Aw Bw C进行组合,可完成:
模块A和模块B结合:绘制实心带轮:
模块A和模块C结合:绘制孔板带轮和辐板带轮。略作修改可完成椭圆辐带轮的绘制。
2.4 立体图的实现
总体思想是由平面图旋转生成立体图,再用布尔运算减去键槽及相应形状而成。简述如下:
实心带轮立体图:由模块A和模块B组合成一个整体,然后旋转生成:辐板带轮的立体图:由模块C先镜向对称生成另外一半,然后结合模块A,三者先组成一个整体再旋转生成:孔板带轮的立体图:在辐板带轮立体图的基础上,用布尔运算减去儿个圆柱。
由于模块组合是由多义线连接而成,因而在作图时线条长度必须精确。本设计是由参数将节点数据传到程序中去的,因而,可以很好的解决模块不能组合的问题。
2.5 零件图的生成
根据机械零件图组成要素和模块化程序设计思想,绘制带轮零件图的功能模块如图3所示。
上述模块还可继续分解为分功能模块,因篇幅有限略去。
在本软件设计中,工程标注模块、绘图框及标题栏是利用已开发的模块,减少了工作量,提高了软件开发效率,这也体现了模块化程序设计的魅力。
2.5.1 绘带轮视图
根据作图基点及带轮的基本儿何参数,计算相应绘图点的坐标,然后用Lisp编程作图。关键的问题是解决好程序白动设置绘图比例,即视图的大小与图框的匹配。
2.5.2注写技术要求
借鉴“所见即所得”的直观形式,技术要求的内容采用对话框界面来输入,并预览技术要求的内容。还允许用户扩充白己的特定要求,只需在“其它”栏里填上相应内容即可。如图4所示。
3 结束语
本软件经过多次调试运行,效果十分理想,能在AutoCAD R14.0版以上运行。生成的立体图形象直观,零件图符合国家机械制图标准,可用于实际生产,有较好的实用性和应用性。
该软件有以下儿个特点:
(1)输入数据方便、可靠。对话框操作界面形象直观、简洁,与Windows界面风格一致,操作方便。