dcl驱动程序
输电塔防坠落装置放输电塔防坠落装置放样与绘样与绘图模块化设计

输电塔防坠落装置放输电塔防坠落装置放样与绘样与绘图模块化设计摘要:基于AutoCAD2002软件平台,应用AutoLisp编程语言对CAD系统进行二次开发。
本设计完成了输电塔防坠落装置的参数绘图功能模块,实现了自动化绘图的功能。
从而为防坠落装置的放样缩短了工作量,提高了工作效率同时减少了放样差错率。
关键词:AutoCAD;AutoLisp;防坠落装置;参数化绘图随着近几年输电行业的发展,输电塔的设计,放样,加工慢慢趋于人性化和多样化,像呼高比较高的输电角钢塔开始增设塔身爬梯(设护笼),并在一定高度增设休息平台,出于安全考虑,在铁塔脚钉主材线上增设防坠落装置,贯穿整个塔身和横担,而本文分析的就是铁塔的防坠落装置。
现阶段,电力输电塔有角钢塔、钢管塔、钢管杆等等,角钢塔一般可用于10kV~800kV的输电线路工程,钢管塔主要用于500kV输电线路及以上,而钢管杆主要用于110kV输电线路及以下,角钢塔设计在输电线路的比例非常高,而角钢塔又包含有单拼角钢塔、双拼角钢塔、四拼角钢塔,而铁塔防坠落金具从最先的在角钢主材上开孔连接,到现在比较通用的夹板连接,更高形式用在高电压等级的铁塔中的轨道式防坠落装置。
非特高压线路的铁塔一般只用夹板式连接,因轨道式安装困难、且成本较高。
单主材角钢塔的防坠落装置一般用夹板式,竖直方向从下到上安装顺序依次为:联板—U型挂环—液压型耐张线夹—GJ-50钢绞线—UT楔型耐张线夹—联板;水平方向从左到右安装顺序依次为:联板—U型挂环—液压型耐张线夹—GJ-50钢绞线—UT楔型耐张线夹—联板。
我公司从事状坠落装置的生产加工及配套安装,对于这种简易式固定夹板的加工必须先放样取得样板后交给车间加工,而防坠落装置上的其他构件不需要加工,直接外购就可以了。
从上图中可以看出,钢板的放样,除了主材肢宽(用字母K表示)不确定之外,其他都是图纸确定好的,而主材肢宽的大小主要是取决夹板所安装的位置,实际安装过程中,防坠落装置从铁塔底部到顶部全部要安装,主材肢宽K理论上包括所有角钢的肢宽,放样过程中间包含大量的计算,放样繁琐,效率低下,而且容易出错,施工现场售后经常反馈内外夹板孔位有偏差,无法穿插螺栓,导致成品报废处理,必须重新放样加工,再运往施工现场,浪费额外的人力、物力、财力。
2对话框驱动及应用实例

2)等腰梯形对话框驱动程序(dytx.lsp)
(defun c:tx (/ id)
(setq id (load_dialog "d:\\shili\\dytx"))
(if (< id 0) (exit))
(if (not (new_dialog "dytx" id)) (exit))
(image1 "tx1" "d:\\shili\\dytx")
功能:开始对话框并接受用户输入。在调用 该函数之前,你必须通过(new_dialog)函数来 初始化。同时这个对话框必须在一个动作表 达式或一个返回函数调用(done_dialog)函数之 前,一直保持激活状态。
17) start_image函数
格式:(start_image 控件操作名)
功能:在图像控件中开始建立图像。应当与 函数(end_image)成对使用,在这两个函数之 间可以调用(fill_image), (slide_image)和 (vector_image)等函数建立图像。
(done_dialog)") (start_dialog) (unload_dialog id) (if (> what 0) (draw_zdbx n r flag)) );end
带圆正多边形绘图及数据读取函数
(defun draw_zdbx (n r flag)
(setq bp (getpoint "\nBase point:"))
} ok_cancel; }
2) 对话框驱动程序设计(htf.lsp)
例2、 带圆正多边形对话框驱动
1) 对话框设计程序(zdbx.dcl)
ObjectARX开发环境下的AutoCAD对话框设计

