Есть определенное количество точек на плоскости (пусть будет 10), по которым задана какая-то кривая.
............
Необходимо вычислить опорные точки для кривой Безье 3-го порядка, которая аппроксимирует данную кривую.
Вам нужно аппроксимировать точки или какую-то данную кривую? Если точки --- то зачем писать про кривую (и про какие-то непонятные производные)? Если кривую, и она действительно
"данная", то какая разница, было ли там 10 точек или 20?
Из этого делаем 2 вывода:
1) Вам нужно аппроксимировать
точек с помощью кубической кривой Безье, причём (это выводим уже из последующей дискуссии) в упрощённом варианте: начало и конец кривой совпадают с первой и последней из заданных точек.
2) Задача достаточно сложная, требует гораздо более приличного уровня владения математикой, нежели Вами проявленный.
Я так понимаю, сведения о кривых Безье Вы получили из какой-то книги или из Интеренту. Неужели в первоисточнике был написан такой ужас с звёздогчками???
Мне не раз хотелось чего-то подобного, но слишком лень браться за то решение, которое я ниже предложу. Описаний каких-либо других подходов к решению я в книжках не встречал. А самому видится только тупое решение. Хотя, со всякими там хитроумными модерновыми пакетами, типа Экселей (часто слышал такое слово, и напоминает волшебную палочку), может и это легко сделается.
У Вас два кубических уравнения-полинома
, коэффициенты которых содержат 4 неизвестных, координаты
и
искомых опорных точек. Исключив параметр, получим неявное уравнение кривой третьего порядка
, коэффициенты которой (при
) будут
нелинейными функциями четырёх неизвестных. Теперь МНК (нелинейный, естессно, но Экселю, надесь, по барабану): минимизируем
Возможно, нулевое приближение (для нелинейного МНК) легко отыщется подстановкой в уравнение кривой каких-либо двух промежуточных точек. Ну и в какой-то приличной системе координат, скажем, в такой, что
,
.
Весовые множители
следует поначалу принять равными единице. Я их упомянул с намёком на особо неленивых и вторую итерацию, в которой, получив приличное первое приближение кривой, можно подобрать весовые множители так, чтобы функционал был "более геометричным", т.е. чтобы "невязки"
были близки к истинному расстоянию от точки до кривой. Для определения
, как мне представляется, достаточно будет оценить что-то вроде кривизны кубики
в районе
-той точки.