1-使用所需的名称(我提供APQC.LSP)将以下代码保存在AutoCAD support文件夹中。
- ;;; APQC.LSP, Audit-->Purge-->Qsave-->Close
- ;;; Mehre Taban Co., Mehrdad Ahankhah, [url="http://www.irancad.com/"]www.irancad.com[/url], [email="ahankhah@irancad.com"]ahankhah@irancad.com[/email]
- (vl-load-com)
- (defun [b][color=purple]C:APQC[/color][/b] ()
- (MT:Do:Audit)
- (MT:Do:PurgeAllNested)
- (if (MT:Do:Qsave)
- (MT:Do:CloseDwg)
- )
- )
- (defun [b][color=purple]MT:Do:Audit[/color][/b] () (command "_.Audit" "y" ""))
- (defun [b][color=purple]MT:Do:PurgeAllNested[/color][/b] (/ Cont)
- (princ "\nPurging unused objects...\n")
- (setq Cont T)
- (while Cont
- (MT:Do:PurgeALL)
- (if (zerop (boole 1 1 (getvar 'Dbmod)))
- (progn (acad-pop-dbmod) (setq Cont nil))
- (progn (acad-pop-dbmod)
- (if (not (zerop (getvar 'Dbmod)))
- (progn (MT:Do:Qsave) (acad-pop-dbmod))
- )
- (princ "\n\tPurging unused nested objects...")
- ) ; if false
- ) ; if
- ) ; while
- (princ "\nPurging unused objects done.\n")
- )
- (defun [b][color=purple]MT:Do:PurgeALL[/color][/b] ()
- (vla-PurgeAll
- (vla-get-ActiveDocument
- (vlax-get-acad-object)
- )
- ); Visual Lisp version
- ;;(command "_.PURGE" "_All" "*" "_No"); AutoLISP version
- )
- (defun [b][color=purple]MT:Do:Qsave[/color][/b] (/ ret)
- (if (zerop (getvar "Dwgtitled"))
- (progn (alert "Drawing has no name, QSAVEing is not probable.")
- (setq ret nil)
- )
- (progn (command "_.QSAVE") (setq ret T))
- )
- ret
- )
- (defun [b][color=purple]MT:Do:CloseDwg[/color][/b] ()
- (command "_.CLOSE")
- (and (= 1 (getvar 'cmdactive)) (command "_Yes"))
- )
- [b][color=purple](C:APQC)[/color][/b]
2-打开AutoCAD。
3-发布APPLOAD。
4-在对话框中,选择“启动套件”区域中的内容按钮。
5-选择“APQC.LSP”将其添加到列表中。
6-关闭APPLOAD对话框。
7-将图形拖动到AutoCAD GUI中除“绘图区域”之外的任何点。
8-等待,看看所有的图纸是如何处理一个接一个。
9-完成任务后,转至步骤3。现在,您必须从启动套件的内容列表中删除“APQC.LSP”。 |