атрибуты блока, Autocad
Атрибуты блока в автокаде — это текстовые переменный которые мы добавляем в блок для того чтобы хранить или выводить дополнительную информацию. Это удобно например для создания автоматических спецификаций, когда блок хранит в себе параметры реального объекта — название, наименование, производителя, комментарий, код, маркировку на чертеже, мощность и т.п.
Чтобы правильно пользоваться атрибутами необходимо понимать одну не очевидную особенность реализации этого инструмента в Автокаде. Сам блок это некоторая инструкция которая хранится в библиотечной части файла, и не видна на чертежах. А то что мы видим на чертеже это ссылка на блок — у ссылки упрощённо говоря есть четыре параметра — координаты, и название блока. Автокад видя объект ссылка на блок — берет инструкцию из библиотеки и отрисовывает экземпляр блока в указанном месте.
При чем здесь атрибуты? Атрибуты это параметры которые мы задаем в описании блока, но их значения живут только во вхождении на черетеже. Сделав это отступление перейдем к практической части.
- Создание атрибута блока
- Как редактировать блок с атрибутами
- Добавление атрибутов к существующему блоку
- Команда _battman — синхронизация атрибутов
Создание атрибута блока
Добавить атрибут можно разными способами, самый универсальный командой: _attdef либо в меню: Рисование/Блок/Определение атрибутов она вызывает панель определения атрибута, где можно настроить все параметры определения. Пока добавим Тэг — имя атрибута, пусть будет NUM. Жмем окей, вставляем атрибут на чертеж.
Получаем вот такой объект — Определение атрибута
Как видим в его свойствах мы можем настроить все параметры которые видели при создании блока. Впрочем в модели атрибут — бесполезен. Поэтому создадим блок test с атрибутом — num, для большей наглядности включим в наш блок еще и геометрический элемент — окружность, назовём блок — Test:
Нажимаем окей. Появляется дополнительное окно, где нас просят ввести значения атрибутов, введем — 1.
В результате получаем вхождение блока вида:
Во первых, обратим внимание — атрибут num вроде бы как исчез, вместо него во вхождении блока отображается «1». Но, если посмотрим в свойства блока, то увидим там новую вкладку — атрибуты. И новый параметр, уже знакомый нам — NUM, со значением «1». Собственно это значение мы можем редактировать, выводя вместо единицы любое сообщение.
Теперь решим еще две задачи:
Как редактировать блок с атрибутами
Что если мы хотим добавить еще атрибуты к блоку? И что если значения этих атрибутов нам нужно выводить только в спецификацию, а на чертеже они в общем и ни к чему, будут только мешать. Для этого перейдем в редактор блока.Тут нас ожидает небольшой сюрприз, если просто дважды кликнуть по блоку с атрибутами открывается не редактор блока, а редактор атрибутов блока.
Чтобы всё таки отредактировать блок жмем ПКМ(правая клавиша мыши) и в контекстном меню выбираем редактор блоков.
Этот момент так же надо учитывать при работе с такими блоками.
Добавление атрибутов к существующему блоку
В редакторе блоков копируем атрибут (если он есть, если нет, смотри выше как его создать), и меняем в свойствах копии — Тег на COMMENT, Скрытый — Да, можно добавить Подсказку и значение по умолчанию.
Закрываем редактор блока, сохраняем изменения. Логично было бы предположить что у блока появится новое свойство — комментарий, и он будет скрытым, т.е. на чертеже отображаться не будет. Однако по факту нового свойства не появилось. В чем дело?
Атрибуты блока автокад, синхронизация — команда _battman
Особенность архитектуры Автокада — определения блоков хранятся отдельно от их вхождений на чертеже. По скольку атрибут — параметрический элемент зависящий не столько от описания блока, сколько от значений во вхождении блока, то требуется дополнительная синхронизация чтобы перерисовать все атрибуты во всех вхождениях блоков. Так же нужно понимать, что все индивидуальные параметры атрибутов кроме самого значения будут сброшены (координаты, размеры текста, повороты, шрифты).
Для этого в Автокаде есть специальная команда — _battman, (набирать её нужно именно так, поскольку на русский её до последних версий автокада так и не перевели, в 2016 её можно вызвать также с помощью команды ДИСПАТБЛК).
С её помощью открывается так называемый диспетчер атрибутов, в нем сначала жмем кнопку — выбрать блок. Выбираем наш блок. И видим что в диспетчере наш новый атрибут появился. Жмем кнопку обновить. И потом ОК.
Снова смотрим в свойства блока:
Теперь у нашего блока появился новый атрибут — комментарий.
Аналогичным образом мы можем добавлять новые атрибуты к блокам.
- Редактируем блок в редакторе
- Синхронизируем вхождения блоков на чертеже с помощью команды _battman
Dataextraction — получаем таблицу с данными из блока.
Один из вариантов использования атрибутов — создание спецификаций и подсчет вхождений блоков на чертеже. С версии 2011 в автокаде есть инструмент — dataextraction. Он позволяет получить таблицу в виде таблицы в автокаде, либо в виде .csv файла, который можно открыть в Excel.
Однако, настройка dataextraction процесс далеко не тривиальный. В качестве альтернативы можно использовать специализированные решения, например — автоматическую спецификацию автокад.
Ссылки на другие материалы:
- Возможно так же вам будет интересна тема применения полей в автокаде.
- А тут можно найти интересный скрипт который позволяет перемещать атрибуты блока у группы блоков.
- Выравнивание в Автокаде
- Растягивание в автокаде
- Аннотативность в автокаде
Спасибо. Сначала запутался, но потом сделал.
В AutoCAD Electrical 2016 команду перевели как ДИСПАТБЛК — диспетчер атрибутов блока.
Спасибо! Именно по этому всегда запускаю оригинальные команды.
Спасибо Вам большое за автоматическую спецификацию которую Вы мне прислали по почте. Все работает. Перевел свои атрибуты блоков под эту программу и теперь легко и быстро получаю спецификацию. Сейчас дорабатываю остальные блоки. Вы мне очень сберегли время, нервы, а главное зрение. Дай Аллах вам здоровья. Привет всем из Казахстана.
Пожалуйста!
Успехов в профессиональной деятельности! Для этого и делали )
Спасибо!!
Команда которая позволяет синхронизировать/обновить атрибуты — АТРОБНОВИТЬ.
Спасибо! Отличный комментарий!
Добрый день!
Не сталкивались с такой проблемой. К уже существующему блоку, добавляем атрибуты, хоть однострочный, хоть многострочный.
В итоге, если его выставить *Фиксированный: Да*. То при обновлении данный атрибут будет виден в модели.
Но если выставить *Фиксированный: Нет*, то при обновлении атрибута, данные атрибуты уходят в невидимость, а так же не отображаются в свойстве блока раздела Атрибуты. Но если зайти в редактор блока они будут видны. Параметра скрытый на них не стоит.
Сталкивался ли кто с такой проблемой?
В статье всё описано. #автокад-добавить-свой-атрибут
Запустить ДИСПАТБЛК — диспетчер атрибутов блока
Выбрать свой блок, и синхронизировать его.
Фиксированные атрибуты не нужно обновлять, так как они становятся не изменяемым дополнением блока считай просто текстовая строка. А не фиксированные необходимо синхронизировать. Это связанно с особенностью реализации блоков в среде автокада. (блоки храняться отдельно, а их вхождения это ссылки на блок, но при этом у каждой ссылки атрибуты индивидуальны. Соответственно меняем атрибуты в блоке, необходимо перерисовать все атрибуты всех вхождений блока в модели)
ОООО!!! Спасибо , ребят! Так изнервничался, искав решение…. Оно у вас в команде battman)))
Спасибо!
Ага, абсолютно бесячая штука. 🙂
Нажимаем окей. Появляется дополнительное окно, где нас просят ввести значения атрибутов, введем —
А нет такого окна, просто блок появляется (окружность и все) и команды. Версия 2017
Тут есть пара вариантов
— либо в описании блока нет атрибутов
— либо атрибуты статические и их значение задано при их создании,
— либо атрибуты были добавлены после создания блока, а описание блока в модели не было обновлено ( смотреть в статье команду _battman)
Europe, and in Ancient Russia
Date of publish — 2015.
While even 2024 Europe people still using Visio for P&D schema.
Job need to be done, that what important.