曙光一号 发表于 2002-10-12 16:18:00

[求助]请问如何使用GETDIST函数

Getdist函数可以让用户通过键盘输入或在屏幕内输入两点以确定距离值
我想知道的是如和区分返回的值,是键盘输入的还是通过屏幕内输入两点确定的距离值

syf 发表于 2002-10-13 08:39:00

都可以,你看一下帮助,说得很明白

(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? "))

hothua 发表于 2002-10-13 21:35:00

答不对问

我也来增加以下自己的贴数,还是提供点思路吧,我没试过,说错了不要紧吧?
你想问的应该是如何判输入的值是通过鼠标点取,还是键盘敲入,方法有四:
一\你自己去翻翻系统变量,看看有没有区分二者的标志,我手上资料太少,无法帮忙,不过我试过"LASTPOINT",好像不行.
二\试试VLISP的反应器,好像有命令行监视函数,看看能不能行.
三\熟悉VB的话,可以这样,先使用VLISP设置一个标记,如创建一个文件,启动VB程序,然后(getdist),再检测标记,如新建文件是否又改变(内容,或者是否删除)----VB程序的要求,在CAD处于激活窗口的情况下,检测键盘的数字键是否发生按键操作,改变VLISP的标记值,如删除文件,或改变其内容.
四\使用ARX,象VB程序一样进行按键操作判断.
----------------------------------------------------------
我在干什么?真有点好笑,这也是解答

曙光一号 发表于 2002-10-14 07:06:00

VB、ARX我还没有接触到,但VLISP还知道一些,让我回去试一试吧,谢谢您的指点。

曙光一号 发表于 2002-10-14 07:09:00

谢谢您的帮助!下回发贴时,我一定把问题写的狠明白。

hothua 发表于 2002-10-14 16:47:00

我还是看得很明白,只是有些人?

ll_j 发表于 2002-10-14 18:09:00

以前讨论过。你用lastprompt搜索一下。

hothua 发表于 2002-10-14 21:53:00

ll_j说得对,长点见识

曙光一号 发表于 2002-10-15 06:42:00

“Lastprompt”是什么函数呀?怎么用?我在帮助文件里没找到。

hothua 发表于 2002-10-15 11:28:00

“Lastprompt”不是函数

如我所说的方法一,“Lastprompt”是一个系统变量
(defun c:test(/ dist cv)
(setq dist(getdist "输入距离"))
(setq cv (getvar "Lastprompt"))
(print cv)
;判断
。。。。
)
页: [1] 2
查看完整版本: [求助]请问如何使用GETDIST函数