
- •Параметрические Кривые: Обзор
- •Примеры
- •Касательный Вектор и Касательная
- •Примеры
- •Нормальный Вектор и Кривизна
- •Кривизна
- •Еще примеры
- •Почему Направляющая Тройка Важна?
- •Вопросы Непрерывности
- •Проблемы с Параметрическим Представлением
- •Параметризация По Длине Дуги
- •Геометрическая Непрерывность
- •Рациональные Кривые
- •Рациональные Формы Стандартных Кривых
- •Теоремы Объединения [Uniformization]
- •Построение Кривых Безье
- •Что, если область u не [0.1]?
- •Краткий Итог
- •Нахождение точки на Кривой Безье: Алгоритм De Casteljau's
- •Вычисления
- •Рекурсивное Представление
- •Кривые Безье Касательны к их Первому и Последнему Сегменту.
- •Объединение Двух Кривых Безье с соблюдением c1-Непрерывности
- •Соотношение Между Производной и Алгоритмом de Casteljau
- •Производные Высших Порядков [Higher Derivatives]
- •Разбиение Кривой Безье
- •Зачем Это Нужно, блин ? [Why Do We Need Curve Subdivision?]
- •Базисные Функции b-spline: Определение
- •Два Важных Замечания
- •Какое Значение Имеют Коэффициенты?
- •Базисные Функции b-spline: Важные Свойства
- •Ni,p(u) - это многочлен p-й степени от u
- •Неотрицательность -- Для всех I, p и u, Ni,p(u) неотрицательно
- •Влияние Множественных УзлоFf
- •Примеры Вычислений
- •Простые Узлы
- •Множественные Узлы
- •Кривые b-spline: Определение
- •Кривые b-spline: Важные Свойства
- •Преимущества Использования Кривых b-spline
- •Кривые b-spline: Вычисление Коэффициентов
- •Кривые b-spline: Перемещение Контрольных Точек
- •Некоторые Полезные Следствия Свойства Сильного Ограничивающего Многоугольника
- •Кривые b-spline: Изменение Узлов
- •Замечание о Множественных Узлах
- •Производные Кривой b-spline
- •Фиксированные Кривые b-spline
- •Производные Высших Порядков
- •Nurbs: Мотивация
- •Nurbs: Определение
- •Два Прмых Следствия [Two Immediate Results]
- •Геометрическая Интерпретация.
- •Nurbs: Важные Свойства
- •Важные Свойства Базисных Функций nurbs
- •Неотрицательность -- для всех I и p, Ri,p(u) неотрицательно
- •Важные Свойства Кривых nurbs
- •Кривая nurbs p(u) - это кусочная кривая, каждый компонент которой - это рациональная кривая степени p
- •Фиксированная кривая nurbs p(u) проходит через две крайние контр. Точки p0 и pn
- •Nurbs: Изменение Весов
- •Углубленное Рассуждение
- •Кривые b-spline/nurbs: Введение Узла
- •Введение Одиночного Узла
- •Пример 1: Введение Узла на Узловом Интервале
- •Пример 2: Введение Узла в Существующем Простом Узле
- •Пример 3: Введение Узла в Существующем Множественном Узле
- •Введение Узла для Кривых nurbs
- •Кривые b-spline/nurbs: Множественное Введение Узла
- •Замечание (Наблюдение) I: Коэффициенты для Вычисления Новых Контр. Точек
- •Замечание [Наблюдение] II: Вычисление Новых Контрольных Точек
- •Вычислить первый столбец, второй столбец, ... И h-ый столбец;
- •Новым набором контр. Точек будут те, что ограничены пунктирным многоугольником.
- •Отсечение Углов
- •Алгоритм De Boor
- •Алгоритм De Boor для Кривых nurbs
- •Основные Понятия
- •Параметрические Поверхности
- •Неявные Поверхности
- •Особенности
- •Поверхности Безье: Построение [Construction]
- •Базисные Функции
- •Поверхности [Tensor] Произведения
- •Поверхности Безье: Важные Свойства
- •Изопараметрические Кривые
- •Граничные [Boundary] Кривые
- •Направление u и направление V
- •Поверхности [Tensor] Произведения: Возвращаемся к теме
- •Поверхности b-spline: Построение
- •Базисные Функции
- •Фиксированные, Закрытые и Открытые Поверхности b-spline
- •Поверхности b-spline: Важные Свойства
- •Выбор Параметров : Обзор [Parameter Selection Overview]
- •Метод Длины Хорды
- •Центростремительный Метод
- •Получение Узлового Вектора
- •Универсальный Метод
- •Параметры и Узловые Векторы для Поверхностей
- •Глобальная Интерполяция Кривых
- •Нахождение Решения
- •Алгоритм
- •Влияние Параметров и Узлов
- •Влияние Степени
- •Почему Этот метод Назывется Глобальным?
- •Глобальная Аппроксимация Кривых
- •Значение Наименьшей Площади
- •Поиск Решения
- •Алгоритм
- •Влияние Степени и Количества Контрольных Точек
- •Почему Этот Метод Глобальный?
- •Глобальная Интерполяция Поверхностей
- •Поиск Решения
- •Почему Этот Метод Глобальный?
- •Глобальная Аппроксимация Поверхностей
- •Поиск Решения
- •Усовершенствование Алгоритма
- •Простое Сравнение
Поверхности b-spline: Построение
Дана следующая информация:
набор из m+1 рядов из n+1 контр. точек pi,j, где 0 <= i <= m и 0 <= j <= n;
узловой вектор из h + 1 узлов в направлении u, U = { u0, u1, ...., uh };
узловой вектор из k + 1 узлов в направлении v, V = { v0, v1, ...., vk };
степень p в направлении u; и
степень q в направлении v;
поверхность B-spline, описываемая этой информацией, имеет следующий вид:
где Ni,p(u) и Nj,q(v) - это базисные функции B-spline степеней p и q, соответственно. Заметьте, что должны выполняться фундаментальные тождества, по одному на каждое направление: h = m + p + 1 и k = n + q + 1. Таким образом, поверхность B-spline - это еще один пример поверхностей [tensor] произведения.
Следующий рисунок показывает поверхность B-spline, определяемую 6 рядами и 6 столбцами контр. точек.
Узловой вектор и степень в направлении u равны U = { 0, 0, 0, 0.25, 0.5, 0.75, 1, 1, 1 } и 2. В направлении v это V = { 0, 0, 0, 0, 0.33, 0.66, 1, 1, 1, 1 } и 3.
Базисные Функции
Коэффициент контр. точки pi,j - это произведение двух одномерных базисных функций B-spline, одна в направлении u, Ni,p(u), а другая - в направлении v, Nj,q(v). Все эти произведения - это двумерные функции B-spline. Следующие рисунки показывают базисные функции контр. точек p2,0, p2,1, p2,2, p2,3, p2,4 и p2,5.
Двумерные базисные функции показаны в виде сеточных поверхностей. Так как контр. точки лежат на одном ряду, базисная функция в направлении u фиксирована, тогда как базисные функции в направлении v изменяются. Так как базисные функции B-spline в общем случае не равны нулю на нескольких последовательных узловых интервалах (схема локального изменения), двумерные базисные функции B-spline не равны нулю на пересечении[произведении?] двух узловых интервалов, на которых хотя бы одна одномерная базисная функция не равна нулю. Этот факт ясно виден на рисунках выше.
Фиксированные, Закрытые и Открытые Поверхности b-spline
Так как кривая B-spline может быть фиксированной, закрытой или открытой, то и поверхность B-spline также может быть трех типов в каждом направлении. То есть, можно узнать, является ли поверхность B-spline фиксированной в направлении u и закрытой в направлении v. Если B-spline фиксирована в обоих направлениях, то такая поверхность проходит через контр. точки p0,0, pm,0, p0,n и pm,n и касательна восьми сегментам контрольной сетки в этих четырех точках. Если поверхность B-spline закрыта в каком-то направлении, то все изопараметрические кривые в этом направлении являются закрытыми кривыми и поверхность становится трубой. Если поверхность B-spline открыта в обоих направлениях, то поверхность не проходит через контр. точки p0,0, pm,0, p0,n и pm,n. Эти замечания заостряют внимание только на поверхностях, фиксированных в обоих направлениях. Следующие рисунки показывают три поверхности B-spline: фиксированную, закрытую и открытую в обоих направлениях. Все три поверхности определяются одним и тем же набором контр. точек; но, как в случае с кривыми B-spline, их узловые векторы отличаются.