批量除一个数的lisp,请高手改成保留成设置小数位置。
zhouzq490701
2010年12月17日 13:39:10
只看楼主

我有一个在cad里批量除以一个数的LISP。其中《(setq newr (rtos (/ (atof old0) s0) 2 1))》的1就是决定小数点后保留1位的。请高手改一下,能否增加语句,能在cad里选择。现在,我是修改以后再加载,比较麻烦。lisp见下文。(加载命令:cy;自身除一个倍数(DEFUN C:cy() (setvar "cmdecho" 0) (PRINT "(Copyright- aningtang)")

我有一个在cad里批量除以一个数的LISP。其中《(setq newr (rtos (/ (atof old0) s0) 2 1))》的1就是决定小数点后保留1位的。请高手改一下,能否增加语句,能在cad里选择。现在,我是修改以后再加载,比较麻烦。lisp见下文。(加载命令:cy

;自身除一个倍数
(DEFUN C:cy()
(setvar "cmdecho" 0)
(PRINT "(Copyright- aningtang)")
(SETQ s0 (GETREAL "请输入被除数:"))
(PRINT "PLEASE SELECT THE object")
(SETQ S (SSGET ))
(SETQ N (SSLENGTH S))
(SETQ M 0)
(REPEAT N
(SETQ SN (SSNAME S M))
(SETQ e (ENTGET SN))
(IF (= (cdr (assoc 0 e)) "TEXT")
(PROGN
(setq oldr (assoc 1 e))
(setq old0 (cdr oldr))
(setq newr (rtos (/ (atof old0) s0) 2 1))
(setq e1 (subst (cons (car (assoc 1 e)) newr) (assoc 1 e) e))
(entmod e1)
)
)
(SETQ M (+ M 1))
)
)
fc185e7a96a4b58c0999.rar
482 B
立即下载
免费打赏
liucongyi2007
2010年12月23日 15:37:00
2楼
=
=
=
我这有一个自动加减乘除的
回复
cwj198706
2011年05月07日 19:46:42
3楼
正需要啊!
回复
zhenbobo
2013年01月10日 09:03:24
4楼
需要,很需要 嘿嘿
回复
johnlylanyu
2013年09月26日 09:56:55
5楼
如何运行你的命令呢?我是输入命令cy,然后输入被除数,选中对象,回车,然后就没反应
回复
郭小城zweibo
2014年11月25日 16:53:44
6楼
感觉还挺有用的
回复

相关推荐

APP内打开