[转帖]一个指定图层批量修改线宽的程序
<p>; =======================================<br/>; | Ver: 1.1 作者: 聂金锁 |<br/>; | 修改: 迟俊岭 |<br/>; =======================================</p><p>;;;指定图层修改线宽,命令“XK”。</p><p>(defun *error*(st)<br/> (if (and (/= st "Function cancelled")<br/> (/= st "quit / exit abort")<br/> )<br/> (princ (strcat "Error: " st))<br/> )<br/> (setq *error* old_err)<br/> (princ)<br/>)</p><p>(defun in()</p><p> (if (= s nil) (setq s 1))<br/> (setq scale (getreal (strcat "\n指定线型比例<" (rtos s 2 0) ">:")))<br/> (if (= scale nil) (setq scale s))<br/> (setq s scale)</p><p> (if (= w nil) (setq w 0.6))<br/> (setq width (getreal (strcat "\n指定线宽 <" (rtos w 2 2) ">:")))<br/> (if (= width nil) (setq width w))<br/> (setq w width)</p><p> (setq width (* width scale))<br/>)</p><p>(defun pross()<br/> (setq len (sslength ss))<br/> (setq n 1)<br/> (while (<= n len)<br/> (setq en1 (ssname ss (1- n)))<br/> (setq b (entget en1))<br/> (setq a (cdr (assoc 0 b)))<br/> (cond ((or (= "LINE" a) (= "ARC" a))<br/> (progn<br/> (command "pedit" en1 "Y" "w" width "x")<br/> ))<br/> ((= "POLYLINE" a)<br/> (command "pedit" en1 "w" width "x"))<br/> ((= "CIRCLE" a)<br/> (progn<br/> (setq pt (cdr (assoc 10 b)))<br/> (setq rad (cdr (assoc 40 b)))<br/> (setq r1 (- (* rad 2) width ))<br/> (setq r2 (+ (* rad 2) width ))<br/> (command "donut" r1 r2 pt "")<br/> (entdel en1)<br/> ))</p><p> (T T)<br/> )<br/> (setq n (1+ n))<br/> )<br/>)</p><p>(defun C:xk ( / old_err scale ss en1 a len n b<br/> cmd_old width rad pt r1 r2 k en la)<br/> (setq old_err *error*)<br/> (setq cmd_old (getvar "cmdecho"))<br/> (setvar "cmdecho" 0)<br/> (in)<br/> (initget "L S")<br/> (setq k (getkword "\选择对象,或者[图层(L)]: "))<br/> (if (= k "L")<br/> (progn<br/> (setq en (car (entsel "\n选择图层上的对象: ")))<br/> (if (/= en nil)<br/> (progn<br/> (setq la (assoc 8 (entget en)))<br/> (setq ss (ssget "X" (list la)))</p><p> (pross)<br/> )<br/> )<br/> )<br/> )</p><p> (if (or (= k "S")<br/> (= k nil))<br/> (progn<br/> (setq ss (ssadd))<br/> (setq ss (ssget))<br/> (if (/= ss nil) (pross))<br/> )<br/> )</p><p> (setvar "cmdecho" cmd_old)<br/> (princ)<br/>)<br/></p> 谢谢分享 帮LZ顶一下... 不错,不错 谢谢楼主的分享收藏了,学习学习 谢谢分享,顶! 谢谢楼主分享
怎么出现图层名称无效? 不错,不错
页:
[1]