Треугольник Безье

Треугольник Безье — особый тип поверхности Безье, получаемый при интерполировании (линейном, квадратичном, кубическом или более высокой степени) по контрольным точкам.

Треугольник Безье n-го порядка править

Обобщённый треугольник Безье n-го порядка обладает (n + 1)(n + 2)/2 контрольными точками a i β j γ k, где ijk являются неотрицательными целыми числами, такими что i + j + k = n [1]. Тогда поверхность задаётся как

 

для всех неотрицательных вещественных чисел s + t + u = 1.

В линейном случае ( ) треугольник Безье представляет собой плоский треугольник, вершины которого являются тремя контрольными точками. Квадратичный ( ) треугольник Безье обладает 6 контрольными точками, которые расположены на его сторонах. Кубический треугольник Безье ( ) задаётся 10 контрольными точками и является треугольником Безье наименьшего порядка, у которого существует внутренняя контрольная точка, не расположенная на стороне. Во всех случаях стороны треугольника будут являться кривыми Безье одной и той же степени.

Кубический треугольник Безье править

 
Пример треугольника Безье с отмеченными контрольными точками

Кубический треугольник Безье является поверхностью, задаваемой уравнением

 

где α3, β3, γ3, α2β, αβ2, β2γ, βγ2, αγ2, α2γ и αβγ являются контрольными точками треугольника, а s, t, u (при 0 ≤ s, t, u ≤ 1 и s+t+u=1) являются барицентрическими координатами внутри треугольника.[2] [1]

Также треугольник Безье можно представить в более общем виде как

 

в соответствии с формулой для треугольника Безье n-го порядка.

Углами треугольника являются точки α3, β3 и γ3. Стороны треугольника представляют собой кривые Безье с теми же контрольными точками, что и у треугольника Безье.

При исключении слагаемого с γu получается правильная кривая Безье. При добавлении дополнительных слагаемых можно получить тетраэдр Безье или политоп Безье.

Вследствие свойств уравнения треугольник целиком содержится внутри объёма, ограниченного контрольными точками, а аффинные преобразования контрольных точек трансформируют целый треугольник аналогичным образом.

Деление кубического треугольника Безье править

Преимуществом использования треугольников Безье в компьютерной графике является тот факт, что для деления треугольника Безье на два треугольника Безье необходимы только операции сложения и деления на 2, а не арифметика чисел с плавающей запятой. Это означает, что гладкие треугольники Безье можно рекурсивно приблизить совокупностью правильных треугольников путём деления треугольников на два до тех пор, пока образующиеся треугольники не окажутся достаточно малыми.

Ниже представлен метод вычисления новых контрольных точек для половины первоначального треугольника Безье с углом α3, вторым углом на половине кривой Безье между α3 и β3 и третьим углом γ3.

 
Аналогично, используя только сложение и деление на два,
        β3 := (αβ2 + β3)/2
    αβ2 := (α2β + αβ2)/2   β3 := (αβ2 + β3)/2
α2β := (α3 + α2β)/2   αβ2 := (α2β + αβ2)/2   β3 := (αβ2 + β3)/2
    β2γ := (αβγ + β2γ)/2
αβγ := (α2γ + αβγ)/2   β2γ:=(αβγ+β2γ)/2
βγ2 := (αγ2 + βγ2)/2
где := означает замену вектора слева вектором справа.
Заметим, что деление треугольника Безье пополам аналогично делению пополам кривых Безье любого порядка до порядка треугольника Безье.

Примечания править

  1. 1 2 Farin, Gerald (2002), Curves and surfaces for computer-aided geometric design (5 ed.), Academic Press Science & Technology Books, ISBN 978-1-55860-737-8
  2. 3D Surface Rendering in Postscript Архивная копия от 3 марта 2016 на Wayback Machine

Ссылки править