Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.145.206.169] |
|
Сообщ.
#1
,
|
|
|
Здравствуйте, уважаемые форумчане!!!
Сделал прогу, которая рисует кубический сплайн. Столкнулся с тем, что кубический сплайн очень чувствителен к направлению построения по оси Х (либо по возрастанию, либо по убыванию абсцисс исходных точек). Если кто знает - подскажите, где искать или как исправить ситуацию, показанную на вложенной картинке. (строго не судите, если задаю глупые вопросы - кубическими сплайнами заинтересовался недавно). Заранее спасибо. Прикреплённая картинка
|
Сообщ.
#2
,
|
|
|
У тебя в точке 1 неправильно задана производная.
|
Сообщ.
#3
,
|
|
|
Как задаётся сплайн? Для таких кривых должен - параметрически X(t) и Y(t), а не как Y(X)
|
Сообщ.
#4
,
|
|
|
MBo Сплайн задается именно Y(X). А что значит параметрически X(t) и Y(t)? Если не трудно, опишите в двух словах...
|
Сообщ.
#5
,
|
|
|
Цитата My4a4os @ Сплайн задается именно Y(X) Показанный сплайн НЕ МОЖЕТ БЫТЬ Y(X) - есть X, которым соответствует 2 разных Y на одном участке (как раз тот,Ю который "как хочется"). |
Сообщ.
#6
,
|
|
|
Функциональная форма Y(X) применяется только к однозначным функциям.
В данном случае нужны две зависимости как для Y, так и для X от третьего параметра t. Пример - окружность - X=R*Cos(t), Y=R*Sin(t) Как выбирать параметризацию в случае абстрактной кривой - отдельная наука. В качестве первого приближения - номер точки, или длина ломаной линии между точками. |
Сообщ.
#7
,
|
|
|
MBoСпасибо. Попробую реализовать.
|
Сообщ.
#8
,
|
|
|
Цитата My4a4os @ Попробую реализовать. Нужен сплайн, проходящий через заданные точки? Вот реализация на VB6 с исходником, может поможет: Прикреплённый файлSpline.zip (6,25 Кбайт, скачиваний: 239) |
Сообщ.
#9
,
|
|
|
MikleСпасибо! Уже изучаю(перевожу на си).
|