Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2007.08.26;
Скачать: [xml.tar.bz2];

Вниз

Кто может объяснить кубические сплайны словами?   Найти похожие ветки 

 
Каникулы   (2007-07-22 02:52) [0]

Вот описание: http://mathworld.wolfram.com/CubicSpline.html
У нас пять точек, мы их плавно соединяем линией.

Кто может объяснить как из конкретных пяти точек вычисляются промежуточные точки, и почему именно так?


 
Однокамушкин   (2007-07-22 07:03) [1]

Всё очень просто: на каждом участке между парой последовательных точек функция задаётся многочленом третьей степени... Если у нас N точек, то таких многочленов будет N-1, в каждом по 4 неизвестных коэффициента, т.е. всего 4*(N-1) неизвестных... Во-первых, записываем условия, что на концах отрезков значения полиномиальных функций должны совпадать с заданными точками - это даёт нам 2*(N-1) уравнений... Потом записываем условия, что во всех точках, где сходятся два полинома, должны совпадать их первая и вторая производные... Таких точек N-2 (исключаются концевые), это даёт нам ещё 2*(N-2) уравнений, т.е. всего их будет 4*(N-1)-2... Оставшиеся два уравнения выбираем из условия, что вторая производная в самой левой и в самой правой точках равна нулю - получаем систему 4*(N-1) линейных уравнений с 4*(N-1) неизвестными, которую надо решить... Матрица этой системы будет трёхдиагональной, т.е. числа, отличные от 0, будут стоять только на главной диагонали и на соседних с ней диагональных линиях... Для таких систем существуют специальные методы решения, которые и дают коэффициенты многочленов


 
Каникулы   (2007-07-23 03:43) [2]


> Однокамушкин   (22.07.07 07:03) [1]


К сожалению, если человеку дали пять точек, то по такому объяснению он не сможет ничего построить.


 
Zeqfreed ©   (2007-07-23 07:22) [3]

Могу только подсказать, как построить кривую Безье по данным точкам.
На википедии все подробно в картинках расписано: http://en.wikipedia.org/wiki/Bézier_curve
У меня ушло где-то 10-15 минут, чтобы вывести через OpenGL кривую через четыре точки :)


 
Каникулы   (2007-07-23 07:46) [4]


> Zeqfreed ©   (23.07.07 07:22) [3]
>
> Могу только подсказать, как построить кривую Безье по данным
> точкам.
> На википедии все подробно в картинках расписано: http://en.
> wikipedia.org/wiki/Bézier_curve


А ты вообще не можешь отличить кубичиские сплайны от сплайнов Безье.
Позор!


 
Однокамушкин   (2007-07-23 08:25) [5]


> Каникулы   (23.07.07 03:43) [2]
> К сожалению, если человеку дали пять точек, то по такому
> объяснению он не сможет ничего построить.

От человека зависит... первый человек, который построил сплайн, вообще не имел даже такого объяснения - и ничего, справился... А вообще, найти информацию по сплайнам через яндекс - делать нечего, остаётся только удивляться, почему вы этого до сих пор не сделали...


 
Каникулы   (2007-08-01 01:20) [6]

Вот видишь объяснение?


> http://en.wikipedia.org/wiki/Bézier_curve


Картинки посмотрел и всё ясно. А ты, если нарисовать не можешь, то и сам не понимаешь того, что объясняешь.


 
Zeqfreed ©   (2007-08-01 01:28) [7]

> Каникулы

Феерически. Пора заканчивать каникулы.


 
Однокамушкин   (2007-08-01 09:02) [8]


> Каникулы   (01.08.07 01:20) [6]
> А ты, если нарисовать не
> можешь, то и сам не понимаешь того, что объясняешь.

Мог бы и нарисовать, просто возиться лень... По крайней мере, когда я сдавал сплайны в институте, у преподов не было сомнений, что я всё понял... А вот у тебя явно не хватило мозгов даже на то, чтобы понять, что сплайны и кривые Безье - это совершенно разные вещи...



Страницы: 1 вся ветка

Форум: "Прочее";
Текущий архив: 2007.08.26;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.053 c
15-1185518158
DevilDevil
2007-07-27 10:35
2007.08.26
Умная литература. Ведение/планирование проекта/подзадачи


2-1185765047
delphino
2007-07-30 07:10
2007.08.26
Работа с программой нескольких пользователей.


2-1186204452
vegarulez
2007-08-04 09:14
2007.08.26
Вопрос про ICQ.


15-1185480586
Knight
2007-07-27 00:09
2007.08.26
Кто-нить может дать советы по настройке...


15-1185897195
Kostafey
2007-07-31 19:53
2007.08.26
Тест





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский