通过使用可引入以 DIESEL(直接解释求值字符串表达式语言)编写的宏表达式的命令,可以向宏中添加条件表达式。
$M=expression
引用带有 $M= 的宏可指示 AutoCAD 将字符串作为 DIESEL 表达式来计算,并通知程序 expression 是 DIESEL 表达式。下例定义了宏中的其他表达式:
FILLMODE $M=$(-,1,$(getvar,fillmode))
宏通过用 1 减去 FILLMODE 的当前值,并将结果值返回给 FILLMODE 系统变量,从而打开和关闭 FILLMODE 系统变量。可以使用此方法切换系统变量(有效值为 1 或 0)。
如果使用 DIESEL 字符串语言来执行“if-then”测试,条件可能会存在于用户不想使用普通终止空格或分号(相当于按 ENTER 键)的位置。如果在宏的末尾添加 ^Z,那么 AutoCAD 不会自动在宏表达式的末尾添加空格 (ENTER)。
与命令中使用的其他控制字符一样,此处使用的 ^Z 是由 ^(插入记号)和 Z 组成的,不相当于按 CTRL + Z 组合键。
^C^C$M=$(if,$(=,$(getvar,tilemode),0),$S=mview _mspace )^Z
^C^C$M=$(if,$(=,$(getvar,tilemode),0),$S=mview _pspace )^Z