在李之后,我所做的就是:
- (defun 3digspace ( str len / k kk kkk 3dig stdig newstr )
- (setq newstr "")
- (setq k (fix (/ (float len) 3.0)))
- (setq kk (rem (float len) 3.0))
- (if (eq kk 0.0) (setq k (- k 1)))
- (setq kkk 0)
- (repeat k
- (setq kkk (1+ kkk))
- (setq 3dig (substr str (+ (- len (* kkk 3)) 1) 3))
- (if (eq k kkk) (setq stdig (substr str 1 (- len (* kkk 3)))))
- (setq newstr (strcat " " 3dig newstr))
- )
- (setq newstr (strcat stdig newstr))
- newstr
- )
- (defun c:dimch ( / dimss n dim dimval d dimvalstr dimvalstrl dimvalstrnew )
- (setq dimss (ssget '((0 . "DIMENSION")) ))
- (repeat (setq n (sslength dimss))
- (setq dim (ssname dimss (setq n (1- n))))
- (setq dimval (cdr (assoc 42 (setq d (entget dim)))))
- (setq dimvalstr (itoa (fix dimval)))
- (setq dimvalstrl (strlen dimvalstr))
- (setq dimvalstrnew (3digspace dimvalstr dimvalstrl))
- (entmod (subst (cons 1 dimvalstrnew) (assoc 1 d) d))
- )
- (princ)
- )
M.R。 |