启用"动态输入"测量距离时

时间:2017-08-06 13:50:14

标签: autocad autolisp

我有一个LISP例程,它使用getpoint在两点之间进行测量,然后创建一个表格(好吧,无论如何我会完成)根据测量结果用数字填充表格值。

问题是当我选择第一个点时,没有关于我选择的位置的视觉反馈,例如使用内置distance工具时。例如,在以下两个屏幕截图中,我选择了我的第一个测量点,但不是我要测量的第二个点;

使用distance工具; distance tool

使用我的工具; my tool

如何在LISP中添加此动态"动态输入" (我认为这是正确的术语?)为我的用户提供某种视觉反馈,该工具正如他们期望的那样工作?

1 个答案:

答案 0 :(得分:2)

函数(getpoint [pt] [msg])实际上有两个可选参数。看起来您已经在使用msg参数来显示您的自定义消息(“选择第二个点”),但您可以将前一个点作为第一个参数传递,以获得该点与该点之间的良好参考线十字星。例如:

(setq P1 (getpoint "Choose first point: "))
(setq P2 (getpoint P1 "Choose second point: "))

此外,还有一个(getdist [pt] [msg])函数,其行为类似,但预览并返回距离。

(setq P1 (getpoint "Choose first point: "))
(setq P2 (getdist P1 "Choose second point: "))