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

Лабораторна робота 19

 

Мета лабораторної роботи вивчити інструменти створення, редагування та обробки динамічних блоків. Навчитись використовувати параметри, операції та набори параметрів які використовуються в динамічних блоках. Розібратись з перевагами використання блоків з динамічними властивостями порівняно зі звичайними блоками.

 

1. Вступ

Динамічний блок, на відміну від звичайного, є гнучким інтелектуальним елементом креслення. Його  можна легко змінювати за допомогою спеціальних ручок, що настроюються, або використовуючи палітру "Властивості". Це дозволяє оперативно змінити вигляд блоку на місці, замість того, щоб шукати в бібліотеці інший або уточнювати опис існуючого.

Наприклад, вставивши в креслення блок умовного позначення дверного прорізу (рис. 1), може виникнути потреба змінити розмір дверей. Якщо блок є динамічним і в описі вказано, що він має набір динамічних розмірів, то щоб змінити розмір дверей, досить перетягнути ручку настройки або вибрати інший розмір в палітрі "Властивості". Можливо, також потрібно буде змінити кут відкривання дверей. Дверний блок може мати ручку вирівнювання, яка дозволить швидко вирівняти його з іншими об’єктами креслення.

Рис. 1. Динамічний блок умовного позначення дверей

 

Динамічні блоки створюються за допомогою редактора блоків. Редактор блоків – це спеціальна область, в якій додаються не графічні елементи – параметри й операції, які разом з графічними об’єктами утворюють динамічний блок. Блоки можна створювати із самого початку або додавати функції динамічної зміни в опис існуючого блоку.

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

·                    Операції визначають, як рухатимуться або змінюватимуться геометричні об’єкти динамічного блоку під час маніпулювання ним в кресленні. При додаванні в блок операцій їх необхідно пов'язати з параметрами і, як правило, з геометричними об’єктами.

При додаванні параметра до опису блоку, в блок автоматично додаються ручки (маркери блакитного кольору) і властивості настройки. Вони використовуються для маніпулювання екземпляром блоку в кресленні.

 

2. Алгоритм створення динамічних блоків

Щоб створити динамічний блок, потрібно виконати наступну послідовність дій.

1. Ретельно спланувати вміст динамічного блоку

Перш ніж створювати динамічний блок, слід уявити, як він повинен виглядати і, як він використовуватиметься в кресленні. Визначити, які об'єкти всередині блоку змінюватимуться або переміщатимуться при маніпулюванні екземпляром динамічного блоку. Більше того, слід визначити, як ці об'єкти повинні змінюватись. Наприклад, можна створити динамічний блок із змінними розмірами. Крім того, при зміні розміру екземпляра блоку можуть відображатися додаткові геометричні об’єкти. Ці фактори визначають тип параметрів і операцій, що додаються в опис блоку, а також спільну роботу параметрів, операцій і геометричних об’єктів.

2. Побудувати геометричні об’єкти

Геометричні об’єкти для динамічного блоку можна побудувати в графічній зоні або в редакторі блоків. Можна також скористатися існуючими об’єктами креслення або описом існуючого блоку.

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

3. Визначити, як елементи блоку взаємодіятимуть один з одним

Перш ніж додавати параметри і операції до опису блоку, необхідно з'ясувати їх взаємозв'язки один з одним, а також з геометричними об’єктами всередині блоку. При додаванні операції в опис блоку необхідно пов'язати операцію з параметром і набором об'єктів форми. При цьому створюється залежність. При додаванні до динамічного блоку декількох параметрів для правильної роботи екземпляра блоку в кресленні необхідно настроїти правильні залежності.

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

4. Додати необхідні параметри

Додати відповідні параметри в опис динамічного блоку, використовуючи підказки в командній стрічці.

За допомогою вкладки "Набори параметрів" палітр створення блоків можна додавати одночасно параметр і пов'язану з ним операцію.

5. Додати необхідні операції

Додати відповідні операції в опис динамічного блоку, використовуючи підказки в командній стрічці. Важливо не забувати вказувати зв'язки операцій з відповідними параметрами і геометричними об’єктами.

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

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

7. Зберегти блок та спробувати вставити його в креслення

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

 

3. Використання редактора блоків

За допомогою редактора блоків можна додавати в блоки функції динамічної зміни. Редактор містить усі необхідні інструменти, за допомогою яких майбутній блок наповнюється різноманітними інтелектуальними можливостями.

Редактор блоків (рис. 2) – це спеціальна область, в якій створюється опис блоку і додаються функції динамічної зміни певних його параметрів. Відкрити вікно редактора можна за допомогою команди BEDIT або піктограмою bt_bedit в панелі інструментів "Стандартна".

