tc405003 发表于 2005-10-1 09:26:00

请高手看下我的文字改层的命令有什么问题

<P>请高手看下我的文字改层的命令有什么问题</P>
<P>(defun c:wzgc ()<BR>&nbsp; (CMDLA0)<BR>&nbsp; (command "color" "bylayer")<BR>&nbsp;&nbsp;&nbsp; (setq wenzhi (cdr (assoc 1 (entget (car (entsel "\n请点取想要归层的文字:"))))))<BR>&nbsp; (initget "1 2 3 4")<BR>&nbsp; (setq key (getkword&nbsp; "\n请选择文字匹配方式:左边匹配(1)\\右边匹配(2)\\中间匹配(3)\\完全匹配(4)"))<BR>&nbsp; (MKLA "tangchao" 2)<BR>&nbsp; (command "color" "bylayer")<BR>&nbsp; (cond<BR>&nbsp;&nbsp;&nbsp; ((= key 1) (setq s1 (ssget "x" (LIST (CONS 0 "TEXT") (CONS 1 (STRCAT wenzhi "*"))))))<BR>&nbsp;&nbsp;&nbsp; ((= key 2) (setq s1 (ssget "x" (LIST (CONS 0 "TEXT") (CONS 1 (STRCAT "*" wenzhi))))))<BR>&nbsp;&nbsp;&nbsp; ((= key 3) (setq s1 (ssget "x" (LIST (CONS 0 "TEXT") (CONS 1 (STRCAT "*" wenzhi" *"))))))<BR>&nbsp;&nbsp;&nbsp; ((= key 4) (setq s1 (ssget "x" (LIST (CONS 0 "TEXT") (CONS 1 (STRCAT wenzhi))))))<BR>&nbsp;&nbsp;&nbsp; (t&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (setq s1 (ssget "x" (LIST (CONS 0 "TEXT") (CONS 1 (STRCAT wenzhi))))))<BR>&nbsp;&nbsp;&nbsp; )<BR>&nbsp;&nbsp;&nbsp; (progn<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (setq YH_sslength (sslength s1))<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (setq YH_no 0)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (while (&lt; YH_no YH_sslength)<BR>&nbsp;(setq YH_select (entget (ssname s1 YH_no)))<BR>&nbsp;(setq YH_select (subst (cons 8 "tangchao") (assoc 8 YH_select) YH_select))<BR>&nbsp;(entmod YH_select)<BR>&nbsp;(setq YH_no (1+ YH_no))<BR>&nbsp;)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (setq wenzi nil)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (princ "\n程序提示:修改完成.")<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; )<BR>&nbsp;&nbsp;&nbsp; ;(princ "\n程序提示: 没有找到要修改的图元.")<BR>&nbsp;&nbsp;&nbsp; ;)<BR>&nbsp; (CMDLA1)<BR>&nbsp; (princ)<BR>&nbsp;)</P>
<P>(defun CMDLA0 ()<BR>&nbsp; (setq cmdech (getvar "CMDECHO"))<BR>&nbsp; (setq oom (getvar "orthomode"))<BR>&nbsp; (setq osm (getvar "osmode"))<BR>&nbsp; (SETQ LA (getvar "clayer"))<BR>&nbsp; (setq rmode (getvar "regenmode"))<BR>&nbsp; (setq pw (getvar "plinewid"))<BR>&nbsp; (setvar "regenmode" 0)<BR>&nbsp; (setvar "CMDECHO" 0)<BR>&nbsp; (princ)<BR>)</P>
<P>(defun CMDLA1 ()<BR>&nbsp; (setvar "CMDECHO" cmdech)<BR>&nbsp; (setvar "orthomode" oom)<BR>&nbsp; (setvar "osmode" osm)<BR>&nbsp; (setvar "clayer" LA)<BR>&nbsp; (setvar "regenmode" rmode)<BR>&nbsp; (setq s1 nil)<BR>&nbsp; (setvar "plinewid" pw)<BR>&nbsp; (princ)<BR>)</P>
<P>(Defun MKLA (name color)<BR>&nbsp; (If (= (Tblsearch "layer" name) nil)<BR>&nbsp;&nbsp;&nbsp; (Command "layer" "m" name "c" color name "")<BR>&nbsp;&nbsp;&nbsp; (Command "layer" "t" name "s" name "c" color name "")<BR>&nbsp; )<BR>)<BR></P>
页: [1]
查看完整版本: 请高手看下我的文字改层的命令有什么问题