我将一些lisp代码嵌入到一个lisp中,该lisp可以重命名布局并添加一个数字。由于当一个名称已经存在时,它会给出一个“name already exist”错误,因此我首先将所有布局名称更改为somerandomwords#,然后更改为正确的名称,即dwgname(不带.dwg)-1。(也许你可以用一些我不知道的黑色lisp魔术更快地完成。)但它工作得很好,所以不需要任何帮助,我们总是欢迎关于如何做得更好的建议
我从这里获得了大部分代码:
http://forums.augi.com/showthread.php?t=77060&highlight=rename+布局
- (vl-load-com)
- (defun c:RenLay ( / n )
- (setq n 1)
- (vlax-for x (vla-get-Layouts (vla-get-ActiveDocument (vlax-get-acad-object)))
-
- (if (not (eq (strcase (vla-get-name x)) "MODEL"))
- (vla-put-Name x (strcat "somerandomwords" (itoa n)))
- )
- (setq n (1+ n))
- )
- (setq n 0)
- (vlax-for x (vla-get-Layouts (vla-get-ActiveDocument (vlax-get-acad-object)))
-
- (if (not (eq (strcase (vla-get-name x)) "MODEL"))
- (vla-put-Name x (strcat (vl-filename-base (getvar 'dwgname)) "-" (itoa n)))
- )
- (setq n (1+ n))
- )
- )
|