qweqweqe123123

Дифференцирование поверхности Безье

В системах геометрического моделирования часто возникает потребность в вычислении вектора нормали в произвольной точке поверхности. Например, для отображения затушеванного изображения поверхности необходимо определять угол между падающим светом и нормалью к поверхности в каждой ее точке. Векторы нормали также используются для вычисления положения фрезы при обработке поверхности станком с ЧПУ.

Итак, нам нужно уметь вычислять производные

Дифференцирование поверхности Безье

в любой точке поверхности, поскольку вектор нормали определяется произведением этих частных производных. Вычислить производную по и для поверхности Безье в точках и = и0 и v = v0 можно так, как показано ниже. Производная по v вычисляется аналогичным образом.

Дифференцируя выражение (7.23) по и, получим

Дифференцирование поверхности Безье

Перепишем коэффициент перед B0,m(v) в уравнении (7.29), используя результат из раздела 6.4.1 в следующем виде:

Дифференцирование поверхности Безье

где ai,0 =Рi+1,0-Рi,0.

Правую часть выражения (7.30) можно вычислить для произвольного значения u0 по алгоритму де Кастильо (см. раздел 6.4.1). Тем же путем осуществляется вычисление коэффициентов B1,m(v), B2,m(v), ..., Bmm(v) для u0. Если обозначить полученные значения коэффициентов символами С0, C1,.... Сn, выражение (7.29) можно будет переписать в виде

Дифференцирование поверхности Безье

Выражение (7.31) вычисляется также по алгоритму де Кастильо по задающим точкам Ci.

 

 

 

Смотрите также