Открыть сервис

NURBS-поверхность

NURBS-поверхность — это параметрическая поверхность, задаваемая математической моделью NURBS (Non-Uniform Rational B-Spline, неоднородный рациональный B-сплайн), которая используется в компьютерной графике, системах автоматизированного проектирования (САПР) и числовом программном управлении (ЧПУ) для точного представления сложных геометрических форм.

Математическое описание

NURBS-поверхность является двумерным обобщением NURBS-кривой. Она определяется как рациональная функция двух параметров (обычно \( u \) и \( v \)) и задается формулой:

\[ S(u,v) = \frac{\sum_{i=0}^{n} \sum_{j=0}^{m} N_{i,p}(u) N_{j,q}(v) w_{i,j} P_{i,j}}{\sum_{i=0}^{n} \sum_{j=0}^{m} N_{i,p}(u) N_{j,q}(v) w_{i,j}} \]

где:

  • \( P_{i,j} \) — контрольные точки, образующие контрольную сетку;
  • \( w_{i,j} \) — веса контрольных точек;
  • \( N_{i,p}(u) \) и \( N_{j,q}(v) \) — базисные B-сплайн-функции степени \( p \) и \( q \);
  • \( n+1 \) и \( m+1 \) — количество контрольных точек по каждому направлению.

Ключевое отличие NURBS от обычных B-сплайнов — наличие весов \( w_{i,j} \), которые позволяют точно представлять конические сечения (окружности, эллипсы) и другие рациональные кривые, что невозможно для нерациональных сплайнов.

Свойства

NURBS-поверхности обладают рядом важных свойств:

  • Локальная поддержка: изменение одной контрольной точки влияет только на ограниченную область поверхности, определяемую степенью базисных функций.
  • Выпуклая оболочка: поверхность лежит внутри выпуклой оболочки своих контрольных точек.
  • Инвариантность к аффинным преобразованиям: перенос, поворот и масштабирование применяются к контрольным точкам, а не к самой поверхности.
  • Вариация убывания: поверхность не осциллирует сильнее, чем ее контрольная сетка.
  • Точное представление конических сечений: благодаря рациональной форме NURBS могут точно описывать окружности, сферы и другие квадрики.

Классификация и типы

По структуре узлового вектора различают:

  • Открытые (open) поверхности — узловые векторы с кратными концами, поверхность проходит через крайние контрольные точки.
  • Замкнутые (closed) поверхности — периодические узловые векторы, поверхность замкнута в одном или обоих направлениях.
  • Поверхности Безье — частный случай NURBS с одним сегментом и без внутренних узлов.

По форме контрольной сетки выделяют поверхности с равномерным и неравномерным распределением узлов, а также рациональные и нерациональные (при всех весах, равных единице, NURBS вырождается в обычный B-сплайн).

Применение

NURBS-поверхности являются стандартом де-факто в промышленных САПР (NX, CATIA, SolidWorks, AutoCAD) и системах компьютерного моделирования. Основные области применения:

  • Авиа- и автомобилестроение: проектирование кузовов, фюзеляжей, крыльев и других обтекаемых поверхностей.
  • Судостроение: моделирование корпусов судов.
  • Промышленный дизайн: создание корпусов бытовой техники, электроники, мебели.
  • Анимация и игровая индустрия: моделирование органических объектов (персонажи, животные), хотя в этой сфере NURBS постепенно вытесняются субдивизион-поверхностями и полигональным моделированием.
  • ЧПУ-обработка: генерация управляющих программ для станков с числовым программным управлением.
  • ГИС и картография: представление рельефа местности.

Форматы обмена данными

Для обмена NURBS-данными между системами используются стандартизированные форматы: IGES (Initial Graphics Exchange Specification), STEP (Standard for the Exchange of Product Model Data), а также форматы Parasolid и ACIS. В веб-графике и 3D-печати распространен формат 3MF, который также поддерживает NURBS-представление.

Преимущества и недостатки

Среди преимуществ NURBS-поверхностей — высокая точность, компактность описания, гладкость (возможность обеспечения непрерывности производных до второго порядка и выше), масштабируемость без потери качества. К недостаткам относят сложность математического аппарата, высокие вычислительные затраты при рендеринге, сложность выполнения булевых операций (объединение, вычитание) по сравнению с полигональными моделями, а также трудности при создании поверхностей произвольной топологии (например, с ответвлениями), что требует использования дополнительных методов стыковки.

История

Математические основы NURBS были разработаны в 1950-х годах Пьером Безье (Pierre Bézier) и Полем де Кастельжо (Paul de Casteljau) для нужд автомобильной промышленности (Renault и Citroën соответственно). В 1970-х годах Кеннет Версприлл (Kenneth Versprille) в своей докторской диссертации в Сиракузском университете формализовал обобщение B-сплайнов на рациональный случай, что и привело к появлению NURBS. В 1980-х годах Лес Пигл (Les Piegl) и Уэйн Тиллер (Wayne Tiller) внесли значительный вклад в развитие теории и практики NURBS, опубликовав в 1995 году фундаментальную монографию «The NURBS Book». В 1991 году NURBS были включены в стандарт IGES, а затем в STEP, что закрепило их статус промышленного стандарта.

---

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →