
Новогодние часы – Динамический блок с состояниями видимости в AutoCAD
Новогодние часы – Динамический блок с состояниями видимости в AutoCAD
В уроке описан пример создания динамического блока с новогодними часами, время на которых определяется выбранным состоянием видимости, а в полночь на циферблате появляется Дед Мороз. При написании урока использовалась AutoCAD 2024 с рабочим пространством Drafting & Annotation (Рисование и аннотации).
Файлы
Исходный чертеж (файл DWG, 118.43 KB + файлы TTF, 1.36 MB): Скачать
Готовый динамический блок (файл DWG, 139.31 KB + файлы TTF, 1.36 MB): Скачать
Текст
-
Открываем чертеж
Запускаем программу AutoCAD и открываем в ней исходный чертеж, в котором уже построена вся необходимая геометрия.
1. Исходный чертеж в AutoCAD -
Создаем блок
Прямоугольной рамкой, растянутой слева направо, выделяем все объекты чертежа кроме розовых вспомогательных прямых, которыми обозначены границы рисунка.
Вызываем диалоговое окно 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 (Редактор блоков), где можно добавлять параметры и операции, которые будут управлять внешним видом и динамическими функциями блока.
2.1 – выделенные вхождения блоков, мтексты, штриховки и полилинии; 2.2 – инструмент Create Block (Создать блок); 2.3 – Диалоговое окно Block Definition (Определение блока) -
Добавляем параметр «Видимость»
Берем параметр 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.
3.1 – инструмент Visibility (Видимость); 3.2 – запрос Specify parameter location or (Укажите местоположение параметра или); 3.3 – запрос Enter number of grips (Введите число ручек); 3.4 – выделенный параметр видимости, палитра Properties (Свойства) -
Настраиваем первое состояние видимости
Выделяем блок с Дедом Морозом, цифру 5 и полилинию по ее контуру, затем выполняем команду BVHIDE (БЛОКСКРЫТЬ) (вкладка Block Editor (Редактор блоков) ленты > панель Visibility (Видимость) > инструмент
Make Invisible (Сделать невидимым)).
Выделяем все часовые стрелки кроме той, что указывает на один час, и 44 из 48 звездочек, после чего еще раз выполняем команду BVHIDE (БЛОКСКРЫТЬ).
Вызываем диалоговое окно Visibility States (Состояния видимости) (вкладка Block Editor (Редактор блоков) ленты > панель Visibility (Видимость) > инструмент
Visibility States (Состояния видимости)), в котором переименовываем единственное состояние видимости в 13:00.
4.1 – выделенные вхождение блока, мтекст и полилиния; 4.2 – Инструмент Make Invisible (Сделать невидимым); 4.3 – Выделенные вхождения блоков и штриховки; 4.4 – Инструмент Make Invisible (Сделать невидимым); 4.5 – Инструмент Visibility States (Состояния видимости); 4.6 – Диалоговое окно Visibility States (Состояния видимости) -
Настраиваем второе состояние видимости
В диалоговом окне 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 (Сделать видимым)).
5.1 – диалоговые окна Visibility States (Состояния видимости) и New Visibility State (Новое состояние видимости); 5.2 – переключатель Visibility Mode (Режим видимости); 5.3 – выделенное вхождение блока, команда Hide Objects (Скрыть объекты); 5.4 – выделенная штриховка; 5.5 – инструмент Make Invisible (Сделать невидимым); 5.6 – выделенные вхождения блоков и штриховка; 5.7 – инструмент Make Visible (Сделать видимым) -
Настраиваем состояния видимости с третьего по одиннадцатое
Вызываем диалоговое окно 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 (Сделать видимым)).
6.1 – инструмент Visibility States (Состояния видимости); 6.2 – диалоговые окна Visibility States (Состояния видимости) и New Visibility State (Новое состояние видимости); 6.3 – выделенная штриховка; 6.4 – Инструмент Make Invisible (Сделать невидимым); 6.5 – выделенные вхождения блоков и штриховка; 6.6 – Инструмент инструмент Make Visible (Сделать видимым) Настройка состояний видимости с четвертого по одиннадцатое выполняется аналогичным образом. Соответственно, чтобы добавить в блок состояния видимости 16:00, 17:00, 18:00, 19:00, 20:00, 21:00, 22:00 и 23:00 необходимо восемь раз повторить шаг 6, каждый раз делая невидимой часовую стрелку из предыдущего состояния видимости и делая видимыми часовую стрелку, подходящую текущему состоянию, и четыре произвольные звездочки из числа невидимых.
-
Настраиваем двенадцатое состояние видимости
Вызываем диалоговое окно 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 (Завершить изоляцию объекта)). Получим, что скрытый ранее блок с Дедом Морозом вновь появится на чертеже, причем будет видимым в текущем состоянии видимости.
7.1 – инструмент Visibility States (Состояния видимости); 7.2 – диалоговые окна Visibility States (Состояния видимости) и New Visibility State (Новое состояние видимости); 7.3 – выделенные мтекст, штриховки и полилинии; 7.4 – инструмент Make Invisible (Сделать невидимым); 7.5 – команда End Object Isolation (Завершить изоляцию объекта) -
Сохраняем динамический блок
Выполняем команду BSAVE (БЛОКСОХР) (вкладка Block Editor (Редактор блоков) ленты > панель Open/Save (Открыть/Сохранить) > инструмент
Save Block (Сохранить блок)), затем выполняем команду BCLOSE (БЛОКРЕДЗАКР) (вкладка Block Editor (Редактор блоков) ленты > панель Close (Закрыть) > инструмент
Close Block Editor (Закрыть редактор блоков)).
8.1 – инструмент Save Block (Сохранить блок); 8.2 – инструмент Close Block Editor (Закрыть редактор блоков)
В результате получим на чертеже динамический блок с двенадцатью состояниями видимости, переключаясь между которыми будет переводиться время на часах, а при выборе состояния 00:00 будет меняться год и на циферблате часов будет появляться Дед Мороз.
