- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Lisp应用于坐标标注中若干问题解析
Lisp应用于坐标标注中若干问题解析摘要:随着CAD的广泛应用,设计师们对CAD的要求也越来越高。通过二次开发工具Lisp语言能够很好地解决日常工作中的许多小型问题。坐标标注这一程序在设计过程中,要充分考虑到图层、捕捉、坐标取位精度和引线位置计算等方面的问题,切实做到程序正确实用、操作方便、不破坏原图的参数环境,使CAD不仅是绘图工具,同时也是得心应手的高效设计平台。
关键词:图层捕捉控制取位精度引线方向加载
Autocad软件应用已经在建筑设计、城市规划、工程制图、机械设计、电子电路等单位普及,它为我们的工作带来了很大的便利。随着工作的不断细化,广大设计师对CAD的要求也在不断地增强,有些工作中需要的功能,在CAD软件中并没有提供,需要通过二次开发的功能来实现。Autocad二次开发的主要工具有LISP、VB/VBA的Activex及C/C++的ObjectARX。LISP以其简单、易于掌握的特点深受设计师的喜爱。LISP语言是人工智能学科领域中广泛采用的一种程序设计符号语言,这种语言在参数化绘图中有很大的灵活性。LISP开发出的程序可以像运行CAD普通命令一样在命令行中直接键入自己定义的命令运行,保持了用户的绘图习惯。
在设计中我们经常会遇到对图纸上的坐标进行标注的问题。对于市面上的专业软件如CASS软件、天正软件均具有该项功能,但对于广大设计师,他们使用的是普通CAD而非专业版的,并不具备这一功能,需要通过LISP语言进行二次开发来实现。一个好的LISP程序至少要保证三个条件:1、程序本身运行的正确性2、程序操作简单、界面清晰3、程序执行完后要还原所有改动过的CAD运行环境参数。因此在编写坐标标注这一程序时要考虑以下相关问题。
一、图层控制
程序执行所生成的坐标标注信息应该放在同一层内(如ZBBZ层),且不应破坏原有图层,这样便于对ZBBZ这一层进行开、关、冻结、删除等层控操制。
首先用(setq old-layer (getvar “clayer”))命令将程序执行前的当前图层名提取出来存入old-layer这个变量。由于同一张图可能会分几个时间段进行标注,先判断ZBBZ图层是否存在,如果存在,将它设为当前层,如果不存在,则新建层名,确定层的颜色。
(setq Labz (tblsearch “Layer” “ZBBZ”))
(IF (=Labz nil)
(progn (command “layer” “n” “ZBBZ” ““ )
(command “layer” “s” “ZBBZ” “c” “1” ““ ““))
(setvar “clayer” “ZBBZ”));;if结束
在程序执行完退出之前,需要将程序执行前的图层进行还原
(setvar “clayer” old-layer)
二、标注的字体样式
首先要清楚想要标注的字体样式如HZ、FS在windows系统的字库中是否存在(正常情况下都有),然后将当前字体样式名提取出来存入old-style这个变量,如果字体已加载到图形中,将其定为当前字体,如果字体未加载,则加载字体并确定字的宽度、倾斜角度等属性,最后在程序执行完退出之前将字体样式还原。
(setq old-style (getvar “textstyle”))
(setq newstyle (tblsearch “style” “hz”))
(IF (= newstyle nil)
(command “style” “hz” “rs,hztxt” “0.0” “0.8” “0” “n” “n” “n”)
(setvar “textstyle” “hz”))
(setvar “textstyle” old-style);;还原字体
三、捕捉控制
在程序执行中,经常会遇到程序是正确的,但运行结果却不太符合自己的意愿,这其中一个主要原因是没有把对象捕捉关掉。坐标标注一般都需要捕捉到特征点上,要合理控制好捕捉的开与关才能达到想要的效果。CAD常用的捕捉及对应的位码设置有以下几种:
0 NON(无) 1 END(端点) 2 MID(中点)
4 CEN(圆心) 8 NOD(节点) 16 QUA(象限点)
32 INT(交点)64 INS(插入点)128 PER(垂足)
256 TAN(切点) 512 NEA(最近点) 1024 QUI(快速)
通过位码值的累加可以实现多个对象捕捉的打开。
首先要把程序执行前的捕捉模式提取出来,在捕捉的状态下点取需要标注的特征点,然后关闭对象捕捉,点取标注位置,进行标注引线及X、Y标注位置的计算,退出程序前将捕
您可能关注的文档
最近下载
- 公司管理层劳动合同法的培训课程.pptx VIP
- 中国儿童肥胖诊断评估与管理专家共识.pptx VIP
- 伊莱斯ESDA驱动器说明书.pdf VIP
- 反井钻机施工作业规程培训课件.pptx VIP
- 服装数字化设计技术课件 3-1男衬衫款式分析.pptx VIP
- 简历模板-行政人事类简历范文模板.doc VIP
- IPC-A-610J-中文版 CN-2024 TOC 电子组件的可接受性.pdf VIP
- 2025年秋季开学教师大会上,校长讲话:从看见自己开始,做一个教育路上有方向、有力量、能生长的教师!.docx
- 公司管理层的培训课程课件.pptx VIP
- 人教版四年级上册体育与健康教案含教学计划及进度安排.pdf VIP
文档评论(0)