几个有用的cad小程序

几个有用的cad小程序

ID:8993042

大小:22.03 KB

页数:8页

时间:2018-04-14

几个有用的cad小程序_第1页
几个有用的cad小程序_第2页
几个有用的cad小程序_第3页
几个有用的cad小程序_第4页
几个有用的cad小程序_第5页
资源描述:

《几个有用的cad小程序》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、1.计算所有线段总长度(加载后只需框选所有线段便可得出这些线段的总长度)(defunc:LL()(setvar"cmdecho"1)(setqen(ssget(list'(0."spline,arc,line,ellipse,LWPOLYLINE"))))(setqi0)(setqll0)(repeat(sslengthen) (setqss(ssnameeni)) (setqendata(entgetss)) (command"lengthen"ss"") (setqdd(getvar"perimeter"))(setqll(+ddll)) (s

2、etqi(1+i))) (princ"所选线条总长为:")(princll)(princ))2.标注所有线段(加载后只需框选所有线段便可得标注这些线段)(defunc:LLL()(COMMAND"UCS""")(setvar"cmdecho"1)(SETVAR"OSMODE"0)(setq  AcadObject (vlax-get-acad-object)  AcadDocument(vla-get-ActiveDocumentAcadobject)  mSpace   (vla-get-ModelSpaceAcaddocument));;选取需

3、要测量的样条曲线、圆弧、直线、椭圆(setqen(ssget(list'(0."spline,arc,line,ellipse,LWPOLYLINE"))))(setqi0);;获取系统参数textsize(setqshh(getvar"textsize"))(setqstr_hh(strcat"文字高度<"(rtosshh2)">:"))(setqhh(getdiststr_hh))(whilehh(setvar"textsize"hh)(setqhhnil));;输入标注文字高度;;循环开始(repeat(sslengthen) (setq

4、ss(ssnameeni)) (setqendata(entgetss)) (command"lengthen"ss"") (setqdd(getvar"perimeter")) (princ(strcat"长度="(rtosdd2))) ;;寻找代表图层的字符串 (setqaa(assoc0endata)) ;;获取图层名称 (setqaa1(cdraa)) ;;判断线条种类 (cond  ((=aa1"SPLINE")  ;;如果是spline  (progn  (setqarcObj(VLAX-ENAME->VLA-OBJECTss)) 

5、 (setqstartPnt1(vla-get-ControlPointsarcObj))  (setqp1    (vlax-safearray->list(vlax-variant-valuestartPnt1))  )  (setqx1(carp1))  (setqy1(cadrp1))  (setqz1(caddrp1))  (setqpp1(listx1y1z1))  (repeat(-(/(lengthp1)3)1)   ;;循环,寻找最后一个控制点   (setqp1(cdddrp1))   (setqx2(carp1))   (se

6、tqy2(cadrp1))   (setqz2(caddrp1))  )  (setqpp2(listx2y2z2))  )  )  ((=aa1"LWPOLYLINE")  ;;如果是LWPOLYLINE  (progn  (setqarcObj(VLAX-ENAME->VLA-OBJECTss)) (setqstartPnt1(vla-get-CoordinatesarcObj)) (setqp1   (vlax-safearray->list(vlax-variant-valuestartPnt1)) )  (setqx1(carp1))  

7、(setqy1(cadrp1))  (setqz1(caddrp1))  (setqpp1(listx1y1z1))  (repeat(-(/(lengthp1)3)1)   ;;循环,寻找最后一个控制点   (setqp1(cdddrp1))   (setqx2(carp1))   (setqy2(cadrp1))   (setqz2(caddrp1))  )  (setqpp2(listx2y2z2))  )  )  (t  ;;如果是其他种类线条  (progn  (setqarcObj(VLAX-ENAME->VLA-OBJECTss)) 

8、 (setqstartPnt1(vla-get-StartPointarcObj))  ;;获取起点  (setqendP

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

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

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