为何entsel开始需点击2次才能选上图元?
这是给尺寸数字加括号的程序,为何开始时需点击尺寸2次才能选中尺寸,后续只需点击一次尺寸即可选上?请各位大侠指点。(defun c:cckh(/ aaa bbb kk %q)
(while (setq ccm (entsel "\n【添加或删除尺寸括号】 点选尺寸:"))
(setq aaa (car ccm))
(setq bbb (entget aaa))
(setq kk (cdr (assoc 1 bbb)))
(if (= kk "<>")
(progn
(setq %q (strcat "(" "<>"")"))
(setq bbb (subst (cons 1 %q) (assoc 1 bbb) bbb));
(entmod bbb)
(princ)
)
(progn
(setq %q "<>")
(setq bbb (subst (cons 1 %q) (assoc 1 bbb) bbb))
(entmod bbb)
(princ)
)
)
)
) 惭愧,没发现异常,看来要上机才知道原因 可能问题出在if 标注内容是的空字符,多加一个判断(defun c:cckh (/ aaa bbb kk %q)
(while (setq ccm (entsel "\n【添加或删除尺寸括号】 点选尺寸:"))
(setq aaa (car ccm))
(setq bbb (entget aaa))
(setq kk (cdr (assoc 1 bbb)))
(if (or (= kk "<>")(= kk ""))
(progn
(setq %q (strcat "(" "<>" ")"))
(setq bbb (subst (cons 1 %q) (assoc 1 bbb) bbb)) ;
(entmod bbb)
(princ)
)
(progn
(setq %q "<>")
(setq bbb (subst (cons 1 %q) (assoc 1 bbb) bbb))
(entmod bbb)
(princ)
)
)
)
) 感谢指点!
页:
[1]