Dadgad 发表于 2022-7-5 18:40:22

 
AT是启动Lee的lisp的命令行条目,一旦您将其下载到计算机上,并使用LOAD命令启动它。
 
对不起,我用的Lisp程序是李的另一个Lisp程序,这是链接。。。
 
http://www.lee-mac.com/arealabel.html
 
不是我之前发布的那个。
 
你在截图中看到的不到一分钟。
 
观看李网站上的小视频,并阅读他对lisp描述中可用选项的描述。
请特别注意最后一段的附加功能!
 
谢谢李!

tmelancon 发表于 2022-7-5 18:50:35

嘿,为你想放在每个地块内的区域拍一张照片。为我工作了10秒钟。
 
07/08 www.cadalyst。com/code;;;技巧2292:AreaRon。闭合多段线的lsp面积(c)2008 Ronald Maneja(Wizman);;;生成包含选定闭合多段线区域的文本;;;并把它们放在区域层;;;由RON MANEJA于2008年1月31日创作;;;用户输入:比例、多段线选择;;;;;;版本1.1(09FEB09):添加了区域、样条曲线、圆和椭圆的区域;;;(定义C:AREARON(/allx ally areaobj counter ctr el entity name entnamevla mysset prec\u temp pt reg\u centroid temp tst vertex x y oldlayer oldsnap temperr traperor blpt cir\u center el\u center maxpt minptspl\u center trpt)(defun set\u var()(setvar'cmdecho 0)(setq oldlayer(getvar“clayer”)(setq oldsnap(getvar“osmode”))(setq temperr*error*)(setq*error*traperor)(setvar“osmode”0))(defun traperor(errmsg)(command nil nil nil)(if(not(member errmsg'(“console break”“Function Cancelled”))(princ(strcat”\error:“errmsg”))(command“.undo”“end”)(setvar“clayer”oldlayer)(setvar“osmode”oldsnap)(setvar“cmdecho”1)(princ“\n error restating environment”)(setq*error*temperr)(defun reset\u var()(setq*error*temperr)(setvar“clayer”oldlayer)(setvar“osmode”oldsnap)(command“.undo”“end”)(setvar“cmdecho”1))(vl load com)(set\u var)(command“.undo”“be”)(if(tblsearch“Layer”“areron”)(command“.u Layer”“\u thaw”“areron”“\u on”“AREARON”“\u unlock”“AREARON”“\u set”“AREARON”“);\u关闭命令(命令“.u layer”“\u make”“arararon”“\u color”7“arararon”“);\u关闭命令)(if(null sch)(setq sch 1.0))(initget 6)(setq temp(GETRAL(strcat“\nENTER SCALE:”))(if temp(setq sch temp)(setq temp sch))(if(null precision)(setq precision 1))(initget 6)(setq prec\U temp(GEINT(strcat“\n小数位数有多少?::”))(if prec\U temp(setq precision prec\U temp)(setq prec\u temp precision))(提示“\n选择闭合多段线/样条曲线、区域、圆和椭圆:>”(setq mysset(ssget'(-4”“))计数器0)(如果mysset(progn(while(<counter(sslength mysset))(setq实体名称(ssname mysset counter)EL(entget实体名称)entnamevla(vlax ename->vla对象实体名称)areaobj(vla get area entnamevla))(cond((eq(cdr(assoc 0 el))“LWPOLYLINE”)(progn(setq allx 0 ally 0 ctr 0 tst 1)(while(assoc 10 el)(setq vertex(cdr(assoc 10 el))ctr(+ctr 1)x(car vertex)y(cadr vertex)allx(+allx)ally(+ally y)EL(cdr(member(assoc 10 EL)EL)))(setq x(/allx ctr)y(/ally ctr)pt(list x y))(命令“text”“j”“mc”pt(*sch 2.5)“0”(rtos areaobj 2 precision)))((等式(cdr(assoc 0 EL))“REGION”)(setq reg\u centroid)(vlax safearray->列表(vlax variant value(vla get centroid entnamevla)))(命令“text”“j”“mc”reg\u centroid(*sch 2.5)“0”(rtos areaobj 2精度))((eq(cdr(assoc 0 el))“CIRCLE”)(setq cir\u center(vlax safearray->列表(vlax变量值(vla get center entnamevla))(命令“text”“j”“mc”cir\u center(*sch 2.5)“0”(rtos areaobj 2 precision))((eq(cdr(assoc 0 el))“椭圆”)(setq el\u center(vlax safearray->list(vlax变量值(vla get center entnamevla))(命令“text”“j”“mc”el_center(*sch 2.5)“0”(rtos areaobj 2 precision))((eq(cdr(assoc 0 el))“SPLINE”)(vla GetBoundingBox entnamevla“minPt”maxPt)(setq blPt(vlax safearray->list minPt)trPt(vlax safearray->list maxPt))(setq spl\U中心(mapcar“*”(0.5 0.5 0.5)(mapcar“+blPt trPt))(命令“text”“j”“mc”spl\U中心(*sch 2.5)“0”(rtos areaobj 2精度)))(setq计数器(+计数器1)))(警报“\n您的选择中没有闭合的多段线/长波多段线/样条曲线”)(reset\U var)(princ))(提示“'\n>>>…AreaRon.Lsp现在已加载,请键入“AreaRon”以启动命令。。。
页: 1 [2]
查看完整版本: 你会救我很多命