[LISP]为输入增加价值
你好我希望能够键入我想要的视口比例。
在活动视口中手动输入“Zoom”>“Scale'>1xp(1:1000)。
我已经“Lisp程序”了,当我在视口中输入“1”时,比例变为1:1000,当我输入4时,比例变为1:250,以此类推。
对于一些绘图来说,它的比例无关紧要,但是我必须做很多动作来改变它(2个鼠标点击对我来说已经准备好了)。
所以我想创建一个lisp。
(Defun C:v ()
(command "_zoom" "scale" pause)
(princ)
)
这就是我得到的。简单明了。暂停让我手动输入,我必须用“xp”结束输入,以获得正确的比例。
缩放>比例>22与
缩放>比例>22xp
但我不想在最后添加XP。所以我有点希望它是预定义的,当我键入“22”然后>输入时自动添加
这可能吗?
(defun c:FOO (/ scale)
(if (setq scale (getreal "\nEnter a zoom scale factor: "))
(command "._zoom" "scale" (strcat (rtos scale 2 2) "xp"))
)
(princ)
)
(定义C:v(/userscale)
(setq userscale(strcat(getstring“输入所需比例:”)“xp”))
(命令“\u zoom”“\u scale”userscale)
(普林斯)
) 啊,似乎很简单。。谢谢,我以后可以用这个。
我当然希望用户每次都输入一个有效的整数/实数。
Command: v
enter required scale:foo
_zoom
Specify corner of window, enter a scale factor (nX or nXP), or
<real time>: _scale
Enter a scale factor (nX or nXP): fooxp
Requires a distance (or numberX).
; error: Function cancelled
不客气;我很乐意帮忙。 可能是一个22.5的值,猜猜你的(黑盒)使这两个都可能吗?
简单修复。。。我将GetInt更改为GetReal。。。请参阅此处修订的代码。 多给你一杯啤酒!
令人惊叹的弗罗斯特·埃尔丁·赫菲韦岑请给我。
https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQJInBTamy0h4weaa8vTqhKdofKnYlvtp6py9D6QDtbRS-肯尼亚
页:
[1]
2