Редактор блоків містить спеціальні палітри розробки блоків (Block authoring palettfs) – "Параметри", "Операції" та "Набори параметрів" (рис. 3). Вони відображаються тільки у вікні редактора та забезпечують швидкий доступ до інструментів формування динамічних властивостей.

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

У редакторі блоків можна використовувати більшість команд AutoCAD. При введенні недопустимої команди, програма виводить в командній стрічці відповідне повідомлення.

За допомогою редактора можна змінювати описи вже існуючих блоків, додаючи до них функції динамічної зміни, або створювати нові блоки – як динамічні, так і звичайні.

У редакторі блоків над графічною областю розташовується спеціальна панель інструментів. На ній відображається ім'я редагованого в даний момент опису блоку, а також розміщені інструменти для виконання таких операцій:

·                    bt_save – зберегти опис блоку;

·                    bt_saveas – зберегти опис блоку з новою назвою;

·                    bt_param – додати параметр;

·                    bt_action – додати операцію;

·                    bt_atribut – задати атрибут;

·                    bt_close – закрити редактор блоків;

·                    bt_vizsib-mode – вкл/викл відображення об’єктів невидимих у певних станах;

·                    bt_make_visib – зробити об’єкти видимими для даного стану;

·                    bt_make_invisib – зробити об’єкти невидимими для даного стану;

·                    bt_visib_manager – управління станами видимості.

Рис. 2.  Вікно редактора блоків

 

pl_param         pl_action         pl_param-set

Рис. 3.  Палітри розробки блоків – параметри, операції, набори параметрів

 

Щоб переглянути властивості будь-якого параметра, операції, ручки або геометричного об'єкта, необхідно в редакторі блоків виділити відповідний елемент. Його властивості відображаються в палітрі Properties (Властивості) (рис. 4).

pall_prop1  pall_prop2  pall_prop3

Рис. 4. Властивості лінійного параметра, операції переміщення та ручки параметра видимості

 

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

У графічній області редактора відображається піктограма системи координат. Початкова точка піктограми позначає базову точку блока. Щоб змінити базову точку потрібно перемістити геометричні об’єкти відносно початкової точки піктограми або додати параметр базової точки.

Параметри, операції і їх взаємозв'язки (залежності) відображаються в редакторі блоків по-різному. Можна змінювати настройки деяких з цих елементів.

У редакторі блоків більшість параметрів виглядають як розміри (рис. 5). Якщо створити набір значень (діапазон або список значень) для параметра, в місцях розташування цих значень відображаються засічки.

Для доданих в редакторі блоків операцій відображається ім'я і жовтий значок (спалах блискавки) (рис. 6).

lin_param1

lin_operac1

Рис. 5. Лінійний параметр, який ще не пов’язаний з операцією

Рис. 6. Операція масштабування пов’язана з лінійним параметром та геометричними об’єктами

 

При виборі в редакторі блоків параметра, ручки або операції будуть виділені всі зв'язані об'єкти. Цей процес називається виділенням залежностей. Виділення залежностей можна включати або відключати. На рис. 7, 8, 9 показано приклади, як при виділенні залежностей (виборі в редакторі блоків параметра, ручки настройки, операції) створюється ефект ореолу для відповідних зв'язаних об’єктів.

select_1

select_ruchka

select_2

Рис. 7. Виділення лінійного параметра, який пов’язаний з операцією масштабування

Рис. 8. Виділення ручки лінійного параметра, який пов’язаний з операцією масштабування

Рис. 9. Операція масштабування пов’язана з лінійним параметром та об’єктами блока

 

У наступній таблиці показано, яка залежність виділяється при виборі об’єкта в редакторі блоків.

Виділений об’єкт в редакторі блоків

Об’єкти з виділеними взаємозв’язками

Параметр

Пов’язані ручки та операції

Ручка

Пов’язаний параметр чи операції

Операція

Пов’язані параметри, ручки та набори об’єктів

 

4. Додавання до блоків динамічних елементів

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

·                    Параметри. Визначають властивості, які в динамічному блоці настроюються, способом вказування нових положень, відстаней і кутів для геометричних об’єктів блока.

·                    Операції. Визначають, як будуть рухатись або змінюватись геометричні об’єкти екземпляра динамічного блоку при маніпулюванні ним в кресленні. Додаючи до опису динамічного блоку операції, їх необхідно пов'язати з параметрами та набором геометричних об'єктів, які беруть участь у цій операції.

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

При додаванні параметра до опису динамічного блока в ключові точки параметра додаються ручки (рис. 10). Ключові точки – це частини параметра, які використовуються для маніпулювання екземпляром блоку. Наприклад, лінійний параметр має ключові точки в своїй базовій (першій, відміченій символом Х) і кінцевій точках. Величиною параметра можна маніпулювати з будь-якої ключової точки.

Рис. 10. Приклади ручок розміщених в ключових точках  лінійного параметра, полярного параметра та XY-параметра

 

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

