28/03/2014
Очистка файла dwg при открытии
Не секрет, что при открытии файла крайне желательно получить максимально очищенный от мусора файл. Причем так, чтобы очистка выполнялась в максимальном объеме, а ручной работы не было вообще.Памятуя о документе на GoogleDocs (если лениво ходить по ссылке, документ можно забрать здесь в формате docx, а здесь - в формате pdf), нарисовался вот такой вот код (ссылка приведена в конце статьи).
Здесь представлена вторая версия, которая учитывает возможность наличия в файле объектов максировки (wipeout), rtext (предшественника понятия поле) и arctext (текст по дуге, объект из ExpressTools). Код тестировался на AutoCAD 2013, 2014 для 32- и 64-разрядных систем с предустановленными ExpressTools
При использовании обратите внимание на параметр вызова: это сумма битов из списка
Значение бита | Пояснение |
1 | очищать графический и неграфический мусор (аналог обычного _purge) |
2 | очищать зарегистрированные приложения |
4 | проверка файла с исправлением ошибок (аналог _.audit _y) |
8 | очищать фильтры слоев |
16 | удалять историю создания твердых тел, включая вхождения в блоки (аналог команды _.brep) |
32 | удаление параметрических зависимостей, включая вхождения в блоки (аналог _.delconstrain) |
64 | при загруженном ExplodeAllProxy, demandload = 2, proxyshow = 1: разбиение графических прокси-объектов (автоматически добавляются биты 1, 2, 4) |
128 | при загруженном ExplodeAllProxy, demandload = 2, proxyshow = 1: удаление неграфических и неразбиваемых прокси-объектов (автоматически добавляются биты 1, 2, 4) |
256 | очистить следы VBA в файле |
Для очистки от прокси-объектов необходимо скачать комплекс ExplodeAllProxy от А.Ривилиса
Код для скачивания. Сейчас, если скачать код, он при загрузке сразу выполнится в максимальном объеме (обратите внимание на последнюю строку).
Обсуждение: http://adn-cis.org/forum/index.php?topic=636
Опубликовано 28.03.2014