Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Введение Узла для Кривых NURBS

Читайте также:
  1. II. Введение в нервную систему
  2. NURBS: Изменение Весов
  3. NURBS: Определение
  4. А. Введение
  5. Алгоритм De Boor для Кривых NURBS
  6. Важные Свойства Кривых NURBS
  7. Введение (Вход) во храм Пресвятой Владычицы нашей Богородицы и Приснодевы Марии

Только что обсуждалось введение узла для кривых B-spline. Так как кривые NURBS - это проекции 4D-кривых B-spline на 3D-пространство, то введение узлов для кривых NURBS - это довольно просто. Заметьте, вышеизложенное обсуждение и вычисления не требуют, чтобы контр. точки были в трехмерном пространстве. Таким образом, введение узла для кривых NURBS делается в три шага: (1) преобразуем данную кривую NURBS в 3D в кривую B-spline в 4D, (2) проводим введение узла для этой четырехмерной кривой B-spline, и (3) проецируем новый набор контр. точек обратно на трехмерное пространство, чтобы получить новый набор контр. точек для данной кривой NURBS после введения узла.

Пусть имеется n + 1 контр. точек p0, p1, ..., pn с соответствующими весами w0, w1, ..., wn, узловой вектор U и степень p. Пусть pi = (xi, yi, zi). Тогда контр. точки Pi = ( wixi, wiyi, wizi, wi ), 0 <= i <= n и узловой вектор U определяют четырехмерную кривую B-spline степени p. Мы можем ввести узел t в эту четырехмерную кривую B-spline, получим новый набор контр. точек Qi = ( Xi, Yi, Zi, Wi ), 0 <= i <= n. Проецируем эти контр. точки обратно на трехмерное пространство с помощью деления первых трех составляющих на четвертую, и получаем новый набор контр. точек для данной кривой NURBS.

Рассмотрим пример. Допустим, есть 9 узлов

u0 - u3 u4 u5 - u8
0.5

и кривая NURBS 3 степени, построенная по 5 контр. точкам на плоскости xy:

  x y w
p0 -70 -76
p1 -70 0.5
p2
p3 -77
p4 -40 -76

Вот кривая и ее базисные функции.

Давайте введем новый узел t = 0.4. Так как t на узловом интервале [u3, u4), а степень кривой NURBS равна 3, то зависимые точки - это p3, p2, p1 и p0. Так как это кривая NURBS, мы будем использовать [homogeneous] кординаты, умножив все контр. точки на соответствующие им весы. Назовем эти новые точки Pi:

  x y w
P0 -70 -76
P1 -35 37.5 0.5
P2
P3 -385

Заметьте, так как на P4 не влияет введение узла, она не вычисляется в этой таблице. Затем, вычисляем a3, a2 и a1:

a3 = (t - u3)/ (u6 - u3) = (0.4 - 0)/(1 - 0) = 0.4
a2 = (t - u2)/ (u5 - u2) = (0.4 - 0)/(1 - 0) = 0.4
a1 = (t - u1)/ (u4 - u1) = (0.4 - 0)/(0.5 - 0) = 0.8

Новые контр. точки Q3, Q2 и Q1 - это

Q3 = (1 - a3)P2 + a3P3 = ( 325.6, 26, 4.4 )
Q2 = (1 - a2)P1 + a2P2 = ( 97.4, 142.5, 1.9 )
Q1 = (1 - a1)P0 + a1P1 = ( -42, 14.8, 0.6 )

Проецируя эти три четырехмерные контр. точки с помощью деления первых трех составляющих на четвертую (вес), получим

q3 = ( 74, 5.9 ) с весом 4.4
q2 = ( 51.3, 75 ) с весом 1.9
q1 = ( -70, 24.6 ) с весом 0.6

Вот конечный вид кривой NURBS и ее базисных функций:


Дата добавления: 2015-10-29; просмотров: 151 | Нарушение авторских прав


Читайте в этой же книге: Кривые B-spline: Определение | Кривые B-spline: Важные Свойства | Кривые B-spline: Вычисление Коэффициентов | Кривые B-spline: Перемещение Контрольных Точек | Некоторые Полезные Следствия Свойства Сильного Ограничивающего Многоугольника | NURBS: Определение | Важные Свойства Кривых NURBS | NURBS: Изменение Весов | Углубленное Рассуждение | Введение Одиночного Узла |
<== предыдущая страница | следующая страница ==>
Пример 2: Введение Узла в Существующем Простом Узле| Замечание [Наблюдение] II: Вычисление Новых Контрольных Точек

mybiblioteka.su - 2015-2021 год. (0.007 сек.)