- •Http://antibotan.Com/ - Всеукраїнський студентський архів розділ 1. Координатні перетворення та проекції
- •1.1. Афінна геометрія
- •1.1.1. Афінні перетворення точок у просторі
- •1.1.2. Перетворення ліній та площин у просторі
- •1.2. Перспективно-проекційна геометрія
- •1.2.1. Однорідні координати
- •1.2.2. Проектування тривимірних об’єктів
- •1.2.3. Паралельні проекції
- •1.2.4. Центральні проекції
- •1.2.5. Неозначені точки
- •1.2.6. Одноточкова перспективна проекція
- •1.2.7. Двоточкова перспективна проекція
- •1.2.8. Триточкова перспективна проекція
- •Розділ 2. Просторові криві
- •2.1. Геометрія просторових кривих
- •2.1.1. Параметричне і непараметричне зображення кривих
- •2.1.2. Дотична, головна нормаль і бінормаль до кривої
- •2.1.3. Кривина, закручування кривої та формули Френе
- •2.2. Побудова плоских кривих
- •2.2.1. Конічні переріз
- •2.2.2. Трансцендентні криві
- •2.3. Кубічні сплайни
- •2.3.1. Сплайнова функція однієї змінної
- •2.3.2. Сплайнова функція в тривимірному випадку
- •Дослідження гладкості кривої
- •2.3.4. Граничні умови
- •2.4. Кубічні сплайни Без’є
- •2.5. Базис Бернштейна-Без’є
- •2.5.1. Геометричні властивості поліномів Бернштейна
- •2.5.2. Часткові випадки
- •2.6. Апроксимація на основі b-сплайнів
- •2.6.1. Головні властивості b-сплайнів
- •2.6.2. Базисні функції
- •2.6.3. Вузловий вектор
- •2.6.4. Приклади застосування b-сплайнів
- •2.7. Раціональні криві
- •2.7.1. Головні принципи раціональних кривих
- •2.7.2. Раціональні квадратичні сегменти конічного перерізу
- •2.7.3. Раціональні криві Без’є
- •Розділ 3. Опис і побудова поверхонь
- •3.1. Геометрія поверхонь
- •3.1.1.Поняття поверхні, дотична площина до поверхні
- •3.1.2. Перша квадратична форма
- •3.1.3. Друга квадратична форма поверхні
- •3.1.4. Нормальна кривина поверхні
- •3.1.5. Перетворення параметрів поверхні
- •3.2. Утворення і зображення поверхонь
- •3.2.1. Класифікація поверхонь
- •3.2.2. Лінійчаті поверхні
- •3.3. Поверхні Без’є
- •3.3.1. Параметричне рівняння поверхні Без’є
- •3.3.2. Властивості ділянок поверхні Без’є
- •3.4.1. Параметричні рівняння ділянок в-сплайн поверхні
- •3.4.2. Властивості ділянок бікубічних в-сплайнповерхонь
- •Розділ 4. Теоретичні основи та головні алгоритми растрової графіки
- •4.1. Створення базових геометричних форм
- •4.1.1. Пікселі
- •4.1.2. Рисування ліній
- •Input (x1,y1),(x2,y2)
- •4.1.3. Побудова кола
- •Input (r)
- •4.1.4. Побудова еліпса
- •4.2. Вирізання
- •4.2.1. Алгоритм серединної точки
- •4.15. Лінії до вирізання 4.16. Лінії після обрізання
- •4.2.2. Алгоритм Коена-Сазерленда
- •4.2.3. Алгоритм Лянга - Барського
- •4.3 Вирізання областей
- •4.3.1. Базовий матеріал
- •4.3.2. Алгоритм Сазерленда - Ходгмана
- •4.3.3. Алгоритми Сазерленда-Ходгмана вирізання поверхонь
- •Розділ 5. Застосування пакетів matlab у компютерній графіці
- •5.1. Головні відомості про matlab
- •5.1.1. Інтерфейс Matlab
- •5.1.2. Програмування в Matlab
- •If умова
- •5.1.3. Створення і застосування м-файлів
- •5.1.4. Робота з матрицями
- •5.2. Графіка в Matlab
- •5.2.1. Визначення точки споглядання
- •5.2.2. Об'єкти дескрипторної графіки
- •5.2.3. Побудова графіків. Команди Plot, Plot3
- •5.2.4 Примітиви
- •View(3); % 11
- •5.2.5. Алгоритми для примітивів
- •Image(x1,y,colour) % Lighting pixel
- •Image(X,y1,colour) % Lighting pixel
- •Image(X,y,colour) % Lighting pixel
- •Image(X,y-2*I,colour) % Lighting pixel
- •Image(X,y,colour) % Lighting pixel
- •Image(X-2*I,y,colour) % Lighting pixel
- •5.3. Перетворення
- •5.3.1. Геометричні перетворення
- •View(3);
- •5.3.2. Проекції тривимірного простору в
- •View(0,90);
- •View(3)
- •5.4. Вирізання
- •5.4.1. Алгоритми вирізання
- •5.4.2. Інші підходи
- •5.5. Зображення плоских кривих
- •5.5.1. Команда spline
- •5.5.2. Команда pchip
- •Список літератури
- •Покажчик
2.3.4. Граничні умови
Залежно від того, яку криву хочемо отримати, можна передбачити різні варіанти задання граничних умов. Як уже зазначено в 2.3.2, для того, щоб однозначно визначити невідомі , необхідно мати задані і .
Якщо дотичні вектори
і
задані безпосередньо, то таку граничну
умову називають закріпленою граничною
умовою, або фіксованим сплайном. Унаслідок
усіх підстановок одержуємо квадратну
тридіогональну матрицю. З отриманої
системи легко можна знайти дотичні
вектори
.
Можна задати інші граничні умови на краях кривої, наприклад
(2.12)
Таку умову називають слабкою граничною умовою. Вона збільшує кількість ненульових елементів в сумарній матриці, проте також приводить до тридіогональної матриці.
Для отримання замкнених кривих або кривих, які періодично повторюються, використовують циклічні та ациклічні граничні умови. Циклічні граничні умови передбачають рівність нахилів і кривини в першій та останній точках:
(2.13)
У цьому випадку, сумарна матриця вже не є тридіогональною.
У разі задання ациклічних граничних умов отримаємо сплайн, подібний циклічному.
(2.14)
Сплайни такого типу використовують для отримання паралельних кінцевих ділянок з дотичними векторами, які є однакові за модулем, але протилежні за напрямом.
2.4. Кубічні сплайни Без’є
Крива Без’є визначена вершинами чотирикутника, який єдиним способом задає її форму. Кривій належить перша і четверта вершини, а інші вершини характеризують похідні, порядок і вигляд кривої. Завдяки кривим Без’є можна змінювати форму кривої та її порядок завдяки вхідній інформації доти, доки не буде отримано бажаного результату[31].
Розглянемо форму Без’є, яка
відрізняється від форми Ерміта способом
задання граничних умов. Тепер радіуси
– вектори першої і кінцевої точки
сегменту позначимо відповідно, через
,
а замість векторів
і
уведемо відповідні їм радіуси – вектори
і
,
як показано на рис. 2.11, такі, що виконуються
умови
і
(2.15)
при значеннях параметра
.
Рис. 2.11. Сегмент кривої Без’є
Перехід від форми Ерміта до форми Без’є відбувається за допомогою таких перетворень:
,
де
– геометричний вектор Без’є. Підставимо
цей вираз у рівняння
,
отримаємо
. (2.16)
Коефіцієнти
можна записати у матричному вигляді
Матрицю
називають матрицею Без’є [32].
Отже, для того, щоб побудувати криволінійний сегмент у формі Без’є, треба лише задати чотири вершини багатокутника й обчислити точки вздовж кривої для .
У разі спряження двох кривих
такого типу треба задавати похідні для
отримання однакового нахилу і кривини
в точках спряження. Нехай один сегмент
заданий точками
а інший
,
причому остання точка першого сегмента
і перша другого збігаються:
.
Якщо переписати (2.16) у вигляді
,
то легко побачити, що
,
.
Нахил у кінці першого сегмента
дорівнює нахилу наступного сегмента,
коли три точки
лежать на одній прямій. Справді,
прирівнявши нахили і врахувавши, що
отримаємо
.
Це означає, що точка
є середньою точкою проміжку
.
Неперервність других похідних для цих
же сегментів задана виразами
Чотири задані точки утворюють характеристичну ламану від якої повністю залежить форма кривої Без’є. Таку властивість залежності кривої від ламаної називають властивістю опуклості оболонки.
а б
Рис. 2.12. Залежність форми кривої від характеристичної ламаної
Позначимо через
точку перетину дотичних
і
,
тоді
і
,
де
– деякі коефіцієнти. При
крива буде повністю лежати всередині
тетраедра
(рис. 2.12,а). При
крива може сама себе перетинати, причому
петля буде між t=0
і t=1
якщо
(рис.
2.12,б).
