这段自动切换线型图层的代码问题出在哪里呢,请帮我看看吧~~
本帖最后由 yangist 于 2013-7-4 16:23 编辑(defun auto_lay_lts ()
(setq ss (ssget'((0 . "ARC,CIRCLE,ELLIPSE,LINE,*POLYLINE"))))
(setq Center_list(ssadd)
Dashed_list(ssadd)
Phantom_List(ssadd)
Divide_List(ssadd))
(setq k 0 n (SSLENGTH ss))
(while (< k n)
(setq en (ssname ss k))
(setq ass6 (cdr (assoc 6 (entget en))))
(if(or (= ass6 "Center") (= ass6 "Center2") (= ass6 "Centerx2"))
(progn
(setq Center_list (ssadd en Center_list))
))
(if(or (= ass6 "Dash") (= ass6 "Dashed") (= ass6 "Dashed2") (= ass6 "Dashedx2"))
(progn
(setq Dashed_list (ssadd en Dashed_list))
))
(if(or (= ass6 "Phantom") (= ass6 "Phantom2") (= ass6 "Phantomx2"))
(progn
(setq Phantom_List (ssadd en Phantom_List))
))
(if(or (= ass6 "Divide") (= ass6 "Divide2") (= ass6 "Dividex2"))
(progn
(setq Divide_List (ssadd en Divide_List))
))
(setq k (1+ k))
);end while
(command "change" Center_list "" "la" "03Center" "c" "bylayer" "lt" "bylayer" "")
(command "change" Dashed_list "" "la" "04Dashed" "c" "bylayer" "lt" "bylayer" "")
(command "change" Phantom_List"" "la" "08Phantom" "c" "bylayer" "lt" "bylayer" "")
(command "change" Divide_List "" "la" "09Divide" "c" "bylayer" "lt" "bylayer" "")
);;;end sub
本帖最后由 ZZXXQQ 于 2013-7-5 20:02 编辑
(defun auto_lay_lts ()
(setq ss (ssget'((0 . "ARC,CIRCLE,ELLIPSE,LINE,*POLYLINE"))))
(setq Center_list (ssadd)
Dashed_list (ssadd)
Phantom_List (ssadd)
Divide_List (ssadd))
(setq k -1)
(repeat (sslength ss)
(setq en (ssname ss (setq k (1+ k)))
ent (entget en))
(if (assoc 6 ent) (progn
(setq ass6 (cdr (assoc 6 ent)))
(if (wcmatch ass6 "Center*") (ssadd en Center_list))
(if (wcmatch ass6 "Dash*") (ssadd en Dashed_list))
(if (wcmatch ass6 "Phantom*") (ssadd en Phantom_List))
(if (wcmatch ass6 "Divide*") (ssadd en Divide_List))
))
);repeat
(if (> (sslength Center_list) 0)
(command "chprop" Center_list"" "la" "03Center" "")
)
(if (> (sslength Dashed_list) 0)
(command "chprop" Dashed_list"" "la" "04Dashed" "")
)
(if (> (sslength Phantom_list) 0)
(command "chprop" Phantom_List "" "la" "08Phantom" "")
)
(if (> (sslength Divide_list) 0)
(command "chprop" Divide_List"" "la" "09Divide" "")
)
(command "chprop" ss "" "c" "bylayer" "lt" "bylayer" "")
);;;end
好深的套路,,,, ZZXXQQ 发表于 2013-7-4 22:24 static/image/common/back.gif
选择对象:ERROR : 参数类型错误: stringp nil
不知什么原因 沙发改了,再试试。
页:
[1]