VISUAL LISP 学习笔记

VISUAL LISP 学习笔记

ID:37904661

大小:43.00 KB

页数:4页

时间:2019-06-02

VISUAL LISP 学习笔记_第1页
VISUAL LISP 学习笔记_第2页
VISUAL LISP 学习笔记_第3页
VISUAL LISP 学习笔记_第4页
资源描述:

《VISUAL LISP 学习笔记》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、图层管理1解锁所有图层1解冻所有图层1多义线1修改等高线高层1VISUALLISP关于点的命令3图层管理解锁所有图层(defunUnLock_All_Layers()(vlax-forn(vla-get-layers(vla-get-ActiveDocument(vlax-get-acad-object)))(vla-put-lockn:vlax-false)))解冻所有图层(defunUnFreeze_All_Layers()(vlax-forn(vla-get-layers(vla-get-ActiveDocument(vlax-get-acad-object

2、)))(if(/=(vla-get-namen)(getvar"clayer"));;也可以用(not(equal(vla-get-activelayeradoc)item))判断(vla-put-Freezen:vlax-false))))多义线修改等高线高层(defunggcZ(KZzhizhi2/ssss4aenendn)(Setqss(Ssget));;;返回一个对象(图元)选择集(ifss(progn(setqss4(sslengthss));;;求选择集的长度(setqn0)(while(/=ss4n)(setqen(ssnamessn));;;从选择

3、集中选择第n个对象(setqend(entgeten))(setqa(cdr(assoc0end)))(if(=a"LWPOLYLINE")(progn(setqend(subst(cons38zhi)(assoc38end)end))(entmodend)))(setqn(+n1))(if(/=(strcasekz)"A")(SETQZHI(+ZHIZHI2)))))(princ"未选中目标")))(defunc:ggc()(setqb(getstring"单线修改或全修改(AORS)"))(IF(=b"")(SETQb"A"))(if(=b"A"

4、)(progn(setqa(getreal"高程欲修改成?<0>"))(ifa()(setqa0))(SETQA20))(progn(setqa(getreal"起始高程欲修改成?<0>"))(SETQA2(getreal"高程增量?<5>"))(ifa()(setqa0))(ifa2()(setqa25))))(ggcZBaa2));;改多义线高程---------------------无痕.2004.1;(chel)(defunchel()(setqelv(getdist"新高程:"))(while(and(princ"选则高程多义线(回

5、车退出):")(setqss(ssget'((0."*polyline")))))(setqssv(vla-get-activeselectionset(vla-get-activedocument(vlax-get-acad-object))))(vlax-forobjssv(vlax-putobj'Elevationelv))))VISUALLISP关于点的命令1、定义点信息(1)普通定义方式    (setqpt'(2.03.00.0))  ;定义点坐标为(2,3,0),注意此时pt后要加单引号    (setqpt(quote(2.03.00.0))   

6、;QUOTE函数和'的含义相同(2)参数定义方式    如果点坐标为变量参数,则定义方式为    (setqpt'(listxyz))    例如    (setqx2.0y3.0z0.0)    (setqpt(listxy))    ;注意此时pt后不能加单引号    结果    pt=(2.0,3.0)       LIST函数:将任意数目的表达式组合成一个表,本函数常用于定义二维或三维点变量(由两个或三个实数组成的表)    类似命令:APPEND函数:将任意多个表组合成一个表2、点坐标的提取(1)提取点的X坐标  CAR    (setqx_val(ca

7、rpt))    (carlist)返回list中的第一个元素(2)提取点的Y坐标CADR    (setqy_val(cadrpt))    (cadrlist)返回list中的第二个元素(3)提取点的Z坐标CADDR    (caddrlist)返回list中的第三个元素(4)CAR与CDR    AutoCAD允许CAR与CDR多重嵌套(4层),CAR表示提取第1个值,CDR表示删除第1个值。嵌套过程从后向前,如CDDR表示(cdr(cdrx)),则对x列表删除前两个值。若x=(5589),则(cddrx)=(89);CADR表示(car(cdrx)),(c

8、adrx)

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。