明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 574|回复: 4

[提问] Command中,特殊符号”@”和"\\"是什么意思

[复制链接]
发表于 2024-12-27 09:48:53 | 显示全部楼层 |阅读模式
本帖最后由 hubeiwdlue 于 2024-12-27 10:16 编辑

   关于Command中的"@"和"\\",没找到相关资料,看别人使用,理解是这样的,但不清楚对不对,全不全。

   ”@”表示最近输入的点,即(getvar "lastpoint")。Command中,只要输入点,就是"lastpoint",lisp中,则需要(setvar "lastpoint" pt1)。
   “\\”和command中的pause是一个意思,暂停交互给用户输入。

   请大家指导一下,谢谢了。


点评

AutoCAD 中提供了非常详细的开发相关帮助文档, AutoLISP等各 API 的都有。  发表于 2024-12-28 08:39
"觉得好,就打赏"
还没有人打赏,支持一下
回复

使用道具 举报

发表于 2024-12-27 11:25:34 | 显示全部楼层
(setvar "lastpoint" pt1)这个不需要吧。需要(getvar "lastpoint")就够了呀,系统会自动(setvar "lastpoint" pt1)
回复 支持 反对

使用道具 举报

发表于 2024-12-28 10:06:08 | 显示全部楼层
在命令流中@确实是上一个点的意思,还有TK 和FOR,你可以试试,都是和确定点坐标有关
回复 支持 反对

使用道具 举报

 楼主| 发表于 2025-1-14 16:36:08 | 显示全部楼层
若一个中望CAD 命令在运行过程中遇到一个作为 command 函数参数的预定义符号 PAUSE,中望CAD 就会暂停该命令的运行而等待用户输入(通常是选择点或拖动),这一特性与菜单文件中提供的反斜杠(\)暂停机制很相似,当获取有效输入后 command 函数将继续执行。

当 command 函数处于挂起状态时,如果发出一条透明命令,command 函数会继续保持挂起状态,这样,在 command 暂停时用户可以使用 _nea、_mid 等命令设置临时对象捕捉点。例如,以下代码先运行 circle 命令绘制一个半径为 6.0 圆,再运行 move 命令以圆的圆心作为移动的基点,然后暂停以让用户指定圆的圆心的新位置。当用户指定了所需的点后,函数将继续执行,绘制与圆相切的六边形,如下所示:

命令:(command "circle" "0,0" 6.0 "move" "L" "" "@" pause "polygon" 6 "@" "C" 6.0)

如果在命令需要输入字符串或属性值时遇到 PAUSE,中望CAD 仅在 TextEval 系统变量非零时暂停以等待输入。否则,中望CAD 不等待用户输入,而将 PAUSE 符号解析为一个反斜杠(\)作为文字内容
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-1-22 19:08 , Processed in 0.296793 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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