autolisp对话框实例-齿轮

上传人:油条 文档编号:34276368 上传时间:2018-02-22 格式:PPT 页数:74 大小:455KB
返回 下载 相关 举报
autolisp对话框实例-齿轮_第1页
第1页 / 共74页
autolisp对话框实例-齿轮_第2页
第2页 / 共74页
autolisp对话框实例-齿轮_第3页
第3页 / 共74页
autolisp对话框实例-齿轮_第4页
第4页 / 共74页
autolisp对话框实例-齿轮_第5页
第5页 / 共74页
点击查看更多>>
资源描述

《autolisp对话框实例-齿轮》由会员分享,可在线阅读,更多相关《autolisp对话框实例-齿轮(74页珍藏版)》请在金锄头文库上搜索。

1、第13章 综合应用实例,本章介绍两个以对话框设计为主的两个综合应用实例。 实例一是定义绘制多种螺钉的命令。该实例建立了互动关系的图像按钮和列表,供用户直观地选择螺钉种类;通过“自定义尺寸”切换开关控制一些控件的状态,若该切换开关关闭,表示绘制标准螺钉,标准螺钉的数据只需在列表中选择,自定义尺寸的编辑框处于禁用状态;反之,螺钉的标准数据列表处于禁用状态,此时在自定义尺寸的编辑框输入数据,即可绘制出非标准的螺钉。 实例二是定义范成法加工齿轮的命令。调用该命令即可仿真演示范成法加工齿轮的过程,逼真地演示了生成渐开线齿形的原理。该实例利用图元名作为选择图形对象的手段,利用面域作为加工的刀具和对象,利用

2、布尔差运算完成了齿轮的加工。在调用命令的过程中,被加工齿轮的模数、压力角从下拉列表中选择,齿数、变位系利用具有互动关系的编辑框和滑动条输入,通过互鎻按钮确定齿廓精度。齿轮加工完毕,显示其几何参数,并可以将其参数输入到指定的文件。,13 .1 定义绘制多种螺钉的命令 螺钉是最常用的标准件,它的结构、尺寸参数在国家标准中有详细的规定。螺钉是由标准件厂专门生产的,一般的厂家只是选用螺钉。因此只有在绘制部件图时才绘制螺钉。 传统的手工绘制螺钉的步骤是: 根据具体的应用场合确定螺钉的种类,初步计算所需螺钉的大径和长度; 查阅机械零件设计手册,确定螺钉的大径、长度和其他有关结构的尺寸; 根据指定的位置和方

3、向绘制螺钉(通常是外形图)。 在CAD环境下,计算机提供螺钉的种类和标准数据供设计人员选择,设计人员只需确定螺钉的位置和方向,其余的工作,主要是繁琐的绘图由计算机去完成。,13.1.1 文件和使用说明1. 文件说明 本程序由以下三种类型的10个文件组成。(1)对话框定义文件 文件名为13-1.dcl,存放在d:exampledcl路径下。该文件定义了确定螺钉种类的主对话框main_dlg和确定螺钉参数的子对话框children_dlg。(2)AutoLISP源文件 文件名为13-1.lsp,存放在自定的路径下。该文件是驱动对话框并绘制各种螺钉的AutoLISP源程序。(3)幻灯片文件 显示在主

4、对话框的幻灯片文件有:13-1scr0.sld、13-1scr1.sld、13-1scr2.sld和13-1scr3.sld。显示在子对话框的幻灯片文件有:13-1screw0.sld、13-1screw1.sld、13-1screw2.sld和13-1screw3.sld。它们存放在d:examplesld路径下。,2. 使用说明(1)安装和加载 从电子教案中找出上述文件并复制到指定的路径,加载13-1.lsp。(2)调用绘制螺钉的命令 种类确定螺钉的种类 在“command:”提示下,输入screw命令,弹出图13-1所示确定螺钉种类对话框。,图13-1确定螺钉种类对话框,图13-2确定螺

5、钉参数对话框,(3)确定螺钉的种类 图13-1所示对话框提供了互动的图像按钮和螺钉种类的列表,通过该对话框选择一种螺钉,单击“继续”按钮,弹出图13-2所示确定螺钉参数的对话框。,(4)确定螺钉的几何参数 通过“螺钉大径d”的列表选择螺钉的大径d。 通过“螺钉长度L”的列表选择螺钉的的长度L。 如果需要绘制非标准尺寸的螺钉,打开“自定义尺寸”切换开关。“螺钉大径d”和“螺钉长度L”列表从可用改变为禁用的状态,“自定义大径d”和“自定义长度L”编辑框从禁用改变为可用的状态。通过“自定义大径d”和“自定义长度L”编辑框输入自定义的螺钉尺寸。 螺钉的定位点和旋转角既可以在相应的编辑框输入数值,也可以

6、单击“光标拾取”按钮,用鼠标在屏幕上确定。,(5)确定绘制螺钉的其他参数 因为螺钉的中心线可能与部件图上已有的中心线重合,所以提供了“绘制中心线”切换开关。当该开关处于打开状态时绘制中心线。 对话框右下角的三个颜色块是确定三种线型颜色的图像按钮,单击之后弹出AutoCAD标准颜色对话框,选择一种颜色之后,相应的图像按钮的颜色随之改变。图像按钮的含义,在其左侧用text(文本)控件辅助说明。(6)绘制螺钉 因为4种螺钉只是头部不同,因此编写了4个分别绘制每种螺钉头部的函数和一个绘制螺柱的函数。前者调用后者,单击“OK”按钮,即可完成整个螺钉的绘制。,13.1.2 定义对话框文件【例13-1】 定

