Вчера попробовал взять для каждой
-й кривой приближение
(хотя это обычная парабола) с
и условиями: 1. каждая кривая проходит через граничные точки + первые и вторые производные в граничных точках равны. Но тогда вылезли зависимости
-х коэффициентов от
-х, что меня совсем не радует, а равенство вторых производных дает страшную кубическую зависимость
Пробовал выкинуть условие со второй производной и заменить его на условие "вершина параболы находится на серединном перпендикуляре к P_jP_{j+1}". Условие неестественное, я его мотивировал тем, чтобы вершина параболы вдруг не "выскочила" на дуге. Но формулы слишком страшные получились (вообще, для параболы
, заданной выше, есть простые формулы для ее вершины?)
мат-ламер писал(а):
Есть такая разновидность сплайнов - NURBS. Может Вам подойдёт?
Напрямую не получается - NURBS тоже не проходит через все узловые точки. Или я чего-то не понял?
ewert я ж так не выживу - мне же это все в коде писать надо...
Ну узлов на каждой кривой вроде бы довольно много - по нескольку десятков узлов кривые точно будут, а м.б. и до сотни узлов дойдет.
Насчет равенства векторных производных надо подумать... Если других вариантов не найду, возьму этот.
Мне бы было просто замечательно, если бы уравнение кривой строилось локально - по паре или хотя бы по конечному числу точек. Это я хоть запрограммировать смогу. А рекуррентности типа
можно было бы решать методом итераций, пробежавшись несколько раз по кривой (хотя совсем не уверен в вопросах сходимости).
-- Чт июл 15, 2010 08:31:18 --Можно наверное, знаете, как попробовать? Звенья ломаной
у меня уже есть. Берем, для каждого угла
строим прямую
так, чтобы она образовывала с отрезками
и
одинаковые углы. Тогда прямые
задают для кривой
направления (касательные, производную) в точках
- уже 4 условия. И тогда наверное Безье можно построить через систему линейных уравнений
.
-- Чт июл 15, 2010 08:33:59 --Хотя нет, я так точку
переопределяю только.
Ну значит не Безье, а параболу, вроде бы она тогда подойдет...
Да, подходит!!!! Зашибись! Щас проверю на примерах еще...