明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1713|回复: 6

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

[复制链接]
发表于 2014-1-4 09:21:47 | 显示全部楼层 |阅读模式
lisp程序中如何同时实现用鼠标点取或用键盘输入数字的方法确定第二点,用户可以根据需要自己选择
"觉得好,就打赏"
还没有人打赏,支持一下
发表于 2014-1-4 10:21:15 | 显示全部楼层
试一试getdist
发表于 2014-1-4 10:21:56 | 显示全部楼层
  1. (defun c:tt(/ p1 p2)
  2.   (setq p1(getpoint "\naa"))
  3.   (setq p2(getpoint p1 "\nccc"))
  4.   (command "line" "non" p1 "non" p2)
  5.   )
发表于 2014-1-4 10:55:39 | 显示全部楼层
你可以好好看看这个函数的用法-INITGET,这个函数决定你下面的get函数所能获取的值,然后再用一个判断语句来识别你输入的是点坐标还是字符或者是数字。
(initget 128)
(setq pt (getpoint "指定第一点:"))
(if (= (type pt) 'STR)
  (.......)
  )
发表于 2014-1-4 11:51:36 | 显示全部楼层
chg 发表于 2014-1-4 10:55
你可以好好看看这个函数的用法-INITGET,这个函数决定你下面的get函数所能获取的值,然后再用一个判断语句来 ...

(initget 128)
(setq pt (getpoint "指定第一点:"))
(type pt)
好象我不管怎么输入最后都是LIST
发表于 2014-1-4 11:52:51 | 显示全部楼层
(GETPOINT)本来就允许你鼠标点取或者键盘输入
发表于 2014-1-4 12:56:28 | 显示全部楼层
本帖最后由 ll_j 于 2014-1-4 12:58 编辑
llsheng_73 发表于 2014-1-4 11:51
(initget 128)
(setq pt (getpoint "指定第一点:"))
(type pt)


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

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


不过楼主的问题似乎只是getpoint函数还使用的不熟而已。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2025-5-25 20:55 , Processed in 0.179816 second(s), 28 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表