- •1 Аксонометрические проекции. Изометрия, диметрия, триметрия
- •2 Алгоритмы разложения в растр отрезка прямой линии и окружности
- •4 Использование методов порталов и иерархических подсцен при создании виртуальной реальности. Метод порталов
- •5 Классификация цветовых моделей и форматов компьютерной графики
- •6 Колориметрия. Цветовые модели, смешение цветов и законы Гроссмана
- •7 Математическая модель и виды перспективного проецирования
- •8 Методы геометрического моделирования
- •9 Моделирование кривых и поверхностей в форме Безье
- •10 Моделирование кривых и поверхностей в форме Эрмита
- •11. Моделирование прозрачности и теней при построении реалистических изображений
- •12. Моделирование трехмерных поверхностей порциями поверхностей Кунса
- •13 Моделирование фотореалистичных изображений при помощи метода излучательности
- •14. Построение реалистических изображений методом Торренсанса-Сперроу
- •15. Построение реалистичных изображений. Формула закраски
- •16. Преобразования на плоскости и в пространстве. Система однородных координат
- •17. Развертка сплошных областей. Алгоритмы построчной развертки и заполнения с затравкой.
- •18. Сплайновая модель пространственных кривых и поверхностей
- •19. Формирование изображений трехмерного пространства методом отсечения лучей.
- •20. Формирование изображений трехмерного пространства при помощи алгоритмов, основанных на построении bsp-деревьев
- •Алгоритмы двоичного разбиения пространства
- •21. Формирование окраски методом Гуро
- •22. Формирование окраски методом Фонга
- •23. Формирование реалистических изображений методом трассировки лучей
- •24. Цветовые модели, ориентированные на аппаратуру и восприятие человеком
- •2. Аппаратно-ориентированные модели
- •2. Модели ориентированные на человека
- •25. Цветовые форматы и стандарты мко
9 Моделирование кривых и поверхностей в форме Безье
Представление кубических кривых в форме Безье.
Кубическая кривая в форме Безье описывается при помощи четырех точек ( P1, P2, P3, P4 ), при этом отрезки P1, P2 и P3, P4 определяют направление касательных векторов.
С математической точки зрения форма Эрмита и форма Безье описывает одну и ту же кривую. Поэтому между этими двумя формами описания сегментов можно ввести соотношение:
Используя выражение найдем уравнения для формы Безье:
где T - вектор степеней параметров, MB - матрица Безье, а GB – геометрическая матрица Безье, описывающая исходные данные:
При этом матрица Безье имеет следующий вид:
По сравнению с формой Эрмита форма Безье имеет следующие преимущества:
• сегмент кривой удобно задавать в интерактивном режиме по четырем точкам;
• четыре точки определяют четырехугольник, который может использоваться в качестве выпуклой оболочки в процедуре удаления невидимых линий и поверхностей.
Недостатком данной формы, по сравнению с формой Эрмита является то, что она не позволяет с математической точностью определить гладкость сопряжения сегментов.
Чаще всего в системах проектирования и конструирования, формы Безье и Эрмита используется совместно. При помощи формы Безье происходит интерактивный ввод кривых, а достижение требуемой гладкости обеспечивается переходом от формы Безье к форме Эрмита с последующей коррекцией величин касательных.
Формы Эрмита и Безье является наиболее простым представлением кубических кривых. Они обладают следующими общими недостатками:
• изменение координат хотя бы одной точки приводит к необходимости изменений всей кривой;
• добавление узла в кривую также приводит к необходимости пересчета всей кривой.
Модель поверхности формы Безье.
Для описания кривой линии в форме Безье было достаточно четырех точек в трехмерном пространстве. Для описания сегмента поверхности требуется 4*4=16 точек. При этом сегмент поверхности аппроксимируется многогранником, у которого только четыре угловые точки совпадают с точками самой аппроксимируемой поверхности. Остальные определяют охватывающий многогранник. Таким образом, матрица описания сегмента в форме Безье будет содержать координаты шестнадцати точек: .
Уравнение, определяющее один сегмент поверхности Безье, будет иметь бикубическую форму:
(1)
где параметры u є [0,1]; t є [0,1] , а функции
Данная кривая описывает бикубическую пространственную форму. Запишем ур-е (1) в матричном виде: r(u,t) = Gu*P*Gt
где P - матрица исходных данных, а векторы Gu и Gt имеют следующий вид:
Аналогичным образом определяется последняя составляющая этого уравнения Gt :
Подставим выражения Gu и Gt, получим:
10 Моделирование кривых и поверхностей в форме Эрмита
Пусть P1 и P4 - концевые точки сегмента кривой, а R1 и R4 - касательные в них.
Н
Рис 1.
x(t) = ax t3 + bx t2 + cx t + dx ; y(t) = ay t3 + by t2 + cy t + dy ; (1) z(t) = az t3 + bz t2 + cz t + dz ; |
r(0) = P1 = (P1x P1y P1z ); r(1) = P4 = (P4x P4y P4z ); r′(0) = R1 = (R1x R1y R1z ); (2) r′(1) = R4 = ( R4x R4y R4z ).
|
Рассмотрим реш-е задачи на прим одного ур-я. Для компакт-ти представим ур-я в векторном виде:
(3)
где T - вектор-строка степеней параметра t, Cx - вектор-столбец коэф-тов для первого уравнения системы (1). Представим исходные данные в векторной форме:
(4)
Для получения значений производных продифференцируем выражение x(t):
(5)
Объединим отдельные векторные выражения формул (4) и (5) в единую систему уравнений, которые описываются одним матричным уравнением:
(6)
где GHx - геометрическая матрица Эрмита, содержащая исходные данные для описания сегмента кривой линии. Решая выражение (6) относительно вектора Cx, получим следующий результат:
(7)
где – MH = N-1H матрица сопряжения Эрмита, а GH - вектор Эрмита.
Подставим (7) в (3), получим x(t) = T * MH *GHx.
Аналогичным образом получим соответствующие уравнения для координат y и z, тогда 3 матричных уравнения можно записать в следующем виде:
r(t) = T * MH *GH.
Имея исходные данные, содержащиеся в GH и изменяя значения параметра T от нуля до единицы можно восстановить с заданной точностью точки сегмента.
При построении гладких поверхностей необходимо следить за поведением кривой на каждом из сегментов. Ее поведение будет зависеть от величин касательных R1 и R4.
ПОВЕРХНОСТЬ ЭРМИТА
Д ля моделирования сегмента трехмерной поверхности в данной форме используются координаты концевых (угловых) точек сегмента и касательные векторы в них. На основании этих исходных данных определяется коэффициент бикубического многочлена – aij. Описание кривой линии в трехмерном пространстве, в форме Эрмита определяется:
Перемещая подобную кривую во времени получим:
(1)
Если интерполируемые линии являются прямыми, то полученная поверхность называется линейчатой. Если, кроме того, кривые P1(t) и P4(t) находятся в одной плоскости, то моделируемый сегмент будет плоским.
Представим четыре многочлена в виде одного вектора:
(3)
где .
Используя тождество матричной алгебры применительно к выражению (3), получим следующие значения:
(4)
где
П одставив (4) в (1), получим:
(5)
А налогичным образом получается выражение для зависимостей у(u,t) и z(u,t). Таким образом, задача конструирования поверхности в форме Эрмита заключается в определении элементов матриц