Поверхности Безье — это разновидность математических сплайнов, используемых в компьютерной графике , автоматизированном проектировании и моделировании конечных элементов . Как и кривые Безье , поверхность Безье определяется набором контрольных точек. Подобно интерполяции во многих отношениях, ключевым отличием является то, что поверхность, как правило, не проходит через центральные контрольные точки; скорее, она «растягивается» к ним, как если бы каждая была силой притяжения. Они визуально интуитивно понятны и, для многих приложений, математически удобны.
Поверхности Безье были впервые описаны в 1962 году французским инженером Пьером Безье , который использовал их для проектирования автомобильных кузовов. Поверхности Безье могут быть любой степени, но бикубические поверхности Безье обычно обеспечивают достаточно степеней свободы для большинства приложений.
Заданная поверхность Безье степени ( n , m ) определяется набором ( n + 1)( m + 1) контрольных точек k i , j , где i = 0, ..., n и j = 0, ..., m . Она отображает единичный квадрат в гладкую непрерывную поверхность, вложенную в пространство, содержащее k i , j s – например, если k i , j s являются точками в четырехмерном пространстве, то поверхность будет находиться в четырехмерном пространстве.
Двумерную поверхность Безье можно определить как параметрическую поверхность , где положение точки p как функция параметрических координат u , v задается формулой: [1]
оценивается по единичному квадрату, где
является базисным полиномом Бернштейна , и
является биномиальным коэффициентом .
Некоторые свойства поверхностей Безье:
Как правило, наиболее распространенное использование поверхностей Безье — это сети бикубических участков (где m = n = 3). Геометрия одного бикубического участка, таким образом, полностью определяется набором из 16 контрольных точек. Они обычно связаны, образуя поверхность B-сплайна , аналогично тому, как кривые Безье связаны, образуя кривую B-сплайна .
Более простые поверхности Безье образуются из биквадратных фрагментов ( m = n = 2) или треугольников Безье .
Сетки лоскутов Безье превосходят треугольные сетки в качестве представления гладких поверхностей. Они требуют меньше точек (и, следовательно, меньше памяти) для представления криволинейных поверхностей, ими легче манипулировать, и они обладают гораздо лучшими свойствами непрерывности . Кроме того, другие распространенные параметрические поверхности, такие как сферы и цилиндры, могут быть хорошо аппроксимированы относительно небольшим числом кубических лоскутов Безье.
Однако сетки лоскутных кривых Безье трудно визуализировать напрямую. Одна из проблем с лоскутными кривыми Безье заключается в том, что расчет их пересечений с линиями сложен, что делает их неудобными для чистой трассировки лучей или других прямых геометрических методов, которые не используют методы подразделения или последовательного приближения. Их также трудно комбинировать напрямую с алгоритмами перспективной проекции.
По этой причине сетки лоскутов Безье в конечном итоге обычно разлагаются на сетки плоских треугольников конвейерами 3D- рендеринга . При высококачественном рендеринге подразделение настраивается так, чтобы быть настолько мелким, что границы отдельных треугольников не видны. Чтобы избежать «пятнистого» вида, на этом этапе к поверхностям Безье обычно применяется мелкая детализация с использованием текстурных карт , карт рельефа и других методов пиксельных шейдеров .
Кривая Безье степени ( m , n ) может быть построена из двух треугольников Безье степени m + n или из одного треугольника Безье степени m + n , при этом входная область представляет собой квадрат вместо треугольника .
Треугольник Безье степени m также может быть построен из поверхности Безье степени ( m , m ), с контрольными точками, такими, что одно ребро сплющено в точку, или с входной областью в виде треугольника вместо квадрата.