本帖最后由 wzg356 于 2015-12-26 21:49 编辑
 - (defun c:adnum ( / ss i val1 val2 ent newstr)
- (setvar "dimzin" 1)
- (if (setq ss (ssget '((0 . "TEXT") (1 . "~*[~`--9]*"))));只选取数字文本
- (progn
- (setq i 0 )
- (setq val1 (getreal "\n输入要加的数:"))
- (setq val2 (getint "\n输入保留小数位:"))
- (repeat (sslength ss)
- (setq ent (entget(ssname ss i))
- newstr(rtos (+ (atof(cdr(assoc 1 ent))) val1) 2 val2)
- )
- (entmod (setq ent (subst (cons 1 newstr) (assoc 1 ent) ent)))
- ;(if (assoc 62 ent)
- ; (entmod (subst (cons 62 1) (assoc 62 ent) ent))
- ; (entmod (cons (cons 62 1)ent))
- ;)
- (setq i (+ 1 i))
- )
- )
- (alert "\n没有选中数字!")
- )
- (princ)
- )
|