szx025 发表于 2014-1-4 09:21:47

如何同时实现用鼠标点取或键盘输入数字的方法确定第二点

lisp程序中如何同时实现用鼠标点取或用键盘输入数字的方法确定第二点,用户可以根据需要自己选择

菜卷鱼 发表于 2014-1-4 10:21:15

试一试getdist

edata 发表于 2014-1-4 10:21:56

(defun c:tt(/ p1 p2)
(setq p1(getpoint "\naa"))
(setq p2(getpoint p1 "\nccc"))
(command "line" "non" p1 "non" p2)
)

chg 发表于 2014-1-4 10:55:39

你可以好好看看这个函数的用法-INITGET,这个函数决定你下面的get函数所能获取的值,然后再用一个判断语句来识别你输入的是点坐标还是字符或者是数字。
(initget 128)
(setq pt (getpoint "指定第一点:"))
(if (= (type pt) 'STR)
(.......)
)

llsheng_73 发表于 2014-1-4 11:51:36

chg 发表于 2014-1-4 10:55 static/image/common/back.gif
你可以好好看看这个函数的用法-INITGET,这个函数决定你下面的get函数所能获取的值,然后再用一个判断语句来 ...

(initget 128)
(setq pt (getpoint "指定第一点:"))
(type pt)
好象我不管怎么输入最后都是LIST

llsheng_73 发表于 2014-1-4 11:52:51

(GETPOINT)本来就允许你鼠标点取或者键盘输入

ll_j 发表于 2014-1-4 12:56:28

本帖最后由 ll_j 于 2014-1-4 12:58 编辑

llsheng_73 发表于 2014-1-4 11:51 http://bbs.mjtd.com/static/image/common/back.gif
(initget 128)
(setq pt (getpoint "指定第一点:"))
(type pt)


4楼所说的没错,我在“AutoLISP编程心得”中举过这样的例子。

命令: (initget 128)
nil
命令: (type (getpoint))
4
STR


不过楼主的问题似乎只是getpoint函数还使用的不熟而已。
页: [1]
查看完整版本: 如何同时实现用鼠标点取或键盘输入数字的方法确定第二点