В уроке описан пример создания динамического блока с новогодними часами, время на которых определяется выбранным состоянием видимости, а в полночь на циферблате появляется Дед Мороз. При написании урока использовалась AutoCAD 2024 с рабочим пространством Drafting & Annotation (Рисование и аннотации).
Файлы
Исходный чертеж (файл DWG, 118.43 KB + файлы TTF, 1.36 MB): Скачать
Готовый динамический блок (файл DWG, 139.31 KB + файлы TTF, 1.36 MB): Скачать
Текст
1. Открываем чертеж
Запускаем программу AutoCAD и открываем в ней исходный чертеж, в котором уже построена вся необходимая геометрия.
2. Создаем блок
Прямоугольной рамкой, растянутой слева направо, выделяем все объекты чертежа кроме розовых вспомогательных прямых, которыми обозначены границы рисунка.
Вызываем диалоговое окно Block Definition (Определение блока) (вкладка Insert (Вставка) ленты > панель Block Definition (Определение блока) > группа Create Block (Создать блок) > инструмент Create Block (Создать блок)), в котором задаем:
- Name (Имя) – new_year_clock;
- В разделе Base point (Базовая точка): Specify On-screen (Указать на экране) – OFF; X – 0; Y – 0; Z – 0;
- В разделе Objects (Объекты): Specify On-screen (Указать на экране) – OFF; положение переключателя – Convert to block (Преобразовать в блок); надпись в нижней части раздела – 89 objects selected (Выбрано объектов: 89);
- В разделе Behavior (Поведение): Annotative (Аннотативный) – OFF; Match block orientation to layout (Ориентация блока по листу) – OFF; Scale uniformly (Одинаковый масштаб) – OFF; Allow exploding (Разрешить расчленение) – ON;
- В разделе Description (Описание) – New Year’s Clock;
- В разделе Settings (Настройки): Block unit (Единицы блока) – Millimeters (Миллиметры);
- Open in block editor (Открыть в редакторе блоков) – ON.
Нажимаем кнопку OK. Попадем в Block Editor (Редактор блоков), где можно добавлять параметры и операции, которые будут управлять внешним видом и динамическими функциями блока.
3. Добавляем параметр «Видимость»
Берем параметр Visibility (Видимость) (вкладка Block Editor (Редактор блоков) ленты > панель Action Parameters (Параметры операций) > группа Action Parameters (Параметры операций) > инструмент Visibility (Видимость)). В ответ на запрос Specify parameter location or (Укажите местоположение параметра или) вводим координаты 1920,0 и подтверждаем ввод нажатием клавиши ‹Enter›. В ответ на запрос Enter number of grips (Введите число ручек) вводим 1 и подтверждаем ввод нажатием клавиши ‹Enter›.
Выделяем созданный параметр и корректируем его метки в свитке Property Labels (Метки свойств) палитры Properties (Свойства):
- Visibility name (Имя видимости) – Time;
- Visibility description (Описание видимости) – Time on the New Year's Clock.
4. Настраиваем первое состояние видимости
Выделяем блок с Дедом Морозом, цифру 5 и полилинию по ее контуру, затем выполняем команду BVHIDE (БЛОКСКРЫТЬ) (вкладка Block Editor (Редактор блоков) ленты > панель Visibility (Видимость) > инструмент Make Invisible (Сделать невидимым)).
Выделяем все часовые стрелки кроме той, что указывает на один час, и 44 из 48 звездочек, после чего еще раз выполняем команду BVHIDE (БЛОКСКРЫТЬ).
Вызываем диалоговое окно Visibility States (Состояния видимости) (вкладка Block Editor (Редактор блоков) ленты > панель Visibility (Видимость) > инструмент Visibility States (Состояния видимости)), в котором переименовываем единственное состояние видимости в 13:00.
5. Настраиваем второе состояние видимости
В диалоговом окне Visibility States (Состояния видимости) жмем кнопку New (Создать). В открывшемся диалоговом окне New Visibility State (Новое состояние видимости) задаем:
- Visibility state name (Имя состояния видимости) – 14:00;
- Visibility options for new states (Параметры видимости для новых состояний) – Leave visibility of existing objects unchanged in new state (Оставить видимость объектов неизменной).
Нажимаем кнопку OK в диалоговом окне New Visibility State (Новое состояние видимости), затем – кнопку OK в диалоговом окне Visibility States (Состояния видимости).
Устанавливаем для системной переменной BVMODE значение 1 (вкладка Block Editor (Редактор блоков) ленты > панель Visibility (Видимость) > переключатель Visibility Mode (Режим видимости)). Получим, что на чертеже, в приглушенных тонах, будут отображаться скрытые для текущего состояния видимости объекты.
Выделяем блок с Дедом Морозом и выполняем команду HIDEOBJECTS (иконка Isolate Objects (Изолировать объекты) в строке состояния > Hide Objects (Скрыть объекты)). Получим, что блок с Дедом Морозом будет временно скрыт.
Выделяем часовую стрелку, которая указывает на один час, и выполняем команду BVHIDE (БЛОКСКРЫТЬ) (вкладка Block Editor (Редактор блоков) ленты > панель Visibility (Видимость) > инструмент Make Invisible (Сделать невидимым)).
Выделяем часовую стрелку, которая указывает на два часа, и четыре произвольные звездочки из числа невидимых, затем выполняем команду BVSHOW (БЛОКПОКАЗАТЬ) (вкладка Block Editor (Редактор блоков) ленты > панель Visibility (Видимость) > инструмент Make Visible (Сделать видимым)).
6. Настраиваем состояния видимости с третьего по одиннадцатое
Вызываем диалоговое окно Visibility States (Состояния видимости) (вкладка Block Editor (Редактор блоков) ленты > панель Visibility (Видимость) > инструмент Visibility States (Состояния видимости)), в котором жмем на кнопку New (Создать). В открывшемся диалоговом окне New Visibility State (Новое состояние видимости) задаем:
- Visibility state name (Имя состояния видимости) – 15:00;
- Visibility options for new states (Параметры видимости для новых состояний) – Leave visibility of existing objects unchanged in new state (Оставить видимость объектов неизменной).
Нажимаем кнопку OK в диалоговом окне New Visibility State (Новое состояние видимости), затем – кнопку OK в диалоговом окне Visibility States (Состояния видимости).
Выделяем видимую часовую стрелку и выполняем команду BVHIDE (БЛОКСКРЫТЬ) (вкладка Block Editor (Редактор блоков) ленты > панель Visibility (Видимость) > инструмент Make Invisible (Сделать невидимым)).
Выделяем часовую стрелку, которая указывает на три часа, и четыре произвольные звездочки из числа невидимых, затем выполняем команду BVSHOW (БЛОКПОКАЗАТЬ) (вкладка Block Editor (Редактор блоков) ленты > панель Visibility (Видимость) > инструмент Make Visible (Сделать видимым)).
Настройка состояний видимости с четвертого по одиннадцатое выполняется аналогичным образом. Соответственно, чтобы добавить в блок состояния видимости 16:00, 17:00, 18:00, 19:00, 20:00, 21:00, 22:00 и 23:00 необходимо восемь раз повторить шаг 6, каждый раз делая невидимой часовую стрелку из предыдущего состояния видимости и делая видимыми часовую стрелку, подходящую текущему состоянию, и четыре произвольные звездочки из числа невидимых.
7. Настраиваем двенадцатое состояние видимости
Вызываем диалоговое окно Visibility States (Состояния видимости) (вкладка Block Editor (Редактор блоков) ленты > панель Visibility (Видимость) > инструмент Visibility States (Состояния видимости)), в котором жмем на кнопку New (Создать). В открывшемся диалоговом окне New Visibility State (Новое состояние видимости):
- Visibility state name (Имя состояния видимости) – 00:00;
- Visibility options for new states (Параметры видимости для новых состояний) – Show all existing objects in new state (Показать все существующие объекты).
Нажимаем кнопку OK в диалоговом окне New Visibility State (Новое состояние видимости), затем – кнопку OK в диалоговом окне Visibility States (Состояния видимости).
Выделяем все стрелки часов и две полилинии в центре циферблата, выделяем цифру 4 и две полилинии по ее контурам, затем выполняем команду BVHIDE (БЛОКСКРЫТЬ) (вкладка Block Editor (Редактор блоков) ленты > панель Visibility (Видимость) > инструмент Make Invisible (Сделать невидимым)).
Выполняем команду UNISOLATEOBJECTS (иконка Unisolate Objects (Отменить изоляцию объектов) в строке состояния > End Object Isolation (Завершить изоляцию объекта)). Получим, что скрытый ранее блок с Дедом Морозом вновь появится на чертеже, причем будет видимым в текущем состоянии видимости.
8. Сохраняем динамический блок
Выполняем команду BSAVE (БЛОКСОХР) (вкладка Block Editor (Редактор блоков) ленты > панель Open/Save (Открыть/Сохранить) > инструмент Save Block (Сохранить блок)), затем выполняем команду BCLOSE (БЛОКРЕДЗАКР) (вкладка Block Editor (Редактор блоков) ленты > панель Close (Закрыть) > инструмент Close Block Editor (Закрыть редактор блоков)).
В результате получим на чертеже динамический блок с двенадцатью состояниями видимости, переключаясь между которыми будет переводиться время на часах, а при выборе состояния 00:00 будет меняться год и на циферблате часов будет появляться Дед Мороз.
Видеоверсия
Поддержать канал: Boosty, CloudTips, Donatty, ЮMoney.