




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、用下面的这个程序可以,加载后执行命令:mulen(defunc:mulen()(setqi1s0)(prompt"选择直线:")(setqss(ssget)(setqleng(sslengthss)(setqnamelist(list(ssnamess0)(repeat(1-leng)(setqnamelist(appendnamelist(list(ssnamessi)(setqi(1+i)(foreachnamenamelist(setqnameall(entgetname)(setqps(cdr(assoc10nameall)(setqpe(cdr(assoc11na
2、meall)(setqpsx(carps)(setqpsy(cadrps)(setqpsz(caddrps)(setqpex(carpe)(setqpey(cadrpe)(setqpez(caddrpe)(setqx(-psxpex)(setqy(-psypey)(setqz(-pszpez)(setqlength(sqrt(+(exptx2)(expty2)(exptz2)(setqs(+slength)(princ(strcat"直线总长为:"(rtoss)(princ):em27上述为程序内容,然后存为:“文件名.lsp,再从CAD里用appload命令加载此文件。这
3、里有一个程序,你可以用用看,命令为AM对line,arc,ellispe,spline,polyline,lwpolyline,circle,mline,solid均有效。你既可统计长度,也可统计面积,或者两者都统计。如果你对精确位不满意,你可以改动程序中的数字我已经在程序注释中说明;面积和长度统计程序;highflybirdkunming(prompt"命令为:AM")( defunfssen entlenheightC: amlename nameobjinsPt1 insPt2 text - 1SSarea(/totltext - S text - L insPt0t
4、ext -2 *APP * DOCMSP)(vl-load-com)(setq*APP(vlax-get-acad-object)(setq*DOC(vla-get-activeDocument*APP)(setq*MSP(vla-get-Modelspace*DOC)(initget1"123")(setqf(getkword"n请输入你要统计的<1>面积<2>长度<3>两者:")(if(and(setqss(ssget)(setqinsPt0(getpoint"n请输入文字插入点:")(setq
5、height(getdist"n请输入文字高度:")(progn(setql(sslengthss)(setqi0)(setqSSarea0)(setqtotlen0)( setq insPt1( setq insPt2( (=( setq insPt2( condf "1" )( vlax -3d- point insPt2 )( repeat l( func - 1)( func - 2)( setq i ( 1 + i )( setq text - S ( strcat ( convert1 SSarea 6( vla - addtext * MS
6、P text -S insPt1 height" 平方米 " ); 总面积为 : 小数后 6 位)( (=f "2" )( repeat l( func - 1)( func - 3)( setq i ( 1 + i )( setq text - L ( strcat ( convert1 totlen 4" 米 "); 总长度为 : 小数后4位( vla - addtext * MSP text - L insPt2 height)( (=f "3" )( repeat l( func - 1)( func -
7、2)3位( func - 3)( setq i(1+ i)( setq text( setq text-S-L( strcat( strcat( convert1 SSarea 6( convert1 totlen 3" 平方米 " ); 总面积为 : 小数后 6 位" 米 "); 总长度为 : 小数后(vlax-3d-pointinsPt0)1.5 height )(polarinsPt0(*1.5Pi)(*( vla - addtext( vla - addtextMSPtext-SinsPt1heightMSPtext-LinsPt2height)
8、!"(alert"你没有选取物体或者输入正确的数据)(princ)(defunfunc-1()(setqename(ssnamessi)(setqobj(vlax-ename->vla-objectename)(setqelist(entgetename)(setqname(cdr(assoc0elist);面积的统计(defunfunc-2(/p1p2p3p4)(if(vlax-property-available-pobj"area")(setqSSarea(+(vla-get-areaobj)SSarea)(if(=name"SOL
9、ID")(setqp1(cdr(assoc10elist)p2(cdr(assoc11elist)p3(cdr(assoc12elist)p4(cdr(assoc13elist)SSarea(+(area-of-verties(listp1p2p4p3)SSarea);长度的统计(defunfunc-3(/p1p2p3p4)(cond(=name"MLINE")(setqtotlen(+totlen(ml-lengthename)(or(=name"ARC")(=name"CIRCLE")(=name"LINE&q
10、uot;)(=name"POLYLINE")(=name"LWPOLYLINE")(=name"SPLINE")(=name"ELLIPSE")getendparam)(setqentlen(vlax-curve-getdistatparamename(vlax-curve-ename)(setqtotlen(+totlenentlen)(=name"SOLID")(setqp1(cdr(assoc10elist(setqp2(cdr(assoc11elist(setqp3(cdr(assoc1
11、2elist(setqp4(cdr(assoc13elist(setqtotlen(+(length-of)verties(listp1p2p4p3)totlen);Mline的长度(defunml-length(ename/jdptlist)(foreachn(entgetename)(if(=(carn)11)(setqptlist(cons(cdrn)ptlist)(reverseptlist)(setqj0)(setqd0)(repeat(1-(lengthptlist)(setqd(+d(distance(nthjptlist)(nth(1+j)ptlist(setqj(1+j)d)
12、;单位转化(defunconvert(xn/tol_xfra_xint_x)(setqtol_x(/x(expt10n)(setqfra_x(rtos(-tol_x(fixtol_x)2n)(setqfra_x(vl-string-left-trim"0"fra_x)(setqint_x(itoa(fixtol_x)(strcatint_xfra_x)(defunconvert1(xn/tol_xfra_xint_x)(setqtol_x(/x(expt10n)(setqfra_x(rtos(-tol_x(fixtol_x)23)(setqfra_x(vl-string-l
13、eft-trim"0"fra_x)(setqint_x(itoa(fixtol_x)(strcatint_xfra_x);n个点的长度(defunlength-of-verties(pts/illenpts1)(setqi-1len0)(setqpts1(cons(lastpts)pts)(repeat(lengthpts)(setqi(1+i)(setql(distance(nthipts1)(nth(1+i)pts1)(setqlen(+llen);n个点的面积( defun area - of - verties(pts/iareaPX0PY0x1y1x2y2(setqi0)(setqarea0)(setqpx0(caar
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 旅行学习与研学活动安排计划
- 社会实践小班社区活动的开展计划
- 人力资源的发展与管理计划
- 2025年企业管理服务项目建议书
- 2025年白喉、百日咳、破伤风、乙肝四联制剂合作协议书
- 跨国业务数据转换合规指南
- 基于人工智能的智能家居设计合作协议
- 服装设计行业服装设计版权协议
- 2025年抗帕金森病药项目建议书
- Pipemidic-acid-trihydrate-Standard-生命科学试剂-MCE
- 小学数学教学评一致性研讨活动
- EIM Book 1 Unit 7 Learning languages单元检测试题
- WTC瓦斯突出参数仪操作规程
- 四川省政府采购评审专家考试题库
- 混凝土搅拌站安全生产风险分级管控和隐患排查治理双体系方案资料2021-2022完整实施方案模板
- GB/T 34875-2017离心泵和转子泵用轴封系统
- GB/T 25085.3-2020道路车辆汽车电缆第3部分:交流30 V或直流60 V单芯铜导体电缆的尺寸和要求
- GA/T 1081-2020安全防范系统维护保养规范
- 民宿教学讲解课件
- 2023一年级下册语文教学工作计划(2篇)
- 山东省中考物理总复习 八上 第2讲 声现象
评论
0/150
提交评论