Алгоритм де КастельжоВ вычислительной математике алгоритм де Кастельжо, названный в честь его изобретателя Поля де Кастельжо — рекурсивный метод определения формы многочленов Бернштейна или кривых Безье. Алгоритм де Кастельжо также может быть использован для разделения кривой Безье на две части по произвольному значению параметра . Достоинством алгоритма является его более высокая вычислительная устойчивость по сравнению с прямым методом. ОписаниеЗадан многочлен Бернштейна B степени n где b — базис многочлена Бернштейна, многочлен в точке t0 может быть определен с помощью рекуррентного соотношения Тогда определение в точке может быть определено в шагов алгоритма. Результат дан по: Также, кривая Безье может быть разделена в точке на две кривые с соответствующими опорными точками: Геометрическая интерпретацияГеометрическая интерпретация алгоритма де Кастельжо проста:
Следующая иллюстрация демонстрирует этот процесс для кубической кривой Безье: Следует заметить, что полученные в процессе построения промежуточные точки являются опорными точками для двух новых кривых Безье, в точности совпадающих с исходной, и в совокупности дающих исходную кривую Безье. Этот алгоритм не только определяет точку кривой в , но и делит кривую на две части в , а также предоставляет описание двух суб-кривых в форме Безье (в параметрическом представлении). Описанный алгоритм справедлив для нерациональных кривых Безье. Для вычисления рациональных кривых в , можно спроецировать точку в ; например кривая в трехмерном пространстве должна иметь опорные точки и веса спроецированные в весовые контрольные точки . Затем обычно алгоритм переходит к интерполяции в . Результирующие четырехмерные точки могут быть спроецированы обратно в трехмерное пространство с помощью перспективного деления. В целом, операции с рациональными кривыми (или поверхностями) эквивалентны операциям с нерациональными кривыми в проективном пространстве. Представление опорных точек как взвешенных часто бывает удобно для определения рациональных кривых. СсылкиСм. также |