下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
AutoCADR12两个新增命令在编程中的应用
摘要:AutoCADR12版新增加了BHATCH命令来补充和加强HATCH命令功能。关键词:AutoCADR12命令应用AutoCAD中填充阴影线图案(PAT文件)是一项十分有用的功能,在各种图形中都可能用到。我们在开发工程地质CAD软件时,经常要在图面上的指定区域内填充岩性花纹图案,而且填充区域不规则。在AutoCAD低版本中,填充花纹命令仅有一条HATCH,使用HATCH时,需选择围成闭合区域的有关实体,若实体选择不全则会使填充出现混乱,特别是当填充区域由若干线、弧、园等实体交叉组合而成时,就要沿闭合区域的各点绘制一条PLINE线,然后以这条线作为填充边界线,在填充完成以后还要将这条线删除,比较麻烦。AutoCADR12版新增加了BHATCH命令来补充和加强HATCH命令功能。BHATCH命令以窗口交互方式执行,它将自动以多义线来定义边界,然后忽略全部或部份不是边界的区域,完成填充后自行删除多义线,还可以使边界内的图形和文字避开填充图案。简言之,填充时只需要用鼠标器点取闭合区域内一点就可完成填充。为了更方便地使用HATCH和BHATCH这两个命令,在R12版中还新增加了一条命令BPOLY。使用BPOLY可迅速生成一封闭曲线的边界,即通过点取封闭区域内任意一点形成本区域的边界线,根据返回的边界线可使用HATCH填充花纹图案,也可使用AREA来计算封闭区域的面积和周长。有关这两条命令的操作,可参阅AutoCADR12的使用说明书,通过简单的练习就可以掌握。本文想就如何在AUTOLSP中调用这两个命令进行编程的问题做一简单介绍。BHATCH和BPOLY命令不同于一般的AutoCAD命令,它们是用ADS应用程序开发的,如果想在图形编辑状态下或在AUTOLISP中使用这两个命令,就要在AutoCAD初始化时加载名为ACADAPP的ADS程序,方法是在当前搜索路径上是否有ACAD.ADS文件,这是一个纯文本的ASCII码文件,在这个文件中如有一行为ACADAPP,那么在进入ACAD图形时自动加载ACADAPP,在AutoCAD的Command:提示符下调用AUTOLISP函数(ADS),将得到当前已加载的全部ADS应用程序的信息。如已加载ACADAPP,在“Command:”就可以使用BPOLY和BHATCH。在AUTOLISP语言中,不能像调用一般命令那样用(COMMAND“命令”)来调用BPOLY和BHATCH,而是用(C:BPOLY点)、(C:BHATCH点)来调用,执行(C:BHATCH点)之前要通过SETVAR对几个系统变量进行设置,HPANG是图案填充角度,HPNAME是图案填充名称,HPSCALE是图案填充比例系数。以下是一个简单的填充花纹图案的LISP程序:程序1清单:(setqyf$(getstring(strcat"花纹代号:")));输入花纹代号(setqbl(getreal"\n比例<1>:"));输入比例(if(=blnil)(setqbl1.0));比例约定值为1(setqang(getreal"\n角度<0>:"));输入角度(if(=angnil)(setqang0.0));角度约定值为0(setqpt(getpoint"\n选择区域内任意一点:"));输入区域内任意一点坐标(setvar"hpang"ang);设置填充角度为ang(setvar"hpscale"bl);设置填充比例为bl(setvar"hpname"yf$);设置填充花纹为yf$(whilept;PT为真时执行循环体内程序,否则退出(c:bhatchpt)(setqpt(getpoint"\n选择区域内任意一点:"));输入区域内任意一点坐标继续填充);whilept用程序1填充花纹时,选定点周围不能形成一个闭和区域时,除未填充外也不显示任何信息,因此需要增加一个判断,用程序2来实现。程序2清单:(setqyf$(getstring(strcat"花纹代号:")));输入花纹代号(setqbl(getreal"\n比例<1>:"));输入比例(if(=blnil)(setqbl1.0));比例约定值为1(setqang(getreal"\n角度<0>:"));输入角度(if(=angnil)(setqang0.0));角度约定值为0(setqpt(getpoint"\n选择区域内任意一点:"));输入区域内任意一点坐标(whilept;PT为真时执行循环体内程序,否则退出(setqe(c:bpolypt));得到PT点所在的边界线,(ife;如边界线存在就填充,否则不填充(progn(command"hatch"yf$blange"");填充花纹(command"erase"e"");删除边界线(princ"\n填充完毕");打印填充完毕);progn(princ"\n边界线不存在,不能填充"));if(setqpt(getpoint"\n选择区域内任意一点:"));输入区域内任意一点坐标继续填充);whilept为了更加方便实用,可以编制花纹图案的图标菜单,当提示输入花纹图案时,激活图标菜单。我们在实际运用时,从BPOLY返回的边界实体的各点坐标中计算出一个范围,该范围内的文本实体同时选中,使这些文本避开阴影线图案。以上两个小程序所实现的功能与BPOLY和BHATCH相同,其实际意义不在于此,而是想通过以上介绍,能够将其应用到解决更为复杂的情况上,例如我们在地质CAD软件开发中,使用上述方法解决了复杂的不规则区域自动填充多种花纹图案的程序,编写了对花纹图案的编辑命令,即对已经绘制到图形中的花纹进行编辑修改(篇幅所限源程序不列出)。这里仅简介使用方法,在运行本程序之前,所编辑花纹的区域已经存在。在Command提示符下用LOAD加载本程序,计算机提示:I.选目标T.改花纹代号A.比例角度C.改颜色P.改边界X.结束<X>:选项I:选定要编辑的花纹图案,只需用鼠标点取花纹图案上的一点即可;选项T:修改花纹图案的代号,输入新的花纹代号;选项A:修改花纹图案的比例角度,输入新的比例和角度;选项C:修改花纹图案的颜色,输入新的颜色号;选项P:是修改花纹图案的边界线,提示选择欲修改的边界线,然后是一个类似PEDIT的多义线顶点编辑命令,可将顶点位置移动或者删除,待新的边界线修改完成以后,图面上的花纹图案立即按新的边界更新。需注意的一点是在修改边界线之前选择花纹图案实体时,一定要使选择点位于新的边界线之内,否则图案将填充在新边界线之外。以前绘制到图形中的花纹图案,如果发现代号、角度、比例、颜色、边界线等不满意时,就要将其删除再重新绘制,而且还不能保证重新绘制的花纹图案完全正确,使用本程序就可以随心所欲
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 南京邮电大学《程序设计语言B》2023-2024学年第一学期期末试卷
- 江西省上饶市2024年中考数学二模试题含答案
- 九江职业大学《商业推广设计》2023-2024学年第一学期期末试卷
- 江苏航空职业技术学院《Premere视频编辑应用与实践》2023-2024学年第一学期期末试卷
- 黄淮学院《舞蹈编创(一)》2023-2024学年第一学期期末试卷
- 【物理】第十二章 简单机械 章末练习-2024-2025学年八年级下册人教版物理
- 重庆商务职业学院《工程制图与CAD》2023-2024学年第一学期期末试卷
- 重庆第二师范学院《药物流行病学》2023-2024学年第一学期期末试卷
- 浙江长征职业技术学院《普通生物学(一)》2023-2024学年第一学期期末试卷
- 浙江横店影视职业学院《建筑工程计里与计价》2023-2024学年第一学期期末试卷
- 2025寒假散学典礼(休业式)上校长精彩讲话:以董宇辉的创新、罗振宇的坚持、马龙的热爱启迪未来
- 2025年浙江中外运有限公司招聘笔试参考题库含答案解析
- 建筑公司2025年度工作总结和2025年工作安排计划
- 电压损失计算表
- 福建省福州市2023-2024学年高二上学期期末测试英语试卷(含答案)
- 脑疝病人的观察与护理
- 人民医院建设项目背景分析
- 初级会计实务题库(613道)
- 2024年高考地理时事热点:环保(附答案解析)
- 招标代理机构选取技术标投标方案(技术方案)
- 北师大版本八年级上册第一章单元测试卷(A卷)【含答案】
评论
0/150
提交评论