抱歉花了这么长时间,伙计们,我忘记贴了!
我又换了一次,记得我说过要贴更紧的色带。
大卫做了所有的工作,所有的荣誉都归于他!
- ;originally made by David Bethel
- ;modified by Kablamtron
- (defun c:rgb (/ ss i en ed ev el minz delta pc nc)
- (if (setq ss (ssget "X" '((0 . "POINT"))))
- (progn
- (setq i (sslength ss))
- (while (setq en (ssname ss (setq i (1- i))))
- (setq ed (entget en)
- ev (caddr (cdr (assoc 10 ed)))
- el (cons ev el)))
- (setq minz (apply 'min el)
- delta (- (apply 'max el) (apply 'min el))
- i -1)
- (while (setq en (ssname ss (setq i (1+ i))))
- (setq ed (entget en)
- ev (caddr (cdr (assoc 10 ed)))
- pc (cdr (assoc 62 ed))
- nc (- 249 (abs (fix (* 24.9 (/ (- delta (- ev minz) 1e-4) delta 0.1)))))
- ed (if pc (subst (cons 62 nc) (cons 62 pc) ed)
- (append ed (list (cons 62 nc)))))
- (entmod ed))))
- (prin1))
|