让AutoCAD宏飞起来的翅膀——反斜杠

著作权归作者所有,任何形式的转载都请联系作者。

如果说AutoCAD宏能提高工作自动化,那么其特殊控制字符——反斜杠(\)暂停宏让用户输入,则是给宏插上了翅膀,让宏能够飞起来。在AutoCAD命令使用中,所有的参数不一定都是固定不变的。那么,当某个或某些参数是变化的时候,也能用宏吗?有反斜杠支持,答案是肯定的。在AutoCAD宏中,在希望用户提供某种形式的输入(包括鼠标点击、键盘输入等)时,可以使用反斜杠(\)来暂停宏,等待用户输入,输入结束后宏继续运行。下面用实例来说明。

在下例中,绘制半径为1的圆,“\”将暂停Circle命令,系统将提示用户指定圆心。注意:在反斜杠后面没有空格(回车)。在该宏中,分号(;)的作用相当于按Enter键。

^C^Ccircle;\1;

在下例中,该宏启动 -LAYER 命令并输入“关闭”选项,然后系统将提示用户输入图层名,关闭该层。

^C^C-layer;off;\;

注:-LAYER 命令在完成一个操作之后,会继续提示进行下一个操作,仅在用户按Spacebar键或Enter键时才会退出。因此在输入层名之后需要一个回车(;)结束命令。

宏通常会在用户输入(如输入一个点)后恢复执行。因此,不能构造接受不确定个数的输入,如对象选择,然后继续执行宏。但 Select 命令除外,反斜杠(\)将暂停命令,直到完成对象选择。请看下面的例子:

^C^Cselect;\change;p;;p;c;blue;;

在该宏中,Select命令用于选择一个或多个对象(^C^Cselect;\)。然后,该宏将启动Change命令,使用“上一个”选项来选择对象,并将所有选定对象的颜色改为蓝色(change;p;;p;c;blue;;)。第一个p后面的两个回车,第一个回车输入p(属性),第二个回车结束选择对象;blue后面的两个回车,第一个回车是输入blue,第二个回车结束Change命令。这里的回车一个都能少,也一个都不能多。

反斜杠(\)为宏中的特殊控制字符,除了反斜杠外,还有一些其他常用的特殊控制字符:

1、连接符(-):命令前键入连字符 (-) 将不显示对话框,进行命令行提示。如Layer、Insert、MText等。顺带提一下,系统变量FileDia 控制与读写文件命令一起使用的对话框的显示。如 FileDia 设置为 1,SaveAs 命令将显示“图形另存为”对话框;如 FileDia 设置为 0,SaveAs 将进行命令行提示。

2、分号(;) :代表回车,前面已经叙述过。

3、空格( )  :命令序列之间的空格相当于按空格键。

4、$:引入条件Diesel宏表达式,请参见《AutoCAD的Diesel语言函数详解及示例解读》。

5、^C:相当于Esc键,请参见《使用AutoCAD的“宏”来自动化工作》;

6、*:重复执行某一命令(AutoCAD 2013及以后版本支持),如宏*^C^Cline;0,0;\;能够不停的绘制从原点(0,0)到某点(用户输入)的直线。

从上面示例可以看出,用好反斜杠,能将宏用得得心应手。

你可能感兴趣的:(让AutoCAD宏飞起来的翅膀——反斜杠)