每次加0.5,再取整
是不是这样? (setq b (fix (+ 0.5 b))) 搞一个对话窗口吧
、 (defun c:ecn ()
(setq b (getint "\n请输入三角内开始数字:"))
(setvar "cmdecho" 0)
(setq TAG T)
(while (setq a (getpoint "\n请输入基点:"))
(progn
(setvar "cmdecho" 0)
(command "polygon" 3 a "c"1.43 "")
(command "text" "j" "mc" a 2.5 "" b )
(if (setq TAG (not TAG))
(setq b (1+ b))
)
)
)
) 我的程序没有问题啊,我在我机子上运行,可以实现你的要求,不过第一个只有1个1,以后是2 2 3 3 ......,如果要两个1,可以改为一下:
(defun c:ecn ()
(setq b (getint "\n请输入三角内开始数字:"))
(setvar "cmdecho" 0)
(setq i 0)
(while (setq a (getpoint "\n请输入基点:"))
(progn
(setvar "cmdecho" 0)
(command "polygon" 3 a "c"1.43 "")
(command "text" "j" "mc" a 2.5 "" b "")
(if (= i 1)
(setq i 0b (1+ b))
(setq i 1)
)
)
)
)
曹版的程序和我的是一样的,只不过他的更容易理解,我是用0和1代表T和F。
页:
1
[2]