xiaoquansb 发表于 2008-9-10 20:55:00

[求助]如何用LISP修改标注里文字的颜色

如题,求教如何用LISP修改标注里文字的颜色

DeLiN001 发表于 2008-9-10 21:50:00

<p>;例如对选择的尺寸的文本改为1号颜色<br/>(defun C:changecolor (/ ss K)<br/>&nbsp; (setq ss (ssget) k 0)<br/>&nbsp; (repeat (sslength ss)<br/>&nbsp;&nbsp;&nbsp; (vlax-put-property (vlax-ename-&gt;vla-object (ssname ss k)) "textcolor" 1)<br/>&nbsp;&nbsp;&nbsp; (setq k (1+ k))<br/>&nbsp;&nbsp;&nbsp; )<br/>&nbsp; )</p><p></p>

xiaoquansb 发表于 2008-9-11 20:03:00

<p>得左,多谢楼上,终于写成了下面的lisp</p><p>(defun c:ck()</p><p>(SETQ GOP (SSADD));;设定一个空的图元集合SS<br/>(SETQ ss (SSADD))<br/>(SETQ GOP (SSGET "x" '((0 . "*DIMENSION*"))))</p><p>(IF (/= GOP NIL)</p><p>(PROGN <br/>(SETQ N (SSLENGTH GOP ))<br/>(SETQ M 0)<br/>(REPEAT N <br/>(SETQ ENT (ENTGET (SSNAME GOP M)))</p><p>(if (and (/= (CDR (ASSOC 1 ENT)) "") <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (/= (CDR (ASSOC 1 ENT)) "&lt;&gt;"))<br/>(ssadd (SSNAME GOP M) ss)<br/>)</p><p>(SETQ M (+ M 1))<br/>)</p><p>(setq k 0)<br/>(repeat (sslength ss)<br/>&nbsp;&nbsp;&nbsp; (vlax-put-property (vlax-ename-&gt;vla-object (ssname ss k)) "textcolor" 3)<br/>&nbsp;&nbsp;&nbsp; (setq k (1+ k))<br/>)<br/>)<br/>)</p><p>(IF (/= (sslength ss) 0)<br/>(princ "注意 文字为绿色的尺寸在图上可能不是1:1的")<br/>(princ "所有尺寸在图上都是1:1的")<br/>)</p><p>(princ)</p><p>)</p>

pzweng 发表于 2012-4-13 12:13:26

xiaoquansb 发表于 2008-9-11 20:03 static/image/common/back.gif
得左,多谢楼上,终于写成了下面的lisp(defun c:ck()(SETQ GOP (SSADD));;设定一个空的图元集合SS(SETQ ss...

你这个是干嘛用的,根本用不了

lzg8877 发表于 2012-6-1 22:55:13

嗯 嗯  用用

vlisp2012 发表于 2012-6-2 10:53:39

能用的,修改的标注文字变成绿色了。
页: [1]
查看完整版本: [求助]如何用LISP修改标注里文字的颜色