马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
![](source/plugin/imc_colorcode/images/loading.gif)
- ;|stgz=实体规整 by lxx.2009.7|;
- (defun c:stgz (/ D E E10 E11 ENT ENTYP FIL FILLST FILSS I IDFIL SS X)
- (vl-load-com)
- (if (not (setq d (getint "\n 四舍五入值(负数为小数点后位数)/<0>")))
- (setq d 0)
- )
- (princ "\n 选择过滤实体类型/<全部类型实体>:")
- (setq idfil '(10 11)) ;; 起点终点圆心.
- (setq filss (ssget)
- i -1
- )
- (if filss
- (progn
- (while (setq e (ssname filss (setq i (1+ i))))
- (setq entyp (cdr (assoc 0 (entget e))))
- (if (not (member entyp fillst))
- (setq fillst (cons entyp fillst))
- )
- )
- (setq fil
- (cons 0
- (vl-string-right-trim
- ","
- (apply 'strcat
- (mapcar '(lambda (x) (strcat x ",")) fillst)
- )
- )
- )
- )
- )
- )
- (princ "\n 选择要处理的实体:")
- (setq i -1)
- (if (if fil
- (setq ss (ssget (list fil)))
- (setq ss (ssget))
- )
- (while (setq e (ssname ss (setq i (1+ i))))
- (setq ent (entget e)
- e10 (assoc 10 ent)
- e11 (assoc 11 ent))
- (setq ent (subst (cons 10 (mapcar '(lambda(x)(x-sswr x d))(cdr e10))) e10 ent)
- ent (subst (cons 11 (mapcar '(lambda(x)(x-sswr x d))(cdr e11))) e11 ent))
- (entmod ent)
- )
- )
- )
- ;| 四舍五入.!!! ok!----by lxx.2006.9
- (x-sswr -325.3525 2) ->325.35
- (x-sswr 325.3525 -2) -> 300
- (x-sswr 325 -1) ->325.353
- |;
- (defun x-sswr (num n / e r)
- (setq e (expt 10. n)
- r (rem num e)
- num (- num r)
- )
- (if (> r (/ e 2))
- (+ num e)
- num
- )
- )
|