明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1489|回复: 3

[基础] 这样选第四个错了吗?

[复制链接]
发表于 2009-10-26 08:19:00 | 显示全部楼层 |阅读模式

我这样选三个的时候是可以用的
  (if (= ctr nil)()(prompt (strcat "\n冲头圆角半径(r)" (rtos ctr) " ,下模圆角半径(R) " (rtos xmr) " ,冲头离折弯线距离(L) " (rtos zwjl)))
  (setq pppp (getpoint "\n冲头圆角半径(r),下模圆角半径(R),冲头离折弯线距离(L)" ))
  (if (= pppp nil)()(setq ctr (car pppp) xmr (cadr pppp) zwjl (caddr pppp)))

但是加上一要选四个的时候,就显示“点无效”,是什么原因呢,请指点

  (if (= ctr nil)()(prompt (strcat "\n冲头圆角半径(r)" (rtos ctr) " ,下模圆角半径(R) " (rtos xmr) " ,冲头离折弯线距离(L) " (rtos zwjl) " ,下模离折弯线距离(XL)" (rtos xmjl))))
  (setq pppp (getpoint "\n冲头圆角半径(r),下模圆角半径(R),冲头离折弯线距离(L),下模离折弯线距离(XL) " ))
  (if (= pppp nil)()(setq ctr (car pppp) xmr (cadr pppp) zwjl (caddr pppp) xmjl (nth 3 pppp)))

发表于 2009-10-26 08:45:00 | 显示全部楼层

依此处:
(setq pppp (getpoint "\n冲头圆角半径(r),下模圆角半径(R),冲头离折弯线距离(L)" ))
则 pppp 是点位值,So ....  (nth 3 pppp)!?

===> (princ pppp) 即知

 楼主| 发表于 2009-10-26 09:22:00 | 显示全部楼层
不明白
发表于 2009-10-27 10:42:00 | 显示全部楼层

getpoint
 

暂停以等待用户输入点,并返回该点

(getpoint [pt] [msg]) 

用户既可以通过拾取点来指定点,又可以通过输入以当前单位格式表示的坐标来指定点。如果提供了 pt 参数,那么 AutoCAD 会从该点到当前十字光标位置画一条拖引线。该函数的返回值是当前 UCS 中的一个三维点。

用户不能输入一个 AutoLISP 表达式来响应 getpoint 的请求。

参数

pt

当前 UCS 中的二维或三维基点。

请注意 getpoint 函数还可以接受一个整数或实数作为 pt 参数,并使用直接距离输入法来指定点。这种方法以 LASTPOINT 系统变量的值作为起点,将 pt 作为距离,根据当前光标相对于 lastpoint 的位置确定方向。其结果是在当前光标位置的方向上和上一点之间的距离为指定值的点。

msg

用于提示用户的字符串。

返回值

当前 UCS 中的三维点。

示例

(setq p (getpoint)) 
(setq p (getpoint "选取点位置:")) 
(setq p (getpoint '(1.5 2.0) "选取第二个点:")) 
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-6 09:38 , Processed in 0.176559 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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