帮忙看看 为什么 (princ riist)一直输出是nil
(defun c:gbf (/ po lst_r nn i rt named bn1 rlist)(setq po (getvar "ucsorg"))
(setq lst_r (ssget "X" (list (cons 0 "insert"))))
(setq nn (sslength lst_r))
(setq i 0)
(while (< i nn)
(setq rt (entget (ssname lst_r i)))
(setq named (cdr (assoc 2 rt)))
(setq bn1 (substr named 1 4))
(if (/= bn1 "PNO-" )
(setq rlist (append rlist (list(car rt))))
);end if
(princ "\n riist:")(princ riist)
(setq i (1+ i))
);end while i
); end
我是想把 块名为 ”PNO-“ 开头的块提取到一个表里面出来。
(setq rlist (append rlist (list(car rt))))
中的rlist与(princ riist)变量拼写错误。。 edata 发表于 2014-1-23 17:56 static/image/common/back.gif
(setq rlist (append rlist (list(car rt))))
中的rlist与(princ riist)变量拼写错误。。
谢谢你,程序本身变量rlist没有错,那只是我发贴时打错了
(defun c:gbf (/ po lst_r nn i rt named bn1 rlist)
(setq po (getvar "ucsorg"))
(setq lst_r (ssget "X" (list (cons 0 "insert"))))
(setq nn (sslength lst_r))
(setq i 0)
(while (< i nn)
(setq rt (entget (ssname lst_r i)))
(setq named (cdr (assoc 2 rt)))
(setq bn1 (substr named 1 4))
(if (/= bn1 "PNO-" )
(setq rlist (append rlist (list(car rt))))
);end if
(princ "\n rlist:")(princ rlist)
(setq i (1+ i))
);end while i
); end 问题已经解决 晕死原来是 不知道什么时候把IF 里面多加了一个 /
页:
[1]