В отличие от предыдущей темы – сегодня очень простая, но в то же время крайне полезная статья. Давно искал инструмент, который может если не на 100%, то на 80% защитить мою интеллектуальную собственность. Судя по названию, думаю, уже догадались, о чем эта статья.
Некоторые заказчики требуют предоставить проектно-сметную документацию в электронном виде. Это даже прописывают в договоре.
Но, я считаю, что документация должна передаваться заказчику исключительно в формате pdf, поскольку на листах могут присутствовать подписи разработчиков.
Что делать, если проект (чертеж) нужно передать в формате dwg?
Такое тоже часто бывает. И это вполне нормально, если заказчик будет использовать эти файлы исключительно для своих, некоммерческих целей.
Для меня основная ценность проекта – мои динамические блоки, которые постоянно совершенствую и на которые потрачено очень много времени.
При передаче dwg файлов мне хочется, чтобы хотя бы моими динамическими блоками он не смог воспользоваться, но при этом у него была бы возможность редактировать файл.
На блоге у меня имеется статья: Как защитить файл AutoCADa? Описанный там способ не решает поставленных задач, поэтому я искал нечто более совершенное.
Если блок простой, то его достаточно разбить на примитивы стандартным инструментом программы AutoCAD. Но, если в блоке используются атрибуты, то здесь могут возникнуть сложности.
Также я дополнительно устанавливал панель EXSPRESS, но блоки с атрибутами разбивались некорректно.
Ползая по просторам интернета, я наткнулся на очень полезное приложение (bgtools 3.1а.lsp).
Загружается оно в AutoCAD аналогично приложению ES_Convert.
Данное приложение позволяет сделать следующее:
BG1BLEXP — Взрывает блоки, состоящие из одного примитива (возможно другого блока);
BGBLEXP — Взрывает блок и все блоки, входящие в него, превращая видимые атрибуты в текст;
BGBLEXP1 — Взрывает блоки 1-го уровня, превращая видимые атрибуты в текст;
BGBLDYNEXP1 — Взрывает динамические блоки 1-го уровня, превращая видимые атрибуты в текст;
BGBLEXP1NOATT — Взрывает блоки 1-го уровня, у которых нет видимых атрибутов;
BGBLXCLIP — Показывает подрезанные блоки;
BGBLDYN2A — Преобразовывает динамические блоки в анонимные;
BGBLDYN2S — Преобразовывает динамические блоки в статические;
BGBLALLDYN2A — Преобразовывает ВСЕ динамические блоки в анонимные;
BGBLALLDYN2S — Преобразовывает ВСЕ динамические блоки в статические;
BGBLXCLIPEXP — взорвать подрезанный блок;
BGCB — копирует одно из вхождений блока в блок с новым именем;
BGRB — переименовывает одно из вхождений блока в блок с новым именем;
M2U — Преобразовать MINSERT в Unnamed блок;
M2B — Преобразовать MINSERT в блок;
U2B — Преобразовать UNNAMED в блок;
U2BM — Преобразовать UNNAMED в блок множественный выбор;
UX — Взорвать UNNAMED блок;
BGRGB2ACI — Изменяет цвет с RGB на ACI;
BGAll2RGB — Изменяет ACI цвет в его RGB эквивалент;
BGCOLOR — Задает выбранный цвет всем объектам;
BGCOLORXREF — Меняет цвет выбранных внешних сылок (только в текушем сеансе);
BGResetXRef -Сброс настроек слоев выбранных внешних ссылок на установленные в исходном файле;
BGBLCC — Изменяет цвет выбранных блоков;
BGENCC — Изменяет цвет выбранного элемента блока;
BGCATT — Изменяет цвет атрибутов выбранных блоков;
BGCBL2 — Изменяет цвет в блоках 2 и более уровня (вложенных блоках);
BGBLFIX — Нормализация блоков;
BGCFT — Конвертирует все поля в обычный текст;
BGCFTSEL — конвертирование полей в обычный текст в выбранных примитивах;
BGHATCHDEL — Удаление штриховки.
Из всех функций нашу задачу позволяют решить BGBLEXP1, BGBLDYNEXP1, BGBLDYN2A, BGBLDYN2S.
BGBLEXP1, BGBLDYNEXP1 работают отлично, однако, на одном блоке у меня пропадает атрибут. С чем это связано… мне не понятно.
Если и у вас возникнет такая же проблема, то просто преобразуйте свой блок в анонимный либо статический при помощи BGBLDYN2A, BGBLDYN2S.
В видео можно посмотреть, как работают данные команды:
bgtools 3.1а.lsp можно найти в интернете.
Ничего лучше я пока не встречал.
Есть еще какая-то встроенная защита автокада, извините, что без пруфов, просто раз сталкивался. так вот, там было файлу автокада присвоено свойство наподобие учебный, то есть он был полностью рабочий, но при печати с него на полэкрана печаталась полупрозрачная надпись "учебный". и при копировании любого элемента из этого проекта в новый файл свойство "учебный" переходило на новый файл. то есть копировать любые элементы для дальнейшего использования становилось проблематично. а для визуального ознакомления пожалуйста.
и для нормальной печати заказчику отправляется конечно же ПДФ )
На форуме-первоисточникеforum.dwg.ru/showthread.php?t=66355 уже давно версия макроса 3.1а. С ней возможно у Вас исчезнет указанная проблема.
Changelog (после выложенной 2.22)
2.23 — Fix BGCB BGRB command
2.24 — Edit UX command
2.25 — Fix BGBLCC и BGCBL2 command. Add BGCFTSEL
2.26 — Fix BGCFT command. Add BGBLALLDYN2A and BGBLALLDYN2S
2.27 — in command U2B, UX added processing blocks named *E
2.28 Fixed minor bugs in BGCFT command and function bg:DynToStatic
2.29 Fixed minor bugs in function ClearFieldInThisObject
2.30 Fixed minor bugs in function ClearFieldInThisObject
2.31 BGCFT clear field in dimention now
(forum.dwg.ru/showthread.p...5110#post1335110 )
2.32 minor change in bg:get-TextString (forum.dwg.ru/showpost.php...mp;postcount=235 ) mark ; VVA 2015-03-27
2.33 minor change in bg:get-TextString (forum.dwg.ru/showpost.php...mp;postcount=252 ) mark ; VVA 2015-05-23
2.34 BGBLFIX now change named plot style
2.35 BGBLEXP minor change
2.36 UX minor changeforum.dwg.ru/showthread.p...1560#post1421560
2.37 BGCFT fix bug with lock sell/ Marked as ;_Add VVA 2015-07-08
2.38 BGLAYDEL fix bug with restore layer setting
2.40 minor change in function bg:FieldCode. Add function bg:GetObjectIDString mark VVA 2015-12-07
2.41 minor change in function ClearFieldInThisObject. Mark VVA 2016-01-04
3.0 BGCOLBL
3.1 BGBLEXP — save field in attrib
Все это от жадности ну и пусть пользуются. В сети авторы блоков выкладывают свои разработки, не требуя и не прося денег. Вы же табличку Exel называете программой и требуете денег.
Я ничего ни от кого не требую, исключительно по желанию!
Для взрыва блоков с атрибутами использую BurstUpgradedV1-2. На DWG.RU есть описание.
У меня BurstUpgradedV1-3.lsp. Раньше не мог ее запустить (burst), сейчас проверил, разбивает мой проблемный блок без проблем.
А пдф это не электронный вид, где прописано что именно в dwg формате? Для этих целей существует формат dxf? ПДФ, это очень даже электронный вид.