扫描所选内容一次并递增
大家好!我希望扫描选择一次,并逐步希望大家帮助请
我发了一张照片。谢谢大家
你好
测试这个例程并让我知道;
(defun c:Test (/ i s e)
;; Tharwat - Date: 11.Mar.2017 ;;
(if (setq i (getint "\nSpecify increment number :"))
(while
(progn
(if (setq s (car (entsel "\nPick text object :")))
(if (eq (cdr (assoc 0 (setq e (entget s)))) "TEXT")
(progn
(entmod
(subst (cons 1 (strcat (itoa i) (substr (cdr (assoc 1 e)) 2)))
(assoc 1 e)
e
)
)
(setq i (1+ i))
)
(princ "\nInvalid object!. Try again.")
)
)
s
)
)
)
(princ)
)
非常感谢你。你的方式只是选择一个文本,我希望但得到所有的文字,以subst如何??非常感谢。 请尝试以下操作:
(defun c:test ( / i l n s )
(if (setq s (ssget "_:L" '((0 . "TEXT"))))
(progn
(repeat (setq i (sslength s))
(setq l (cons (entget (ssname s (setq i (1- i)))) l))
)
(setq n 0)
(foreach x (vl-sort l '(lambda ( a b ) (< (cadr (assoc 10 a)) (cadr (assoc 10 b)))))
(entmod
(subst
(cons 1
(strcat (itoa (setq n (1+ n)))
(vl-list->string
(vl-member-if-not
'(lambda ( x ) (< 47 x 58))
(vl-string->list (cdr (assoc 1 x)))
)
)
)
)
(assoc 1 x) x
)
)
)
)
)
(princ)
) 非常感谢李和大家。 不客气
页:
[1]