Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
mause_canvas1.doc
Скачиваний:
1
Добавлен:
15.09.2019
Размер:
32.21 Mб
Скачать

« Автоматизація проектування графічного плану виробничого приміщення »

Частина 4.

Кутове переміщення обладнання відносно обраної базової точки у межах застосування властивості TCanvas .

Теоретичне підгрунтя.

Будь-яке обладнання (верстати, меблі, роботи – маніпулятори і.т.п) на вигляді згори, або інакше кажучи «У плані» можна представити, як багатокутник. На рисунку 28 (праворуч) зображення певного верстату показане подібно, до того, як у його супровідній документації, а на зображенні ліворуч спряжена частина його дуги показана у вигляді ламаної лінії з потрібною кількістю точок. Отже у цілому, план верстату подано у вигляді скінченої множини точок, які розташовані на площині у заданій залежності одна відносно іншої. За будь-яких переміщень відносне розташування точок – а це відстані між ними і кути взаємного спрямування відрізків, повинні залишатись постійними величинами.

Рисунок 28 – Вигляд верстату «в плані» (праворуч) і його багатокутна версія вигляду згори (ліворуч).

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

Задля простоти пояснення, в ролі багатокутника на рисунку 29 показаний його найменший за кількістю точок представник – трикутник АВС. На рисунку вказані координати цих його точок у системі декартових координат.

Рисунок 29 – Трикутник АВС у декартовій системі координат

Для ілюстрації повороту за базову можна прийняти будь-яку із точок цього трикутника, наприклад точку А. На рисунку 30 показано результат повороту трикутника АВС навколо точки А. Причому, з метою відображення кута повороту, рисунок містить відображення трикутника до початку обертання - точки А,В,С і по його завершенні – точки А, В11. В результаті повороту, усі точки фігури повернуться на однаковий кут – a. Його величину можна визначити, як між променями АВ і АВ1 (рисунок 31), так і між променями АС і АС1.

Рисунок 30 – Поворот трикутника АВС навколо точки А.

Для визначення величини кута повороту a в залежності від координат точок фігури АВС до повертання і після нього вказані додаткові кути b i g і точки D і F (рисунок 31).

Рисунок 31– Трикутники АВС і АВ1С1 і додаткові точки D,F у декартовій системі координат

З побудови видно, що величину кута α можна визначити за рівнянням:

(1)

Маючи прямокутні трикутники DAB1 i FAB можна визначити кути –β і γ, застосовуючи поняття тангенса:

(2)

(3)

Величина |DB1| може бути визначена за різницею координат точок D i B1 на осі Х, тобто за рівнянням: | DB1|=Xb1-Xa..

Величина | DА | може бути визначена за різницею координат точок D i A на осі Y, тобто за рівнянням: | DА|=Ya.- Yb1.

Величина | BF | може бути визначена за різницею координат точок B i F на осі Х, тобто за рівнянням: | BF|= Xb Xa.

Величина | FA | може бути визначена за різницею координат точок F i A на осі Y, тобто за рівнянням: | FA|=Ya Yb.

Маючи ці рівняння, можна визначити величини кутів в залежності від координат точок A,B,B1:

(радіан) (4)

= (радіан) (5)

З іншого боку, можна функціонально узалежнити координати переміщеної точки B1 від кута і координат непереміщеної точки В:

Xb1 = Xa (6)

Yb1 =Ya - Xa (7)

В той же час, оскільки |AB1|= |AB|, а відрізки (AB1) і (AB) є гіпотенузами трикутників DAB i FAB1, то використовуючи теорему Піфагора можна ствердити таку рівність:

+ = + (8)

Ліва частина рівняння (8) для кожної конкретної фігури є сталою величиною, оскільки координати точок А і В не зазнають змін. У правій частині змінними величинами є тільки Yb1 і Xb1 . Причому ці величини є взаємозалежними: будь-яка зміна однієї з них призводитиме до відповідної зміни іншої. Тому для графічних побудов повороту можуть бути корисними розвязки рівняння (8) стосовно величин Yb1 і Xb1 .

Якщо Yb1<Ya, тоді:

Yb1 = (9)

Якщо Yb1 >Ya, тоді:

Yb1 = (10)

Якщо Xb1 >Xa, тоді:

Xb1 = (11)

Якщо Xb1 <Xa, тоді:

Xb1 = (12)

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]