7、义绘制多种螺钉命令的对话框定义文件。/主对话框的名字是“main_dlg”,共有两个行(row) main_dlg:dialoglabel=确定螺钉种类:;:row /第一行开始,该行有一个加框列和一个列表:boxed_column /加框列开始,该列有两行,每行有两个图像按钮label=“选择螺钉种类:”;:row /列内第一行开始,该行有两个图像按钮:image_button /图像按钮1color=-2; width=15;,aspect_ratio=0.66;key=screw_0;:image_button /图像按钮2color=-2;width=15;aspect_ratio=0

8、.66;key=screw_1;/列内第一行结束:row /加框列内第二行开始,该行有两个图像按钮:image_button/图像按钮3color=-2;width=15;aspect_ratio=0.66;key=screw_2;,:image_button/图像按钮4color=-2;width=15;aspect_ratio=0.66;key=screw_3;/加框列内第二行和加框列结束 :list_boxlabel = 螺钉种类; /列表开始list=GB/T 65-2000nGB/T 68-2000nGB/T 5780-2000nGB/T 70.1-2000;/初值key = s_t

9、ype; width=15; fixed_width=true;/列表结束 /第一行结束,:row /第二行开始,该行有两个按钮和两个间隔spacer_1; /第一个间隔:buttonlabel=继续;key=accept; is_default=true;fixed_width=true; /继续按钮:buttonlabel=“退出”; key=cancel;fixed_width=true; /退出按钮spacer_1; /第二个间隔/第二行结束,以上两个按钮的关键字只能是accept和cancel。 /“main_dlg”主对话框定义结束,/子对话框的名字是“children_dlg”,

10、共有两个行(row)children_dlg:dialog label=确定螺钉参数;:row /第一行开始,该行有一个图像和两个列表:imagecolor=-2; width=22;aspect_ratio=0.6;key=id_img;/图像:list_boxlabel = “螺钉大径,fixed_height=true;/大径列表结束:list_boxlabel = 螺钉长度/加框列,有两个编辑框和一个按钮,:edit_boxlabel = “定位点,:buttonlabel = 光标拾取;key = p_a;ok_cancel;/“OK”和“Cancel”按钮行/第一列结束:colum

11、n/第二列开始,该列有两个加框列:boxed_column/第一个加框列,该列有一个切换开关和两个编辑框:togglelabel=自定义尺寸;/切换开关key=user_dim;value=0;:edit_boxlabel = 自定义大径,:edit_boxlabel = 自定义长度,:row/加框列内第二行:textvalue=细实线颜色:;:image_buttoncolor=4;height=2;key=tcolor;:row/加框列内第三行:textvalue=粗实线颜色:;:image_buttoncolor=5;height=2;key=scolor; /第二个加框列结束/第二列结

12、束 /第二行结束/子对话框” children_dlg”结束/对话框文件结束,13.1.3 定义AutoLISP程序源文件 1. 函数说明 (1) screw:绘制螺钉主函数,定义名字为screw的AutoCAD命令。 (2)initdlg1:初始化主对话框函数。 (3)initdlg2:初始化子对话框函数,螺钉种类s_t是该函数的参数。 (4)f_img:初始化图像函数,将幻灯片显示到图像上。图像的关键字key和包括路径的幻灯片文件名是该函数的参数。 (5)c_c:获取AutoCAD标准颜色函数 (6)c_img:初始化颜色图像按钮函数,设置图像按钮的颜色。图像按钮关键字key和颜色colo

13、r是该函数的参数。 (7)f_stype:螺钉种类列表的动作函数,选择列表的某一项时,相应的图像按钮同时被选中。 (8)f_user:自定义尺寸切换开关的动作函数,若该切换开关为开,禁用标准尺寸列表,允许用户输入任意尺寸,否则,只能从标准尺寸表选择参数。切换开关的状态user_md是该函数的参数。,(9)getdata:获取所有控件当前值的函数。(10)drarscrew:绘制螺钉函数。螺钉种类s_t、大径d、长度l、定位点p0、旋转角alf、中心线状态cen_md、中心线颜色cc、细实线颜色tc、粗实线颜色sc是该函数的参数。(11)drawwhorl:绘制螺钉本体(不包括头部)的函数。螺钉

14、种类s_t、定位点p0、大径d、长度l、旋转角alf、中心线状态cen_md、中心线颜色cc、细实线颜色tc、粗实线颜色sc是该函数的参数。2. 变量说明 sdt:对话框的状态、s_t:螺钉种类、d:螺钉大径、l:螺钉长度、s_d_list:螺钉大径表、s_l_list:螺钉长度表、p0:插入点、x和y:插入点的坐标、alf:旋转角、d_n:大径序号、l_n:长度序号、cc:中心线颜色、tc:细实线颜色、sc:粗实线颜色、user_md:自定义尺寸状态、d1:自定义大径、l1:自定义长度、cen_md:中心线状态。,3. 源程序代码【13-1】定义以对话框为界面绘制多种螺钉的命令,命令名为“S

15、CREW”,需装人13-1.dcl文件。;AutoLISP源程序代码(defun c:screw(/ sdt d l x y p0 alf d_n l_n cc tc sc user_md d1 l1 cen_md); 初始化变量、标准大径表和标准长度表 (setq sdt 2 s_t 0 d 10 l 50 x 200 y 100 alf 0 d_n 5 l_n 7 cc 3 tc 4 sc 5 user_md 0 d1 10 l1 50 cen_md 1 p0 (list x y) (setq s_d_list (list 1.6 2 2.5 3 4 5 6 8 10 12 14 16 20) (setq s_l_list (list 2 2.5 3 4 5 6 8 10 12 14 16 20 25 30 35 40 45 50),

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号