图1 螺纹联接CAD系统的组成框图
1 螺纹联接CAD系统的组成及相关技术
- 螺纹联接CAD系统的组成
- 根据螺纹联接的种类,结合螺纹联接设计与绘图在工程CAD中的应用情况,将螺纹联接的设计及绘制零件图分为四大模块,用框图1表示。
- 螺纹联接CAD的相关技术
- 螺纹联接CAD的技术要点是:
- 软件开发语言:C++语言,AutoLISP,DCL;
- 软件开发平台:AutoCAD2000;
- 软件硬件环境:486 或586 以上微机一台。
- 螺纹联接CAD的技术组成如框图2所示。
图2 螺纹联接CAD的技术组成框图
- 螺纹联接CAD的技术要点是:
2 螺纹联接CAD应用程序设计方法
- 螺纹联接CAD应用程序采用AutoLISP以及C++语言编程
- AutoLISP是一种运行在AutoCAD环境下或称为内嵌在AutoCAD下的LISP编程语言。它具有较强的图形开发功能。该语言与AutoCAD环境融为一体,功能强大,是二次开发的有效工具。利用AutoLISP语言编程可以实现对AutoCAD当前图形数据库进行直接访问和修改,可以随意扩大图形编辑修改功能。可结合国际标准、国家标准、部颁标准或厂标建立标准件及非标准件的图形库,也可结合专业开发各种实用的CAD软件系统,例如本文所研究的螺纹联接CAD系统。利用AutoLISP语言可实现参数化绘图程序设计。因此它是笔者开发本系统所采用的主要语言。不过,由于AutoLISP语言容量有限,且嵌套不能太深,复杂的函数解算宜采用C++语言完成。此外,C++在接口设计、数据读取与转换以及参数化程序设计方面也具有优势。基于此,笔者利用C++语言辅助开发部分参数化绘图程序。
- 根据螺纹联接CAD的组成和功能,利用AutoLISP语言及C++语言编制一个集螺纹联接选型、强度计算、校核计算、绘图为一体的程序模块。最后可根据用户的要求存盘打印设计说明书和零件图。所编制的程序采用模块化思想,尽量显示其可读性、交互性和扩展性。程序流程图如框图3所示。
图3 程序流程图- 采用对话框技术设计用户界面
- 对话框是目前最为流行的一种人机交互界面。它支持以光栅扫描显示器和鼠标为代表的输入设备,向用户提供图形与文本并存的可视化环境,操作自然、简洁。本系统使用户界面尽量傻瓜化,用户只需在提示处输入参数,即可实现零件的设计、校核计算以及自动绘制零件图。界面设计采用DCL(DIALOG ConTROL LANGAAGE),该语言是一种对话框控制语言,不过仅用DCL 语言编制对话框是不够的,还必须编制一个AutoLISP程序来驱动DCL对话框,使对话框中的各个控件具有一定的功能和意义。
- 螺纹设计与绘图采用一体化编程
- 利用数据库、数据文件或全程变量等数据传递方法将螺纹设计及绘图连接起来,当设计符合要求时,可同时绘制相应的零件图。
- 设计结果的处理
- 可以根据用户需要选择存盘或打印。
- AutoLISP是一种运行在AutoCAD环境下或称为内嵌在AutoCAD下的LISP编程语言。它具有较强的图形开发功能。该语言与AutoCAD环境融为一体,功能强大,是二次开发的有效工具。利用AutoLISP语言编程可以实现对AutoCAD当前图形数据库进行直接访问和修改,可以随意扩大图形编辑修改功能。可结合国际标准、国家标准、部颁标准或厂标建立标准件及非标准件的图形库,也可结合专业开发各种实用的CAD软件系统,例如本文所研究的螺纹联接CAD系统。利用AutoLISP语言可实现参数化绘图程序设计。因此它是笔者开发本系统所采用的主要语言。不过,由于AutoLISP语言容量有限,且嵌套不能太深,复杂的函数解算宜采用C++语言完成。此外,C++在接口设计、数据读取与转换以及参数化程序设计方面也具有优势。基于此,笔者利用C++语言辅助开发部分参数化绘图程序。
3 螺纹联接CAD关键技术处理
- 对话框技术与处理
- 在Windows视窗环境下对AutoCAD进行开发时可采用两种方法使用对话框技术,一种是利用Windows的对话框技术,另一种是使用AutoCAD2000英文版提供的可编程对话框技术。笔者采用后者,其对话框的设计步骤是:
- 确定应用程序需要输入的数据;
- 分析需要输入的每一项数据,确定每一项数据使用哪一种控制;
- 根据选定的控件按主次关系和美学观点进行布局;
- 编写DCL文件;
- 编写应用程序处理对话框。
- 在应用程序中使用对话框,首先,用DCL语言定义一个对话框界面:其次,使用AutoLISP程序来驱动该对话框,并完成对话框中各控件对应的操作。
- AutoLISP语言提供了处理对话框的函数,这些函数可以从DCL文件中加载对话框并可以给对话框中的各控件赋初值,获取用户在对话框的输入,还可以定义与用户有关的操作。
- 文件存盘技术
- 用AutoLISP语言编写该程序,最后要求输出一张设计说明书及零件图。要使该说明书以文本形式存盘,AutoLISP语言专门提供一个函数:
- getfiled("selec a txt file" "" "" 1)
- 调用该函数将出现一个对话框,从对话框中选择相应文件夹,在文本框中输入文件名后关闭对话框。于是此函数便返回一个文件名,此文件名就是所输入的文件名。然后用open()函数打开该文件,这样就可以用写入函数write-line()写入数据。
- 文件打印技术
- 可根据用户要求打印设计说明书、零件图及简单的装配图。
- 在Windows视窗环境下对AutoCAD进行开发时可采用两种方法使用对话框技术,一种是利用Windows的对话框技术,另一种是使用AutoCAD2000英文版提供的可编程对话框技术。笔者采用后者,其对话框的设计步骤是: