МІНІСТЕРСТВО ОСВІТИ ТА НАУКИ УКРАЇНИ
Національний університет «Львівська політехніка»
Інститут комп’ютерних наук та інформаційних технологій
Кафедра САПР
Звіт з виконання
Практична робота №4
на тему:
КОНСТРУЮВАННЯ КРИВИХ. КРИВА БЕЗ’Є
з курсу:
«Геометричне моделювання у конструюванні інженерних об’єктів і систем»
Львів 2010
Мета роботи
Мета роботи – ознайомитись з задачами конструювання кривих. Вивчити метод побудови кривої Без’є заданої вершинами багатокутника.
Теоретичні відомості
Основні поняття
При конструюванні математичних моделей кривих ліній найчастіше зустрічаються такі задачі:
1) апроксимації;
2) інтерполяції;
3) спрямування або згладжування;
Задача апроксимації (наближеного представлення) виникає при заміні описуваної рівнянням функції складної природи іншою кривою (близькою до заданої) рівняннями, у більш простій формі з метою більш швидкого обчислення функції та її похідних.
Задача інтерполяції (наближеного відновлення) виникає коли задана скінчена множина точок, через які необхідно провести криву.
Задача згладжування (спрямлювання) виникає коли задані координати кривої, що зняті з похибками.
Поняття точності апроксимації стає непридатним для інтерактивного моделювання об’єкту, де задачею є лише зовнішній вигляд об’єкту.
У багатьох підсистемах машинної графіки і геометричних розрахунках перевага віддається кусочно-поліноміальним методам і представленням. Фактично, інтерполяція – це частковий випадок задачі апроксимації. Класичні методи інтерполяції та апроксимації кривих мають обмежене застосування в машинній графіці. Крива може бути представлена сокупністю точок, при умові, що вони близько знаходяться одна біля одної. Але математичний опис має ряд переваг, порівняно з її представленням з допомогою точок.
Переваги ці полягають в наступному:
1. Математичний опис є точним, оскільки він дозволяє легко обчислити такі характеристики кривої як нахил та радіус кривизни.
2. Математичний опис можна в компактному вигляді зберігати в пам’яті машини.
3. Зображення може бути легко відтворене, якщо воно представлене математично в ЕОМ у вигляді алгоритму.
4. При аналітичному визначенні кривої відпадає необхідність у інтерполяційній схемі для знаходження проміжних точок.
5. При математичному представленні кривої легше здійснювати зміну форми кривих.
У загальному випадку в задачах машинного проектування форми не можуть бути записані в вигляді рівнянь y=ƒ(x) з використанням звичайних однозначних функцій. Перша причина полягає в тому, що форма більшості об’єктів абсолютно не залежать від системи координат.
Тому на практиці потрібно, щоб вибір системи координат не впливав на форму. Отже в машинному проектуванні основну роль відіграє представлення форм у параметричному виді:
крива на площині задається не функцією y=ƒ(x), а парою функцій x=x(t), y=y(t) від параметру t.
Можна сказати, що точка на такій кривій представляється вектором
Pe=[X(t),Y(t)]
Аналогічно точка на просторовій кривій задається вектором
Pe=[X(t),Y(t),Z(t)],
а точка на поверхні представиться вектором
Pe=[x(U,G),y(U,G),z(U,G)].
Таке параметричне задання форм не тільки дозволить уникнути згаданих математичних проблем, але крім того, найзручнішим чином описати спосіб відображення кривих на графопобудовувачах чи екрані: дві функції часу X(t) і Y(t) реально використовують як функцій управління для графопобудовувача чи відхиляючої системи електронно променевої трубки, що викличе переміщення пера чи електронного променя.
КРИВА БЕЗ’Є
Без’є розробив метод зображення кривої, який створює у користувача природнє сприйняття кривої. Крива Без’є визначається вершинами багатокутника. Кривій належать перша та остання вершини багатокутника, в той час як інші вершини характеризують похідні, порядок та вигляд кривої.
Оскільки вид кривої залежить від форми багатокутника, то зміна положення вершин суттєво впливає на форму кривої.
Математично крива Без’є описується поліноміальною функцією, що здійснює інтерполяцію між точками P0[x0,y0] та Pn[xn,yn]. Крива Без’є будується на базисі Берштейна. Базисна функція задається співвідношенням:
де n – степінь поліному
і – порядковий номер вершини поліному.
n-порядок поліному задається n+1 вершиною.
Крива Без’є апроксимується поліномом:
де Pi – функція-компонент векторів і-х вершин.
Користувач моде досить швидно навчитися передбачати форму кривої від виду багатокутника.
Перевагою використання кривих Без’є є простота збільшення порядку кривої сегмента для більш кращого відображення її форми. У процесі інтерактивного режиму діалогу ламана Без’є є зручним та ефективним засобом.
Особливості побудови кривої Без’є:
1) крайні точки кривої співпадають з крайніми вершинами ламаної, а решта точок – поза ламаною.
2) Нахили дотичник векторів у крайніх точках кривої співпадають з нахилом першої та останньої ланки ламаної
3) Крива знаходиться в середині опуклої оболонки. Многочлен Без’є можна представити як деяку намагнічену еластичну стрічку,
закріплену на кінцях.
О т р и м а н и й г р а ф і к к р и в о ї