Тема 9. Динамічні блоки

Лабораторна робота 21

 

9. Створення станів видимості

У динамічному блоці стани видимості використовуються для того, щоб зробити певні геометричні об’єкти видимими або невидимими. Один блок може містити декілька станів видимості.

Використовуючи стани видимості можна швидко створити блок, який матиме різні графічні представлення.

Наприклад, є три види умовного позначення умивальника (рис. 25, а).

pict_umyv1              pict_umyv2a

а)                                              б)

Рис. 25. Підготовка до створення динамічного блоку зі станами видимості

 

За допомогою станів видимості можна об'єднати їх в один динамічний блок. Для цього потрібно розмістити об’єкти в редакторі блоків таким чином, щоб базові точки (точки вставки) кожної з проекції співпадали (рис. 25, б).

Потім з палітри розробки блоків (закладка "Параметри") додати параметр видимості Visible1.

Поки не буде визначено жодного стану видимості, параметр міститиме знак оклику в жовтому квадраті (рис. 25, б).

Управління станами видимості здійснюється за допомогою діалогового вікна "Visibility States" (Стани видимості) (рис. 26), яке відкривається кнопкою "Менеджер станів видимості" bt_visib_manager на панелі інструментів редактора блоків.

wind_man_state_visib

Рис. 26. Діалогове вікно "Visibility States" (Стани видимості)

 

Для створення нового стану видимості клацнути на кнопці New (Створити), після чого відкриється діалогове вікно New Visibility State (Новий стан видимості) (рис. 27).

wind_man_state_visib1

Рис. 27. Діалогове вікно "New Visibility State" (Новий стан видимості)

 

У верхньому полі ввести ім'я нового стану (наприклад: Top, або Front, або Left), а в області Visibility options for new states (Параметри видимості для нових станів) вибрати, який з трьох варіантів стане початковим для нового стану:

