autolisp在cad二次开发中的应用毕业答辩.ppt_第1页
autolisp在cad二次开发中的应用毕业答辩.ppt_第2页
autolisp在cad二次开发中的应用毕业答辩.ppt_第3页
autolisp在cad二次开发中的应用毕业答辩.ppt_第4页
autolisp在cad二次开发中的应用毕业答辩.ppt_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

2011届本科毕业答辩,付智华 07测绘一班 2011.6.20,应用Auto lisp在AutoCAD 中批量处理图形数据,图层控制 文字样式修改,2019/9/9,3,研究目的,实现CAD的二次开发 提高CAD绘图与用图的效率 利用CAD二次开发,提高CAD批量处理图形数据的功能,一、Auto CAD的二次开发,1.1 CAD二次开发的定义 所谓CAD的二次开发也就是用编程的方法使CAD操作简单化,命令 实用化和出图特色化,从而提高工作效率. 1.2 AutoCAD二次开发技术主要包括两个方面 一方面是对它的功能进行扩充和修改 另一方面,是利用开发工具,编写能够完成特殊任务的自动绘制软件,1.3 CAD二次开发的语言AutoLISP Auto LISP语言是Autodesk公司为用户提供的在AutoCAD平台上进行二次开发的早期语言。 Auto LISP不仅具备一般高级基本结构与功能,而且还具有强大的图形处理功能。由于AutoLISP易于掌握,因此,是AutoCAD用户使用较为广泛的编程语言之一。 1.4 CAD二次开发的工具 1.3.1 Visual Lisp 基础 Visual Lisp 是为加速Auto LISP程序开发而设计的软件工具,它提供了一个完整的集成开发环境。无需单独安装,与 AutoCAD 捆绑安装在一起。 1.3.2 DCL 基础 AutoCAD有自己的一套对话框设计语言,称为对话框控制语言( Dialog Control Language,简称DCL )。,二、Auto Lisp 用于图层控制,2.1 设计的目的 在CAD制图与用图中,当涉及的涂层元素较多时,往往需要关闭某 一图层或者单独打开某一图层,传统的做法是用CAD自带的图层管理器 设置来实现图层控制。这种操作往往比较烦琐,而我们通过 Visual LISP 编程就可以快速实现图层控制。 2.2 设计的思路 编写LISP程序, 选取所需要的图层并识别图层名,打开或锁定该图 层,实现图层的快速控制。,2.3 设计的过程 2.3.1 编写程序 on.lsp 程序 ; 选择物体单独打开其所在图层 (defun c:on (/ ss ent a en lay) (setq ss (ssget) (setq ent (sslength ss) (setq ent (- 1 ent) (command “layer“ “off“ “*“ “y“ “ “) (setq a 0) (while ( = a ent) (setq en (ssname ss a) ;返回选择集中的序号a指定的那个对象的图元名 (setq lay (cdr (assoc 8 (entget en) ;获得被选择物体所在的图层;8是图层的组码; (command “_layer“ “on“ lay “ “) ;打开所选的图层 (setq a (+ 1 a) (princ) ),off.lsp 程序 ; 选择物体关闭其所在图层 (defun c:off (/ ss ent a en lay) (setq ss (ssget) (setq ent (sslength ss) (setq ent (- 1 ent) (setq a 0) (while ( = a ent) (setq en (ssname ss a);返回选择集中的序号a指定的那个对象的图元名 (setq lay (cdr (assoc 8 (entget en);获得被选择物体所在的图层;8是图层的组码;cdr是取得表第一个元素 (if (= lay (getvar “clayer“));获得系统变量的值 (command “_layer“ “off“ lay “y“ “) (progn (command “_layer“ “off“ lay “) (setq a (+ 1 a) (princ) ),2.3.2 运行程序 (1)在LISP编辑器中打开LISP程序 (2)检验程序 调试程序 (3)加载程序 (4)程序运行,2.3.3 成果显现,三、Auto LISP处理文字样式,3.1 设计的目的 能对AutoCAD中的TEXT实体进行编辑 可修改文字的字型、高度、宽度、角度、倾角属性 单选时可修改文本串 采用DCL对话框界面,使用方便,提高效率,3.2 设计的过程 3.2.1 对话框的设计 a 设计程序 word.dcl b 对话框的窗口,3.2.2 文字样式对话框驱动 a 编写驱动程序 word.lsp b 驱动过程 将 word.lsp 和word.dcl 文本拷贝到CAD的support中 在LISP编辑器中打开word.lsp文本 检查并修改word.lsp程序 加载word.lsp程序 运行word.lsp程序,c 成果显现过程,1 修改字体高度和宽度,2 编辑文字内容,d 成果显现,四 自制菜单的生成,4.1 目的 实现程序的快速加载 4.2 自制菜单的生成过程 (1)编写&.mnu 程序 (2)菜单的载入 (3)菜单的生成 4.3 菜单的使用 以“图层控制”为例,操作此过程,五 总结,本次设计是实现了Auto Lisp语言用于CAD的二次 开发,主要是在图层控制和修改文字样式这两方面的 应用。Auto Lisp语言在图层控制中实现了快速的打开 或者锁定所需图层的目的,操作简便,效率高 。文字 样式修改的设计,是利用Auto Lisp语言与DCL对话框 实现了编辑单个或者成组TEXT实体,修改单个文本串 的目的,充分说明利用Auto Lisp语与DCL语言可以对 Auto CAD进行十分有效的二次开发 。

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论