袁梅李亚萍张竟
(武汉大学城市建设学院,湖北 武汉 430072)
摘要:在ObjectARX开发环境下,AutoCAD支持两种格式的对话框:PDB对话框和Windows机制的对话框。从简单实例出发,本文介绍了这两种格式的对话框设计。
关键词:ObjectARX;AutoCAD;PDB;MFC;对话框
}
以上只给出了主调用函数drive_main()和回调函数print_cb()、ok_cb()的部分代码,相当于ObjectARX应用程序中的用户程序主体函数部分,Mypdb.cpp中头文件部分、函数声明部分和接口函数部分和一般的ObjectARX应用程序要求相同,不再写出。必须注意,头文件中一定要有#include“adsdlg.h”。
Microsoft基础类库(MFC)给软件开发者提供了一种便捷快速建立标准的用户界面的方法。ObjectARX开发环境也提供了一系列基于MFC的用户界面类,我们可以使用这些类设计Windows风格的对话框。使用Windows对话框的ObjectARX应用程序将使自己的界面与AutoCAD内建对话框界面完全一致,且可与其它Windows应用程序紧密集成在一起,共享Windows的各种资源,而且程序的维护也非常方便。在ObjectARX应用程序中使用MFC最明显的优点是可以充分利用MSVC(Microsoft Visual C++)开发环境提供的先进技术和工具,实现程序界面的可视化设计。Windows对话框也是Autodesk极力推荐开发者使用的对话框。
在CAD软件开发中,对话框的设计是软件开发者非常关心的问题之一。AutoCAD除了使用命令行与用户进行交互外,还可使用对话框。对话框是一种边界固定的窗口,也是一种最先进、最流行的人机交互界面。运用对话框可以方便地实现程序设计时的数据传输和信息传输,,所以在当今的几乎所有的软件都要用到对话框界面与用户交流。在CAD的二次开发中,可以采用两种方式使用对话框技术:,一种是PDB格式,即使用AutoCAD系统本身提供的可编程对话框技术,另一种是使用Windows机制的对话框设计技术。
2023年dwg是什么文件格式

2023年dwg是什么文件格式2023年dwg是什么文件格式DWGAutoCAD创立的一种图纸保存格式,已经成为二维CAD的标准格式,浩辰CAD 及很多其他CAD为了兼容AutoCAD,也直接使用DWG作为默认工作文件。
DXFCAD的另一种图形保存格式,主要用于与其他软件进行数据交互。
保存的文件可以用记事本打开,看到保存的各种图形数据。
DWTCAD模板文件,可在新建图形时加载一些格式设置,除CAD提供的模板文件外,自己也可以创建符合自己需要的模板文件,可以直接替换CAD自带的模板文件,也可以重新命名。
DWF用与网络交换的图形文件格式,可以用发布功能或DWF虚拟打印机输出,用CAD无法打开,但可以用AutoCAD提供的DWF浏览器查看。
在AutoCAD高版本和浩辰CAD中提供了DWF参考底图功能,可以将DWF作为底图插入到图纸中,并可以进行捕捉辅助定位其他图形。
MNU、MNC、MNL、MNS是CAD低版本使用的菜单文件,高版本也可以加载。
其中MNU使用较多,是菜单的源代码,可以直接用记事本编辑,各类专业软件和插件通常利用MNU文件来加载菜单。
CUICAD高版本使用的自定义界面文件,可以在CAD和专用工具编辑,无法直接用记事本打开。
AutoCAD和浩辰CAD高版本支持此类文件,在加载MNU文件后会自动生成CUI文件,SHXAutoCAD、浩辰CAD等CAD采用的字体文件,也叫形文件,其源码文件为__.SHP,可以自行定义后在AutoCAD中编译成SHX文件。
SHX文件分三类,一类是符号形,保存了一些用于制作线型或独立调用的符号;一类是普通字体文件,支持字母、数字及一些单字节符号;一类是大字体文件,支持中文、日文、韩文等双字节文字。
PATAutoCAD、浩辰CAD等CAD采用的填充图案文件,纯文__件,可以用记事本编辑。
可以自己编写或将收集的PAT文件复制粘贴到CAD的填充目录或填充文件中。
LINAutoCAD、浩辰CAD等CAD采用的线型文件,可定义虚线点划线等各种线型。
AutoLISP Visual LISP教程《第七章》

