Пакетная очистка файлов dwg

Захотелось мне создать такой мини-опрос :)

Известно, что нередки ситуации, когда надо сто-двести-пятьсот файлов очистить от мусора. Известно, что есть решения на том же dwg.ru / caduser.ru / cadtutor.net / theswamp.org etc, решающие такие вопросы.

Собственно вопрос - надо ли создавать код для таких задач? Будет он использоваться? Вообще - надо ли? Или оставить все как есть?

Прошу ответы в комментариях. В ответах не приводите никаких ссылок (иначе срабатывает спам-бот, комментарий может запросто свалиться в спам, и его никто не увидит).

Version 0.1.0; исходник.
Ошибки и пожелания

  1. Для 2013 и 2014 версиий AutoCAD добавить проверку и удаление проксиобъектов


Комментарии

Есть 74 коммент. к “Пакетная очистка файлов dwg”
  1. Влад пишет:

    Алексей, добрый день!
    Натравил твою программу на архив документов dwg.
    После успешной обработки части файлов, всплывает ошибка:

    Команда: BP
    Обработка файла Лестницы.dwg : |; ошибка: аргумент не является ошибкой
    vl-catch-all-apply: "Ошибка Automation. Отсутствует описание."

    Проделывал это на 2х машинах. Win7x64/Autocad2012x64rus и Win7x64/Autocad2015x64eng

    Ошибка одинаковая.
    После этого, насколько я понял, DEMANDLOAD стал=2

  2. Кулик Алексей aka kpblc пишет:

    Доброго. Оччень интересно... А файл глянуть можно? Я подозреваю, что проблема в самом файле и ее как-то надо "отслеживать". Но требуется пациент :(
    P.S. Файл можно скинуть на почту, например - я приеду домой сегодня и посмотрю, что там можно сделать.

  3. Влад пишет:

    Выслал файл и логи на почту

  4. Кулик Алексей aka kpblc пишет:

    Удалось скачать :)
    В файле обнаружены прокси:
    СПДС GraphiCS - 71 графический объект, 1 неграфический
    AEC-объекты (от вертикального приложения типа AutoCAD Architecture / AutoCAD MEP) - 307 неграфических объектов.
    В файле сохранились записи о 2 растрах (не предоставлены; вхождений не имеют).
    Проверка (которую можно выполнить только в текущем документе) выявляет 2 ошибки (что-то с размерами радиусов "не то").
    Кстати, такое количество фильтров слоев действительно необходимо?

    В общем и целом: если разбиение прокси-объектов еще реализовать можно, то удаление - увы и ах. То же самое с проверкой. Могу посоветовать в автозагрузку повесить код из http://autolisp.ru/2014/03/24/clear-dwg-at-opening/ - я думаю, что множество вопросов можно будет снять с повестки дня.

    P.S. Почищенный файл обратно высылать?

  5. Влад пишет:

    То, что файл - помойка я знаю.
    Чистить умею. Удаление прокси от Ривилиса использую давно.
    Файлов вагон и маленькая тележка, достался архив от проектного института.
    Временами, что то копирую в свои файлы. Вот и хочется почистить исходники, да и места меньше будут занимать.
    Открывать каждый файл, чтобы почистить при открытии - не подходит

  6. bernata пишет:

    Влад. Во всём архиве найдётся с десяток подобнх файлов.
    Их можно обработать вручную.

  7. Влад пишет:

    "В общем и целом: если разбиение прокси-объектов еще реализовать можно, то удаление – увы и ах. То же самое с проверкой. "
    А можно сделать так, чтобы программа не вываливалась на таких файлах, а просто пропускала?
    Ну и как бонус, вывести все файлы в лог, чтобы потом вручную, при желании, почистить?

  8. Влад пишет:

    "Их можно обработать вручную."
    Ну у всех архивы разные, и я не уверен, что их десяток.
    +Настройки для расположения лог файла не сохраняются
    +Слетают системные переменные (не верится, что у Алексея нет обработчика ошибок!)
    +Почищенный вручную файл (Removeallproxy, explodeallproxy, audit/y, purge/all) все равно не обрабатывается.
    BP на нем спотыкается и вываливается, с теми же признаками

  9. Влад пишет:

    "Их можно обработать вручную."
    Ну у всех архивы разные, и я не уверен, что их десяток.
    +Настройки для расположения лог файла не сохраняются
    +Слетают системные переменные (не верится, что у Алексея нет обработчика ошибок!)
    +Почищенный вручную файл (Removeallproxy, explodeallproxy, audit/y, purge/all) все равно не обрабатывается.
    BP на нем спотыкается и вываливается, с теми же признаками

    ЗЫ. Какой-то баг с сайтом. Забыл отметить галочку "Я не робот", вернулся назад, а опубликовать не могу. Говорит "Повторное сообщение удалено"

  10. Кулик Алексей aka kpblc пишет:

    Так, сегодня у меня точно не получится :( Работы накидали, я ничего не успеваю :(

    Если удастся в воскресенье поиграться, результат выложу.

  11. Николай пишет:

    Алексей, подскажи пожалуйста, почему после запуска скрипта в диалоговом окне вместо текста закорючки? Как это исправить?
    Windows 7 x64, Autocad 2012 x64 Rus.

  12. Кулик Алексей aka kpblc пишет:

    Подозреваю, что при записи исходника была использована кодировка не-Windows. Советую переоткрыть lsp в том же Notepad++ и там поменять кодировку. Потом lsp-файл сохранить и снова загрузить в AutoCAD.

  13. Евгений пишет:

    Алексей,
    подскажи какая кодировка в lisp ?

    иногда при создании кодов кракозябра в lispe из кирилицы

  14. Кулик Алексей aka kpblc пишет:

    Кодировка ANSI (Windows-1251).

  15. Евгений пишет:

    Привет!
    Сегодня заметили, что после очистки сбрасывается тип стрелки в Мультивыноске. Т.е. часть была стрелка, а часть засечка. После все стало стрелка.
    1. Возможно как-то исправить?
    2. это Purge только пакетный? Что-то белее чистит:(я не читал ветку комментов)

  16. Кулик Алексей aka kpblc пишет:

    Евгений, вычлени два примитива - один с изменяющейся стрелкой, второй с неизменной. Вышли мне, посмотрю.
    "Побелее" - это либо руками, либо http://autolisp.ru/2014/03/24/clear-dwg-at-opening/

  17. Евгений пишет:

    2. это Purge только пакетный?. Торопился...
    BP - это продвинутый Purge + пакетный?
    BP что/как чистит?

    файл завтра пришлю с работы.

  18. Евгений пишет:

    Проверил дома. ACAD 2013 x64/
    новый чертеж
    вставил мультивыноску со стрелкой
    вставил мультивыноску рядом с засечкой или любой другой вид.
    сохранил, закрыл и почистил - стрелки сбросились.

    Вытекающее: что еще может сброситься, если не исправиться?

  19. Кулик Алексей aka kpblc пишет:

    Ок, пойдем по-другому. Если выполнить штатные очистки - что будет? Если выполнить очистку от прокси - что будет?
    Если будет сегодня время - попробую создать файл с мультивыносками и посмотреть, что будет.
    Да, кстати! Менялись свойства конкретной выноски или настройки стиля?

  20. Евгений пишет:

    1. _purge - штатная . Все хорошо. Выноска не сбрасывается
    2. _purge - ВР. (остальное включено). - Сбрасывается
    3. ВР _purge - выключено, не сбрасывается
    4. от прокси - файл новый, прокси нет, чистил (найдено/удалено 0)
    5. _Audit - ошибок нет

    п.4 п.5 после очистки ВР - по нулям
    проблема в _purge - ВР.

  21. Евгений пишет:

    ни чего нового?

  22. Кулик Алексей aka kpblc пишет:

    Просто было не вздохнуть...
    Выяснил я, в чем дело. Если в стиле MLEADER или в объекте MLEADER переназначены стрелки с "Closed Filled" на любую другую - хоть из штатной поставки ACAD, хоть из ручного варианта - ACAD при обработке неактивного документа почему-то считает, что такой блок можно удалять. Можно, конечно, попытаться исключить такие моменты - но скорость упадет нереально, поскольку понадобится принудительно проходить по всем элементам чертежа, коллекционировать имена блоков / слоев / типов линий / размерных и текстовых стилей, и потом уже выполнять чистку. Это будет кошмар.
    Тут уж проще будет сформировать scr-файл и подсунуть его в консольный ACAD.

  23. Евгений пишет:

    Т.е. решение будет? или самостоятельно?

  24. bernata пишет:

    Шикарная прога. с 2013 года выручает. Сегодня ею мёртвый DWG файл удалось воскресить.

Поделитесь своим мнением


Я не робот.