[求助]请问如何使用GETDIST函数
Getdist函数可以让用户通过键盘输入或在屏幕内输入两点以确定距离值我想知道的是如和区分返回的值,是键盘输入的还是通过屏幕内输入两点确定的距离值
都可以,你看一下帮助,说得很明白
(getdist )用户可以通过选择两个点来指定距离,如果提供了基点的话,则只需选择第二个点。用户还可以通过输入一个以 AutoCAD 的当前距离单位格式表示的数来指定距离。虽然当前距离单位格式可能是以英尺和英寸(建筑单位制)表示的,getdist 函数总是以实数形式返回这个距离值。
getdist 函数从第一个点到当前十字光标位置显示一条拖引线,以帮助用户确定距离值。
(setq dist (getdist))
(setq dist (getdist '(1.0 3.5)))
(setq dist (getdist "How far "))
(setq dist (getdist '(1.0 3.5) "How far? "))
答不对问
我也来增加以下自己的贴数,还是提供点思路吧,我没试过,说错了不要紧吧?你想问的应该是如何判输入的值是通过鼠标点取,还是键盘敲入,方法有四:
一\你自己去翻翻系统变量,看看有没有区分二者的标志,我手上资料太少,无法帮忙,不过我试过"LASTPOINT",好像不行.
二\试试VLISP的反应器,好像有命令行监视函数,看看能不能行.
三\熟悉VB的话,可以这样,先使用VLISP设置一个标记,如创建一个文件,启动VB程序,然后(getdist),再检测标记,如新建文件是否又改变(内容,或者是否删除)----VB程序的要求,在CAD处于激活窗口的情况下,检测键盘的数字键是否发生按键操作,改变VLISP的标记值,如删除文件,或改变其内容.
四\使用ARX,象VB程序一样进行按键操作判断.
----------------------------------------------------------
我在干什么?真有点好笑,这也是解答
VB、ARX我还没有接触到,但VLISP还知道一些,让我回去试一试吧,谢谢您的指点。
谢谢您的帮助!下回发贴时,我一定把问题写的狠明白。
我还是看得很明白,只是有些人?
以前讨论过。你用lastprompt搜索一下。
ll_j说得对,长点见识
“Lastprompt”是什么函数呀?怎么用?我在帮助文件里没找到。
“Lastprompt”不是函数
如我所说的方法一,“Lastprompt”是一个系统变量(defun c:test(/ dist cv)
(setq dist(getdist "输入距离"))
(setq cv (getvar "Lastprompt"))
(print cv)
;判断
。。。。
)
页:
[1]
2