对已编译函数直接引用,而不是引用函数名. ① 对已编译函数直接引用,而不是引用函数名.该功能可提高代码的运行速 度并防止在运行时对函数的重定义. 度并防止在运行时对函数的重定义. 去掉函数名使得已编译代码更安全, ② 去掉函数名使得已编译代码更安全,减少程序的长度和缩短程序的加载时 间. 去掉所有局部变量名并对其直接链接引用,同样使得已编译代码更安全, ③ 去掉所有局部变量名并对其直接链接引用,同样使得已编译代码更安全, 并减小程序的大小和加载程序所用的时间. 并减小程序的大小和加载程序所用的时间.
2. 确定要编译的 确定要编译的LSP源文件 源文件
如果源文件在AutoCAD 支持的搜索路径下 , 可以不包括路径名 . 选择 如果源文件在 AutoCAD 菜 单 Tools→Options , 然 后 打 开 Files 选 项 卡 并 选 取 Support File → Search Path,可设置文件搜索路径. ,可设置文件搜索路径. 例如,已设置文件搜索路径为"d:\user",就可以用表达式(vlisp-compile 例如, 已设置文件搜索路径为 , 就可以用表达式( 'st "sample.lsp")编译驱动器 的"\user1"目录下的文件 编译驱动器D的 目录下的文件"sample.lsp". . 编译驱动器 目录下的文件 如果"d:\user"不是文件搜索路径,那么,在指定源文件时必须包括完整的 如果 不是文件搜索路径,那么, 不是文件搜索路径 路径名,如: 路径名, (vlisp-compile 'st "d:\\user\\example.lsp") 或 (vlisp-compile 'st "d:/user/ example.lsp")
可视opendcl的学习笔记

ObjectDCL学习笔记(1)初识ObjectDCLAutoLisp简洁、易学、功能强大,可满足用户的绝大多数需求。
对一般的AutoCAD用户来说,AutoLisp 是进行开发的首选语言。
但AutoLisp使用的对话框编程语言DCL和PDB却实在不敢恭维,其功能、界面、编程方法都不能令人满意。
ObjectDCL应运而生。
1.安装和设置ObjectDCL1.1运行ObjectDCL文件包中的Setup.exe,一路Next下去,ObjectDCL就被安装到C:\Program Files\3rd Day Software\ObjectDCL文件夹中。
1.2在安装ObjectDCL的文件夹中,有ObjectDCL.arx和ObjectDCL2004.arx两个arx库文件。
ObjectDCL.arx用于Acad2000/2002,ObjectDCL2004.arx用于Acad2004。
为方便编程,把它们拷贝到Acad 的支持搜索路径中,或直接把安装ObjectDCL的文件夹设置为Acad的支持搜索路径。
1.3创建一个准备存放ObjectDCL编程结果的文件夹,假设为D:\MyOdcl。
把D:\MyOdcl也设置为Acad的支持搜索路径。
现在就可以开始学习ObjectDCL了。
2.启动和认识ObjectDCL在安装ObjectDCL的文件夹中,有个ObjectDCL.exe文件,它就是ObjectDCL的主程序。
运行ObjectDCL.exe,即进入ObjectDCL编辑环境。
ObjectDCL的主窗口很简洁,各菜单项的意义也很清楚,且大部分都在工具条和4个停靠子窗口中有对应的功能,而View菜单是ObjectDCL工具条和下面要说明的4个工具停靠子窗口的开关。
工具条中的第一个图标对应的是工程菜单Project的前5个菜单项,用来添加对话框窗体;工具条中的最后一个图标(照相机)对应的是工程菜单View/Edit Picture Folder菜单项,用来管理图形资源文件夹。
dcl plc课程设计
自控系统及PLC综合设计专业班级:学生姓名 :学号 :指导老师:用PLC程序控制电动机的启动、正反转、停止一、设计目的1、掌握可编程序的控制器的操作方法。
2、熟悉基本指令与应用指令以及实习设备的使用方法。
3、掌握变频器的主要参数设置。
4、掌握PC机、PLC和变频器之间的通信技术。
5、掌握WinCC组态软件的使用。
6、理论联系实际提高学生分析问题和解决问题的能力。
二、设计任务1、将变频器和PLC通过导线进行连接。
通过变频器控制面板进行参数设置。
根据I/O的定义,编写PLC程序,实现通过操作面板控制交流异步电动机启动、停止、正转、反转切换,并监视电动机的故障和运行状态。
2、做WinCC与PLC相连,实现在WinCC上对变频器的监控。
除了控制电动机启动、停止、正反转切换,监视电动机的故障和运行状态外,还要在WinCC画面上进行频率给定以及对实际频率的监视。
三、设计方法1、通信方式有两种:(1)、通过MPI通信实现。
(2)、通过Profibus-DP实现。
2、控制方式两种:(1)、本地的操作面板控制。
(2)、远程的WinCC画面监控。
四、设计原理图五、设计说明及注意事项1.本实验中,继电器KA4、KA5的线圈控制电压为 24V DC,其触点5A 220V AC(或5A 30V DC);接触器KM5、KM6的线圈控制电压为220V AC,其主触点 25A 380V AC。
2.三相异步电动机的正、反转控制是通过正、反向接触器 KM5、KM6改变定子绕组的相序来实现的。
其中一个很重要的问题就是必须保证任何时候、任何条件下正反向接触器 KM5、KM6 都不能同时接通,否则会造成电源相间瞬时短路。
为此,在梯形图中应采用正反转互锁,以保证系统工作安全可靠。
3.接线和拔线时,请务必断开QF5;4.QF5合上后,请不要用手触摸接线端子;5.请务必不能将导线一端接入交流电源、交流电机、KM5、KM6 的接线端子上,另一端放在操作台上而合上QF5。
利用对话框语言DCL在CAD二次开发中对LSP语言编写的程序进行可视化管理的探讨
利用对话框语言DCL在CAD二次开发中对LSP语言编写的程序进行可视化管理的探讨摘要:随着AutoCAD 新版本的不断推出,其用户也越来越多,其用户涉及各行各业,但对AutoCAD 本身而言,它的通用性很强,而专业性并不强,因此对其进行二次开发就非常有必要,而且AutoCAD 也给用户留出了二次开发接口,由于支持AutoLISP、ADS、ARX与脚本编程,用户完全可以按照自己的要求对AutoCAD 进行定制,这也就是所说的利用AutoCAD提供的编程接口对其进行二次开发。
这也是AutoCAD应用广泛的魅力所在。
但是随着程序开发的越来越多,对程序的管理必须提到议事日程。
本文利用对话框语言DCL为例对CAD二次开发中的LSP程序管理的一点探讨。
关键词:AutoCAD AutoLISP DCL语言一、AutoLSP和DCL语言简介1.1 AUTOLSP简介LSP(List Processing Language)它产生于50年代后期,是一种资格最老的程序设计语言之一。
LSP语言是一种计算机的表处理语言,是在人工智能学科广泛应用的一种程序设计语言。
AutoLISP语言是嵌套于AutoCAD内部,将LISP语言和AutoCAD有机结合的产物。
使用AutoLISP可直接调用几乎全部AutoCAD命令。
AutoLISP语言既具备一般高级的基本结构和功能,又具有一般高级语言所没有的强大的图形处理功能,是当今世界上CAD软件中被广泛采用的语言之一。
AutoLISP语言能力虽强,但可视化性能差,在AutoLISP程序中配合对话控制语言(Dialog Contro Language,简称DCL语言),实现了程序的人机互动,使AutoLIS程序的应用更加人性化。
1.2DCL语言简介对话框是现今最流行的人机互动面接口。
AutoCAD从R12起,引入了可编程对话框(Programmable Dialog Box,简称PDB)。
DCL说明书
(7) 窗口 说 明
窗口编号 内容 设 定值1(SV1)
1-1
说明
*此窗 口设 置第 一个 设定值 *设 置 范围 :传 感器 下限~传 感器 上限 *出厂 值为0
AT自整 定 2-1
*此 窗口设 置仪 表自 整定 功能 *当 处 于自 整定 期间,仪 表AT指示 灯闪 亮
*自 整 定结 束后,P,I, D,A RW参 数自 动 存 储
传感器下限传感器上限出厂值为21222324252627210211输出比例带设置积分时间设置微分时间设置抗积分饱和输出比例周期设置加热器断线报警回路断线报警范围回路断线报警时间darw此窗口设置仪表自整定功能当处于自整定期间仪表指示灯闪亮自整定结束后参数自动存储10此窗口设置系统比例带设置为为开关控制设置范围摄氏度出厂值为摄氏度200此窗口设置系统积分时间设置为取消积分设置范围50此窗口设置系统微分时间设置为取消微分设置范围50此窗口设置系统抗积分饱和设置范围出厂值为30此窗口设置输出比例周期直流输出时无此窗口设置范围出厂值固态输出为秒继电器输出为此窗口设置报警动作点设置范围参见出厂值为摄氏度00a此窗口设置加热器端线报警设置范围出厂值为此窗口设置回路端线报警时间设置范围分钟出厂值为分钟此窗口设置回路端线报警设置范围摄氏度出厂值为摄氏度28在高低温控制中左边的测试高温区温度右边的测试低温区温度dcldcl再温湿度控制中左边的测试温度右边的测试湿度dcldcldcl
- 1 99 . 9 ~ 8 50 . 0摄 氏 度 - 2 00 ~ 8 5 0摄 氏 度
Jpt100
-199.9~500.0摄氏度 -2 00 ~ 5 0 0摄 氏 度
4-20mA DC 0-20mA DC
-1999~9999 -1999~9999
计算机应用基础:安装操作系统
Step4:选择C盘作为系统盘
Step5:安装系统 此时会弹出一个询问框,提示用户即将开始安装系统。确认还原分区和映像文件无误后,单击“确定”。 接着系统会自动安装 Windows7,操作完成后自动重启计算机即可进入GHost win7系统,如图所示。
重装操作系统,GHOST,与安装是一样的操作步骤 现在的操作系统基本上兼容所有硬件的驱动程序,重启计算机后绝大部分的硬件驱动WINDOWS都能自 动识别 硬盘安装
安装操作系统
C 目录 ONTENTS 任务引入
知识链接
任务实施
学后测评
任务引入
在完成计算机的硬件安装后,我们需要给计算机安装操作系统后才能使用计算机。操作系统有 Windows、 DOS等,其安装方法有光盘安装法、硬盘安装法、U盘安装法等,各种安装方法各有其优缺点,安装哪种操作系 统比较好呢?采用哪种方法安装更好呢?
* 分区:将硬盘分为C、D、E这样的盘,其中C盘是主分区,操作系统只有安装在主分区 上才能正常启动 * 格式化:对硬盘或分区建立文件系统,只有建立文件系统之后才能使用硬盘和分区 * 常见的文件系统
FAT32 NTFS EXAT
2.用U盘安装 Windows7
* 启动盘:又称紧急启动盘(Emergency Startup Disk)或安装启动盘。启动盘是在操作系统 制作的,它只起到“引导”启动“的作用。如进入BIOS、DOS界面和进入到操作系统的硬盘 起始点,这个程序占用空间较小,可以复制、可放进光盘、移动硬盘、U盘。
知识链接
一、认识计算机操作系统 1.认识计算机系统的层次结构 计算机系统由硬件和软件两大部分所构成,没有软件的计算机称为“裸机”,不能进行任何工作。硬件是计 算机系统的物质基础,是软件的载体,软件则使硬件有了使用价值,二者相辅相成,缺一不可。按功能细分,计 算机系统可分为5个层次结构,包括用户、应用软件、支援软件、系统软件、硬件系统。因此,在硬件安装完成 后,应该由内层到外层依次进行软件安装。 2.认识操作系统 操作系统是方便用户管理和控制计算机软硬件资源的系统软件或程序集合。从用户角度来看,操作系统可 以看作是对计算机硬件的扩充;从人机交互方式来看,操作系统是用户与机器的接口。操作系统在整个计算机 系统中起着承上启下的作用,可以从两方面来认识:对内,操作系统有管理计算机系统的各种资源、扩充硬件 的功能;对外,操作系统可以提供良好的人机界面,方便用户使用计算机。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
20112011-1-2
AutoCAD二次开发——DCL对话框基础 AutoCAD二次开发——DCL对话框基础
12
6.下拉选单 popup_list: 6.下拉选单
用途:功能类似list_box,正常状况属于收缩单 用途 : 功能类似 , 一列状态。 右侧有一向下箭头, 选取后, 一列状态 。 右侧有一向下箭头 , 选取后 , 会拉下一 列选单供用户选取。 列选单供用户选取。 实例6: 实例 :
AutoCAD二次开发 AutoCAD二次开发 DCL对话框基础 DCL对话框基础
标准默认的DCL单一对象 。 设计好 单一对象。 设计好DCL对 标准默认的 单一对象 对 话画面后, 真正让对话框各DCL对象动起来的 话画面后 , 真正让对话框各 对象动起来的 “幕后高手”就是AutoLISP ,否则,光有漂亮 幕后高手”就是 否则, 是没有用的。 的DCL是没有用的。 是没有用的
20112011-1-2 AutoCAD二次开发——DCL对话框 AutoCAD二次开发——DCL对话框 基础 17
2.显示特定的对话框(new_dialog
20112011-1-2
AutoCAD二次开发——DCL对话框基础 AutoCAD二次开发——DCL对话框基础
4
DCL程序设计的基本结构(实例)
name:dialog{ name:dialog{ label=“对话框DEMO”; label=“对话框DEMO”; :edit_box{ label=“编辑框”; label=“编辑框”; edit_width=12; key=“edit_1”;} :button{ label=“按钮”; label=“按钮”; width=8; key=“button_1”;} ok_cancel; }//end dialog
按钮 编辑框 图像按钮 列表框 下拉列表 单选按钮 滑动条 切换开关
7
AutoCAD二次开发——DCL对话框基础 AutoCAD二次开发——DCL对话框基础
1.按钮button 1.按钮 按钮button
用途: 以按钮上的文字提示用户, 用途 : 以按钮上的文字提示用户 , 一触动此按 钮要执行某一动作。 钮要执行某一动作。 实例1: 实例 :
20112011-1-2 AutoCAD二次开发——DCL对话框基础 AutoCAD二次开发——DCL对话框基础 2
4.适时的增加批注,将程序更具可读性、 4.适时的增加批注,将程序更具可读性、 学习性及完整性,DCL程序中的批注有 学习性及完整性,DCL程序中的批注有 两种方式(请注意,不能用AutoLISP的 两种方式(请注意,不能用AutoLISP的 “;”分号)。 ;”分号)。 ※ 第一种方式:加上“//”两个斜线, 第一种方式:加上“//”两个斜线, 双斜线后的一行文字为批注。 如: //本DCL设计时间2007/6 //本DCL设计时间2007/6 //设计者:四川理工学院 //设计者:四川理工学院 //欢迎学习 //欢迎学习
驱动程序的结构框架
20112011-1-2
AutoCAD二次开发——DCL对话框 AutoCAD二次开发——DCL对话框 基础
16
1.加载对话框DCL文件(load_dialog Dclfile) 加载对话框DCL文件 文件( Dclfile) 使用对话框的第一件事就是通过load_dialog函数 使用对话框的第一件事就是通过load_dialog函数 加载DCL文件(可省略扩展名),该函数可包含 加载DCL文件(可省略扩展名),该函数可包含 多个对话框。若加载成功,则返回一个大于零的 正整数值(假设存入变量Dcl_id中);否则返回 正整数值(假设存入变量Dcl_id中);否则返回 一个负整数,这个Dcl_id在随后调用new_dialog和 一个负整数,这个Dcl_id在随后调用new_dialog和 unload_dialog函数时可用作被装入的DCL句柄使 unload_dialog函数时可用作被装入的DCL句柄使 用。同时可以检测到该值不大于零时,可以及时 地显示出错信息并返回系统。 如:(setq 如:(setq dcl_id (load_dialog “*.dcl”)) *.dcl” 若加载成功,返回大于0的值,否则返回小于0 若加载成功,返回大于0的值,否则返回小于0的 值。
20112011-1-2
AutoCAD二次开发——DCL对话框基础 AutoCAD二次开发——DCL对话框基础
9
3.单选框 radio_button: 3.单选框
用途:需求功能或数据是多选一时。 用途:需求功能或数据是多选一时。 实例3: 实例 :
20112011-1-2
AutoCAD二次开发——DCL对话框基础 AutoCAD二次开发——DCL对话框基础
20112011-1-2 AutoCAD二次开发——DCL对话框基础 AutoCAD二次开发——DCL对话框基础 6
DCL控件的类型及其相应的控 DCL控件的类型及其相应的控 件
操作控件 1 2 3 4 5 6 7 8
20112011-1-2
button edit_box image_button list_box popup_list radio_button slider toggle
10
4.切换开关(复选框) toggle: 4.切换开关 复选框) 切换开关(
用途:控制此定义的功能或选项是“开”或 当开关内出现打勾记号时, 响应值为“ , “ 关 ” 。 当开关内出现打勾记号时 , 响应值为 “ 1”, 反之,则为“ 。 反之,则为“0”。 实例4: 实例 :
20112011-1-2
20112011-1-2
AutoCAD二次开发——DCL对话框基础 AutoCAD二次开发——DCL对话框基础
13
DCL驱动程序 DCL驱动程序(AutoLISP) 驱动程序(AutoLISP) ——AutoLISP控制DCL的关键技术 AutoLISP控制 控制DCL的关键技术
对于一个完整的程序来说,只有漂亮的对 话框界面是不够的。 AutoCAD的对话框驱动程序可由AutoLISP AutoCAD的对话框驱动程序可由AutoLISP 完成,为了便于学习和理解驱动程序的主 要构造及解决方法,我们以AutoLISP程序 要构造及解决方法,我们以AutoLISP程序 来介绍AutoCAD中的对话框处理函数。 来介绍AutoCAD中的对话框处理函数。
20112011-1-2 AutoCAD二次开发——DCL对话框基础 AutoCAD二次开发——DCL对话框基础 1
DCL基本语法结构
1.以文件形态存在的DCL程序(ASCLL文 1.以文件形态存在的DCL程序(ASCLL文 件),其扩展名最好是.DCL。 ,其扩展名最好是.DCL。 2.编写的环境不挑剔,只要是一般的文本 2.编写的环境不挑剔,只要是一般的文本 编辑软件均适用(如记事本Notepad 编辑软件均适用(如记事本Notepad、 Notepad、 Wordpad、 Wordpad、Visual Lisp等)。 Lisp等)。 3.一个DCL文件内,可以设计多组的 3.一个DCL文件内,可以设计多组的 dialog对话界面如同一个LISP程序内可以 dialog对话界面如同一个LISP程序内可以 设计多个可执行命令一样。
AutoCAD二次开发——DCL对话框基础 AutoCAD二次开发——DCL对话框基础
11
5.图像按钮 image_button: 5.图像按钮
用 途 : 与 button 按 钮 功 能 类 似 , 差 异 在 于 image_button 的框内提示图形可以是幻灯片 的框内提示图形可以是幻灯片SLD、 、 填满单一色块、或绘制示意线。 填满单一色块、或绘制示意线。 实例5: 实例 :
功能简述
unload_dialog new_dialog start_dialog done_dialog action_tile
20112011-1-2
释放DCL 释放DCL 激活DCL对话框画面 激活DCL对话框画面 将控制权交给DCL 将控制权交给DCL 终止显示当前DCL对话框 终止显示当前DCL对话框
20112011-1-2
AutoCAD二次开发——DCL对话框基础 AutoCAD二次开发——DCL对话框基础
3
※ 第二种方式:以“/*”及“*/”之间夹 第二种方式:以“/*”及“*/”之间夹 带的方式,中间的文字内容不受行数限 制。 如:/* 这是DCL批注测试范例 如:/* 这是DCL批注测试范例 以夹带的方式处理这三行说明 如此一来,才不用在每行前面都 要加双斜线 */
两个最重要的DCL文件 文件 两个最重要的
文件夹下, 文件, 在CAD的SUPPORT文件夹下,有两个重量级的 的 文件夹下 有两个重量级的DCL文件,非常重要, 文件 非常重要, 不要轻易加以修改!以免造成CAD无法正常执行的惨状! 无法正常执行的惨状! 不要轻易加以修改!以免造成 无法正常执行的惨状 1.BASE.DCL 内含 内含DCL的原始定义与整合性 的原始定义与整合性DCL对象定义。 对象定义。 的原始定义与整合性 对象定义 2.ACAD.DCL 内含 内含CAD所用的各个 所用的各个DCL画面,是一个不错的观摩学 画面, 所用的各个 画面 习文件。 习文件。
20112011-1-2 AutoCAD二次开发——DCL对话框基础 AutoCAD二次开发——DCL对话框基础 5
说明: ※ NAME相当于AutoLISP中的defun后定 NAME相当于AutoLISP中的defun后定 义的函数或程序一样。 ※ “:dialog”相当于AutoLISP中的defun函数 “:dialog”相当于AutoLISP中的defun函数 。 ※ “:edit_box”与“:button”都是DCL对象。 “:edit_box”与“:button”都是DCL对象。 ※ “label”、“width”与“edit_width”都是各 “label”、“width”与“edit_width”都是各 对象的属性,属性值设定后,都需要加一个“; ”分号。 ※ 对话框定义结束前,请注意一定至少有 一个“OK”或“Cancel”键。 一个“OK”或“Cancel”键。 ※ 属性key值,相当于各DCL对象的名称 属性key值,相当于各DCL对象的名称 ,如“edit_1”与“button_1”,它们非常重要,是 ,如“edit_1”与“button_1”,它们非常重要,是 LISP与DCL沟通的惟一桥梁,若DCL对象未定义 LISP与DCL沟通的惟一桥梁,若DCL对象未定义 key值,则根本无法用LISP控制信息的设定、取得 key值,则根本无法用LISP控制信息的设定、取得 与修改、变化。