lengliqun 发表于 2010-5-28 00:56:00

将圆环donut原位改成直径为100颜色为4圆

<font face="Verdana">求lsp程序,将圆环donut原位改成直径为100颜色为4圆,圆的图层为CIRCLE,谢谢。</font>

ZZXXQQ 发表于 2010-5-28 09:51:00

<p>先试试看</p>
<p></p>
<p><font face="Verdana">;圆环变圆 明经 ZZXXQQ 2005.4.2 2010.5.28改<br/>(defun C:DONUT2C ( / SS OLDOS I EN P1 P2 PC)<br/>&nbsp;(setvar "CMDECHO" 0)<br/>&nbsp;(princ "\n选择圆环 :")<br/>&nbsp;(if (setq SS (ssget '((0 . "LWPOLYLINE") (70 .&nbsp; 1) (42 . 1)))) (progn<br/>&nbsp; (setq OLDOS (getvar "OSMODE"))<br/>&nbsp; (setvar "OSMODE" 0)<br/>&nbsp; (setq I 0)<br/>&nbsp; (command ".UNDO" "BE")<br/>&nbsp; (setq oldln (getvar "CLAYER"))<br/>&nbsp; (command ".LAYER" "M" "CIRCLE" "C" 4 "" "")<br/>&nbsp; (repeat (sslength SS)<br/>&nbsp;&nbsp; (setq EN (entget (ssname SS I))<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; I (1+ I)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; P1 (cdr (assoc 10 EN))<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; P2 (cdr (assoc 10 (reverse EN)))<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PC (polar P1 (angle P1 P2) (* (distance P1 P2) 0.5)))<br/>&nbsp;&nbsp; (command "CIRCLE" PC 50)<br/>&nbsp; )<br/>&nbsp; (command ".ERASE" ss "")<br/>&nbsp; (princ (strcat "\n" (ITOA (sslength ss)) " 个圆环已经转换成圆。"))<br/>&nbsp; (command ".UNDO" "E")<br/>&nbsp; (setvar "CLAYER" oldln)<br/>&nbsp; (setvar "OSMODE" OLDOS)<br/>&nbsp;))<br/>&nbsp;(setvar "CMDECHO" 1)<br/>&nbsp;(princ)<br/>)<br/></font></p>

lengliqun 发表于 2010-5-28 12:05:00

CAD2004测试ok,多谢版主。

461045462 发表于 2011-4-23 07:27:08

本帖最后由 461045462 于 2011-4-23 07:47 编辑

lengliqun 发表于 2010-5-28 00:56 http://bbs.mjtd.com/static/image/common/back.gif
求lsp程序,将圆环donut原位改成直径为100颜色为4圆,圆的图层为CIRCLE,谢谢。

没有理解您说的圆环是怎样的,请问能否详细讲解一下或者发个截图,或者dwg文件让我看看学习学习吗?
查了一下资料:
将根据中心点来设置圆环的位置。 指定直径后,将提示用户指定绘制圆环的位置。 将在每个指定点 (2) 处绘制一个圆环。 圆环内部的填充方式取决于 FILL 命令的当前设置。还是没有理解怎样做环望指教谢谢

ZZXXQQ 发表于 2011-4-23 20:36:47

圆环是用AutoCAD命令donut画的填充圆环。楼上自己画一个就知道了。

yoyoho 发表于 2011-4-26 18:31:56

感谢Z版分享程序,下载学习了!
页: [1]
查看完整版本: 将圆环donut原位改成直径为100颜色为4圆