利用lisp实现CAD图层的快速切换
前一段时间介绍了通过动作宏来的录制来实现CAD图层的快速切换。如果图层比较多的时候就需要录制很多个动作宏,修改起来也不方便。今天再介绍一种更加方便的方法来快速切换图层。
操作方法
- 01
通过LISP来实现CAD图层的快速切换。 我们都知道CAD中有个变量叫做系统变量。这个变量存储了CAD当前的一些配置信息。今天我们要用到的变量就是”clayer”。 ”clayer”这个变量存储的就是我们CAD中当前所在图层的图层名。我们要快速切换图层只要修改这个”clayer”变量所存储的图层名字就可以了。
- 02
具体代码我这里贴出来: ;设置当前图层的函数: (defun ChangeLayer (TargetLayer) ;设置当前图层的函数 (setvar "clayer" TargetLayer) ;设置当前图层为目标图层 ) ;快速切换图层的函数: (defun c:111() ;动力线缆图层切换函数(也是调用的快捷键) (ChangeLayer "2-动力-线缆") ;对设置图层函数的调用 ) (defun c:222() (ChangeLayer "3-照明-线缆") )
- 03
这里的111、222就分别是切换到"2-动力-线缆"、"3-照明-线缆"这两个图层的快捷键。 有需要的图层只需要在代码中继续添加下面的函数来实现。 (defun c:xxx() (ChangeLayer "yyy") ) 其中xxx是切换该图层的快捷键,yyy是该图层的名字。 上期有人问到这个代码怎么使用。下面我简单讲一下使用步骤: 1. 复制上述代码到记事本并根据自己需求做适当改动。 2. 保存关闭后将TXT文档的后缀改成.lsp 3. 在CAD中通过快捷键AP来加载这段代码
- 04
也有部分人不会弄这些代码,我这里也提供一个我自己开发的小工具来更方便的实现快速的图层切换。 小葛CAD工具箱的图层切换功能: 打开小葛CAD工具箱的图层切换如下所示
- 05
点击编辑就可以编辑对应需要快速切换的图层。 具体使用操作如下图gif动画所示。