command不能循环调用吗?请大佬答疑解惑。
lisp吧
全部回复
仅看楼主
level 1
测绘🌊 楼主
先说需求,给车位标注。单个车位标注一个数字;连续的标注“*—*”,例如“4-6”“5-9”。
实现逻辑就是先输入一个开始值,然后循环(输入步进值,标注)。
(defun c:cw()
(setq QS 0)
(setq QS (getint "\n输入开始值:"))
(setq i 0)
(setq BJ 0)
(while (< i 1000)
(setq BJ (getint "\n输入步进值:"))
(cond
((< BJ 2) (setq txt (itoa (+ BJ QS))))
(t (setq txt (strcat (itoa QS) "-" (itoa (- (+ QS BJ) 1)))))
)
(setq QS (+ QS BJ))
(setq i (+ i 1))
(command "ZJWZ" txt)
)
)
附上代码和运行情况。
连续跳出上次输入步进值,一次标注后就报函数错误。
2023年08月16日 03点08分 1
level 1
是可以循环调用command的,可以使用for循环、while循环或者其他形式的循环来实现。例如,通过for循环,可以在一段时间内重复执行某个command;而通过while循环,则可以在满足一定条件时重复执行某个command。此外,也可以使用bash中的函数和子shell来实现command的循环调用。
2023年08月17日 14点08分 2
1