У наступній таблиці представлено взаємозв'язки між параметрами, ручками й операціями.

Тип параметра

Тип ручки

Операції, які можна пов’язати з параметром

Точка

r_kvadrat

Стандартний

Перемістити, Розтягнути

Лінійний

r_strilka

Лінійний

Перемістити, Масштабувати,  Розтягнути, Масив

Полярна

r_kvadrat

Стандартний

Перемістити, Масштабувати,  Розтягнути, Полярний розтяг, Масив

ХY

r_kvadrat

Стандартний

Перемістити, Масштабувати, Розтягнути, Масив

Поворот

r_kolo

Поворот

Поворот

Відобразити

r_strilka2

Відобразити

Відобразити

Вирівнювання

r_Klin

Вирівнювання

Нема (операція міститься в середині параметра)

Видимість

r_piramida

Пошук

Нема (операція визначається станами видимості)

Пошук

r_piramida

Пошук

Пошук

Базова точка

r_kvadrat

Стандартний

Нема

 

5. Використання параметрів

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

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

Опис динамічного блоку повинен містити хоча б один параметр. При додаванні параметра в опис динамічного блоку автоматично додаються ручки, пов'язані з ключовими точками параметра. Потім до опису блоку потрібно додати операцію і пов'язати її з параметром та набором об’єктів, які будуть задіяні в цій операції.

Маніпулювання екземпляром блока може здійснюватись за допомогою ручок або параметрів палітри "Властивості". Це приводить до зміни значення відповідного динамічного параметра, який формує цю властивість в блоці. При зміні значення параметра виконується пов'язана з ним операція, яка і змінює об’єкти (або властивості) екземпляра динамічного блоку.

Параметри також задають значення обмежень, які впливають на поведінку екземпляра динамічного блоку на кресленні. Деякі параметри мають фіксований набір значень, мінімальні і максимальні значення або значення приросту. Наприклад, лінійний параметр, що використовується в блоці умовного позначення вікна, може мати такий фіксований набір значень: 1210, 1510, 1810 і 2110. При вставці в креслення екземпляра блока можна змінювати вікно, використовуючи тільки одне з цих значень. Додавання набору значень для параметра дозволяє обмежити можливості маніпулювання екземпляром блоку в кресленні.

Параметри точки, повороту, XY, а також лінійні і полярні параметри мають властивість під назвою "Ланцюжок операцій".

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

Перерахуємо типи параметрів, які можна додавати в описи динамічних блоків, а також типи операцій, які можна пов'язувати з кожним параметром.

·                    Point Parameter (Параметр точка) – задається точка, для якої може бути сформовано 1 або 0 ручок. Параметр використовується в операціях переміщення і розтягування.

·                     Linear Parameter (Лінійний параметр) – задається відстань між двома точками, для яких може бути сформовано 2, 1 або 0 ручок. Параметр використовується в операціях переміщення, масштабування, розтягування і копіювання масивом.

·                     Polar Parameter (Полярний параметр) – задається відстань між двома точками і кут нахилу утвореного ними відрізка. Для них може бути сформовано 2, 1 або 0 ручок. Параметр використовується в операціях переміщення, масштабування, розтягування, полярного розтягування і копіювання масивом.

·                    Parameter (Параметр XY) – задаються горизонтальна і вертикальна відстані між чотирма точками, для яких може бути сформовано від 4 до 0 ручок. Параметр використовується в операціях переміщення, масштабування, розтягування і копіювання масивом.

·                    Rotation Parameter (Параметр повороту) – задається точка, відносно якої контролюється кут повороту. Для точки може бути сформовано 1 або 0 ручок. Параметр використовується тільки в операції повороту.

·                     Alignment Parameter (Параметр вирівнювання) – задається точка, відносно якої контролюється кут для вирівнювання всього блоку по нормалі або по дотичній до іншого об'єкта креслення. У заданій точці формується ручка. Зв'язування з операцією не потрібне, оскільки блок повертається автоматично.

·                    Flip Parameter (Параметр віддзеркалення) — задаються дві точки, що визначають вісь відображення. Може бути сформовано 1 або 0 ручок. Параметр використовується тільки в операції дзеркального відображення.

·                    Visibility Parameter (Параметр видимості) — задається умовна точка, в якій може розміщатися 1 ручка (можливий варіант без ручок). Управляє видимістю об'єктів блоку і спеціального зв'язування з операцією не потребує.

·                    Lookup Parameter (Параметр пошуку) — задає перелік властивостей, за якими може виконуватися пошук блоку (наприклад, типорозмірів). В умовній точці може бути сформована ручка. Параметр використовується тільки в операції пошуку (вибору).

·                    Base Point Parameter (Параметр базової точки) — задає базову точку, відносно якої розміщується блок при вставці. Ні з якою операцією цю точку спеціально зв'язувати не треба.

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