·                    Hide all existing objects in new state (Приховати всі існуючі об'єкти).

·                    Show all existing objects in new state (Показати всі існуючі об'єкти).

·                    Leave visibility of existing objects unchanged in new state (Залишити видимість об'єктів незмінною).

Створивши новий стан видимості, закрити вікно Visibility States (Стани видимості) кнопкою ОК. Після цього, за допомогою кнопки bt_make_visib додати видимість потрібних об'єктів, а за допомогою кнопки bt_make_invisib — прибрати видимість зайвих елементів. Після закриття редактора, у блока будуть нові стани видимості, які завжди можна активізувати через меню станів. Для цього, після розміщення екземпляра блока в кресленні, виділити його, та клацнути на піктограмі r_piramida, яка з’явиться біля блоку (рис. 28). Відкриється список попередньо створених станів видимості, у якому вибрати необхідний.

visib_t

visib_f

visib_l

Рис. 28. Використання меню станів видимості в динамічному блоці

 

На рис. 29 представлено діалогове вікно зі станами видимості для блока з умовним позначенням умивальника (рис. 28).

wind_man_state_visib3

Рис. 29. Діалогове вікно "Стани видимості" для блока з умовним позначенням умивальника

 

10. Приклади створення динамічних блоків

Приклад 1

Створити динамічний блок, який становитиме стіл та стілець. Передбачити можливість переміщення та повороту стільця незалежно від стола, а також дзеркального відображення стола разом зі стільцем.

1. Відкрити вікно редактора блоків, клацнувши на піктограмі bt_bedit в панелі інструментів "Стандартна".

Відкриється діалогове вікно Edit Block Definition (Редагування опису блока) (рис. 30), в якому ввести ім’я блока "Стіл+Стілець" та клацнути ОК.

pr_0

Рис. 30. Діалогове вікно "Редагування опису блока

 

Якщо палітра розробки блоків на екрані відсутня, тоді відкрити її за допомогою піктограми bt_palitra на панелі інструментів редактора блоків. Побудувати об’єкти – стіл та стілець (рис. 31). Точка вставки блока нехай буде в лівому нижньому кутку стола.

pr_1

pr_3

Рис. 31. Об’єкти для динамічного блока

Рис. 32. Точковий параметр не пов’язаний з операцією

 

2. Додати необхідні параметри щоб потім пов’язати їх з операціями.

В даному випадку потрібно додати точковий параметр, параметр повороту та параметр віддзеркалення.

Щоб додати точковий параметр потрібно в розділі "Параметри" палітри розробки блоків клацнути на інструменті "Point Parameter" (Точковий параметр)  pr_2. З'явиться запит:

Specify parameter location or [Name/Label/Chain/ Description/Palette]:

(Вкажіть розміщення параметра або [Ім’я/Метка/Ланцюжок/ Опис/Палітра]:)

У відповідь вказати положення точкового параметра в центрі стільця. Поки параметр не пов’язаний з операцією, біля нього виводиться попередження – жовтий квадрат зі знаком оклику (рис. 32).

Наступний запит:

Specify label location:

(Вкажіть розміщення мітки:)

У відповідь вказати положення мітки точкового параметра "Position".

Кожен параметр має ручку (розміщення параметра), ім'я і текстову мітку (ярлик). Значенням мітки за замовчуванням для точкового параметра є Position (Положення).

У вікні "Властивості" для точкового параметра можна змінити такі опції:

·                    Position Label (Мітка) — текст позначення в редакторі блоків.

·                    Position Description (Опис) — текстовий коментар.

·                    Parameter Name (Ім'я параметра) — назва параметра в цьому динамічному блоці.

·                    Chain Actions (Ланцюжок) — чи можна включати ручки в набір об'єктів, що редагуються за допомогою іншої ручки блоку (задати No).

·                    Show Properties (Відображати властивості) — чи показувати властивості параметра в палітрі Properties (Властивості) (задати Yes ).

·                    Number of Grips (Кількість ручок) — задається скільки ручок буде відображатись в динамічному блоці.

На рис. 33 виділено точковий параметр і відкрита палітра "Властивості", в якій відображені його настройки.

На рис. 34 виділена ручка точкового параметра і відкрита палітра "Властивості", в якій відображені її настройки.

pr_5

pr_4a

Рис. 33. Виділений точковий параметр та його налаштування

pr_6

pr_6b

Рис. 34. Виділена ручка точкового параметра та її налаштування

 

Додати параметр повороту. Для цього клацнути на інструменті "Rotation Parameter" (Параметр повороту) pr_7. З'явиться запит:

Specify base point or [Name/Label/Chain/Description/Palette /Value set]:

(Вкажіть базову точку або [Ім’я/Метка/Ланцюжок/Опис /Палітра]:)

У відповідь вказати базову точку параметра повороту в центрі стільця (повинна співпадати з точковим параметром).

Наступний запит:

Specify radius of parameter:

(Вкажіть радіус параметра:)

графічно вказати радіус кола, яким буде рухатись маркер при обертанні стільця.

Наступний запит:

Specify default rotation angle or [Base angle] <0>:

(Вкажіть кут повороту або [База кута] <0>:)

У відповідь вказати напрямок на 0 градусів.

На рис. 35 представлено результат додавання параметра повороту. Поки параметр повороту не пов’язаний з операцією, біля нього виводиться значок попередження (в цьому випадку розміщення попередження від точкового параметра і параметра повороту співпадають).

pr_8 

Рис. 35. Результат додавання параметра повороту

 

Додати параметр віддзеркалення. Для цього клацнути на інструменті "Flip Parameter" (Параметр віддзеркалення) pr_9. З'явиться запит:

Specify base point of reflection line or [Name/Label/ Description/Palette]:

(Вкажіть базову точку осі відображення [Имя/Метка/ Опис/Палитра]:)

У відповідь вказати середню точку на нижній стороні стола.

Specify endpoint of reflection line:

(Вкажіть кінцеву точку осі відображення:)

У відповідь вказати довільну точку на вертикальній прямій проведеній від нижньої сторони стола.

Наступний запит:

Specify label location:

(Вкажіть розміщення мітки:)

У відповідь вказати положення мітки дзеркального відображення "Flip state" під нижньою стороною стола.

3. Додати необхідні операції і пов’язати їх з параметрами та відповідними об’єктами.

Додати операцію переміщення. Для цього в розділі "Операції" палітри розробки блоків клацнути на інструменті "Move Action" (Операція переміщення) pr_10. Першим виділити точковий параметр "Position", Далі виділити графічні об’єкти стільця, параметр повороту "Angle", завершити виділення об’єктів клацнувши правою кнопкою мишки та вказати в довільному місці положення мітки операції переміщення "Move" (рис. 36).

Додати операцію повороту. Для цього клацнути на інструменті "Move Action" (Операція переміщення)  pr_12. Першим виділити параметр повороту "Angle", Далі виділити стілець, точковий параметр "Position", завершити виділення об’єктів клацнувши правою кнопкою мишки та вказати в довільному місці положення мітки операції повороту "Rotate" (рис. 37).

Додати операцію віддзеркалення. Для цього клацнути на інструменті "Flip Action" (Операція віддзеркалення)  pr_14. Першим виділити параметр віддзеркалення "Flip state". Далі послідовно виділити параметр повороту "Angle", точковий параметр "Position", графічні об’єкти стільця та стола, завершити виділення об’єктів клацнувши правою кнопкою мишки та вказати в довільному місці положення мітки операції віддзеркалення "Flip1" (рис. 38).

pr_11

pr_13

pr_15

Рис. 36. Результат додавання операції переміщення

Рис. 37. Результат додавання операції повороту

Рис. 38. Результат додавання операції віддзеркалення

 

4. Зберегти опис блока, клацнувши на піктограмі bt_save.

5. Закрити редактор блоків кнопкою bt_close.

6. Перевірити роботу динамічного блока, вставивши його екземпляр в креслення. Ручка у формі квадрата в центрі стільчика використовується для його переміщення. Ручка круглої форми використовується для повороту стільчика навколо його центра. Ручка у формі стрілочки дзеркально відображає усі об’єкти (рис. 39).

pr_16

Рис. 39. Динамічний блок "Стіл+Стілець" з ручками настройки параметрів

 

Приклад 2

Додамо до динамічного блока "Стіл+стілець", створеного в прикладі 1, можливість вибору довжини стола з попередньо визначеного набору числових значень (наприклад: 1500, 1800, 2000, 2500 мм).

1. Відкрити редактор блоків та в діалоговому вікні Edit Block Definition (Редагування опису блока) вибрати блок з назвою "Стіл+стілець" (рис. 40).

 

pr2_1

Рис. 40. Вибір блоку з назвою "Стіл+стілець"

 

2. Додати лінійний параметр в якому першу точку вказати в лівому нижньому, а кінцеву – в правому нижньому кутку стола (рис. 41).

Зробити видимою лише одну (праву) ручку лінійного параметра. Для цього виділити лінійний параметр, відкрити палітру "Властивості" та вибрати число 1 у випадаючому списку поля "Number of Grips" (Число ручок) (рис. 23).

3. Додати операцію розтягування. Для цього в розділі "Операції" палітри розробки блоків клацнути на інструменті "Stretch Action" (Операція розтягування)  pr2_3. Далі виконати такі операції:

·                    виділити лінійний параметр "Distance";

·                    клацнути на ручці лінійного параметра (права кінцева точка);

·                    побудувати область розтягування, вказавши дві діагонально протилежні точки в правій частині стола (рис. 42) (об’єкти перетнуті рамкою – розтягуються, повністю охоплені рамкою – переміщаються);

·                    виділити об’єкти для операції розтягування (рис. 43) (два горизонтальних відрізки та один вертикальний);

·                    завершити виділення об’єктів правою кнопкою мишки;

·                    вказати в довільному місці положення мітки операції розтягування "Stretch" (рис. 46).

pr2_2

pr2_4

pr2_5

Рис. 41. Додано лінійний параметр

Рис. 42. Побудова області розтягування

Рис. 43. Виділення об’єктів для операції розтягування

 

4. Додати параметр пошуку. Для цього клацнути на інструменті "Lookup Parameter" (Параметр пошуку) pr2_6 та вказати його положення нижче точки вставки блока (рис. 46).

5. Додати операцію пошуку. Для цього в розділі "Операції" палітри розробки блоків клацнути на інструменті" Lookup Action" (Операція пошуку) pr2_7. Далі виконати такі операції:

·                    виділити параметр пошуку "Lookup";

·                    розмістити мітку операції пошуку "Lookup1" у вільному місці вікна редактора блоків;

·                    відразу відкриється діалогове вікно Property Lookup Table (Таблиця пошуку властивостей). В ньому клацнути на кнопці Add Properties… (Додати властивості…) та вибрати в новому вікні "Add Parameter Properties" (Додати властивості параметра) (рис. 44) лінійний параметр;

·                    в діалоговому вікні Property Lookup Table (Таблиця пошуку властивостей) у колонці Input Properties (Введені властивості) ввести послідовність числових значень ширини, яку повинен приймати стіл, а в правій конці Lookup Properties (Властивості пошуку) – ввести відповідні назви, які будуть відображатись в меню пошуку (рис. 45);

·                    в діалоговому вікні Property Lookup Table (Таблиця пошуку властивостей) клацнути в полі "Read only" (Тільки читати) та вибрати значення "Allow reverse lookup" (Дозволити зворотній перегляд);

·                    закрити діалогове вікно Property Lookup Table (Таблиця пошуку властивостей) клавішею ОК.

6. Відредагувати операцію віддзеркалення. До неї потрібно додати нові параметри: лінійний "Distance" та пошуку "Lookup". Для цього двічі клацнути на мітці "Flip 1", послідовно виділити мітку "Distance", мітку "Lookup" та завершити виділення правою кнопкою мишки.

pr2_9a

pr2_10a

Рис. 44. Діалогове вікно "Додати властивості параметра"

Рис. 45. Остаточний вигляд діалогового вікна "Таблиця пошуку властивостей"

 

7. Зберегти опис блока, клацнувши на піктограмі bt_save.

8. Закрити редактор блоків.

9. Перевірити роботу динамічного блока, вставивши його екземпляр в креслення. Ручка у формі трикутника в правому нижньому кутку стола використовується для зміни його довжини на довільну величину. Ручка у формі трикутника направленого донизу відкриває меню з якого можна вибрати попередньо визначену довжину стола (L=1500, L=1800, L=2000 та L=2500), (рис. 47).

pr2_12

pr2_11a

Рис. 46. Остаточний вигляд динамічного блока в редакторі

Рис. 47. Динамічний блок з ручками настройки параметрів