就是PU清理啊
![](source/plugin/imc_colorcode/images/loading.gif) - (defun CAD_START_PURGE ()
- (princ "\n为保证图形质量,自动执行清理修复程序...")
- (setvar "cmdecho" 0) ; 禁用命令回显
- (setvar "AUDITCTL" 0) ; 禁用审计报告详情
- (princ "\n清理程序不会清理图层、字体、标注样式,如需清理请手动清理")
- (dictremove (namedobjdict) "ACAD_DGNLINESTYLECOMP") ; 移除DGN线型组件字典
- (setvar "LAYEREVALCTL" 0) ; 禁用图层评估
- (setvar "LAYERNOTIFY" 0) ; 禁用图层通知
- ; 清理项目列表(块/组/线型/材料/多重引线样式/形状/多线样式/表格样式/视觉样式)
- (setq pur_lst (list "B" "G" "LT" "MA" "MU" "SH" "M" "T" "V" ))
- ; 执行清理命令
- (mapcar '(lambda(p) (vl-cmdf "_.-purge" (strcat "_" p) "*" "_N")) pur_lst)
- (vl-cmdf "-purge" "Z") ; 清理零长度几何图形
- (vl-cmdf "-purge" "E") ; 清理空文字对象
- (vl-cmdf "-purge" "R" "*" "n") ; 清理注册应用程序
- ; 再次执行清理命令确保彻底清理
- (mapcar '(lambda(p) (vl-cmdf "_.-purge" (strcat "_" p) "*" "_N")) pur_lst)
- (vl-cmdf "-purge" "Z")
- (vl-cmdf "-purge" "E")
- (vl-cmdf "-purge" "R" "*" "n")
- ; 第三次执行清理命令确保彻底清理
- (mapcar '(lambda(p) (vl-cmdf "_.-purge" (strcat "_" p) "*" "_N")) pur_lst)
- (vl-cmdf "-purge" "Z")
- (vl-cmdf "-purge" "E")
- (vl-cmdf "-purge" "R" "*" "n")
- ; 执行审计修复命令
- (vla-AuditInfo (vla-get-ActiveDocument (vlax-get-acad-object)) :vlax-true)
- ; 执行比例列表编辑命令,删除所有比例列表项
- (vl-cmdf "-scalelistedit" "d" "*" "e")
- ; 恢复变量设置
- (setvar "ANNOALLVISIBLE" 0)
- (setvar "cmdecho" 1) ; 恢复命令回显
- (princ "\n清理完成\n") ; 打印清理完成信息
- (princ)
- )
|