![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
B сплайны [D5, Win2k]
Ahd © (2002-03-14 23:39:00)Программеры!
подскажите алгоритм, я уже всю башку сломал...
Есть куча точек, заранее не извесно сколько, но, среди них нет точек с одинаковыми координатами, т. е. все точки с разными координатами, нужно нарисовать B сплайн, между этими точками, (точки находятся в 3D пространстве)...
Ahd (2002-03-17 00:06:00) [1]Да нет, та прога работает нормально...
Это моя глючит, я в той не разобрался, там слишком сложно написано, а я на Delphi програмирую всего неделю... Я сам формулу вывел, вормула работает, но почему - то хвост за собой оставляет... а к той проге претензий нет, вот только бы разобратся :) ...
Фэ (2002-03-16 22:45:00) [2]Ну а говоля на что ?
Или хочется шоб все самотеком ?
Это не мое, за что купил, за то продал.
Ahd (2002-03-16 22:42:00) [3]Глюки, когда кривая закончена, она почему-то начинает рисовать кривую от последней точки кривой в току экрана (0.0) хотя этого сегмента просто не должно быть, потому, что его нет!!!
JibSkeart (2002-03-15 17:01:00) [4]А вообше про сплайны можно и на сайтах DemoDesign посмотреть
Фэ (2002-03-15 16:40:00) [5]Выложил
ftp://ftp.pi8plus.ru/pub/download/app/win/math/spline/
Ahd (2002-03-15 16:25:00) [6]порядок точек известен, он задеется массивом...
а через 4 точки не полоучается, я пробовал, получается ломаная,
вся проблема в том, что можно написать этот алгоритм для нескольких точек число которых заранее извесно, а вот для неизвесного колличесва точек проблемно, по условию задачи число точек колеблется примерно от 20 - 200, но это не предел, и их может быть больше...
_Mike_ (2002-03-15 13:55:00) [7]TO Фэ:
про порядок точек: признаю свою ошибку, погорячился :-)
Владимир Васильев (2002-03-15 12:50:00) [8]забирай готовое решение (BSplines.zip) с
ftp://vladcommon:vladcommon@194.84.65.217
Прямой ссылки на сайт автора, к сожалению нет,
но внутри есть его E-mail.
Фэ (2002-03-15 11:58:00) [9]_Mike_ © (15.03.02 11:04)
Это - регресионный анализ, т.е. построение регресионной зависимости функции от параметров.
Если задача получить, например Y=A+B*X, то совершенно не важно в каком порядке Вам даны пары Y,X.Задача МНК состоит, вообще-то, в получении наименьшего RSS.
_Mike_ (2002-03-15 11:04:00) [10]В смысле: порядок обхода точек должен быть известен и для МНК
_Mike_ (2002-03-15 11:02:00) [11]TO han_malign:
во-первых, почему "опять"?
во-вторых, я ничего не путаю:
если использовать для МНК 3-го порядка (как это нужно
автору вопроса) 4 точки, то и получите интерполяцию - где
противоречие (в том смысле, что я ничего не путаю, просто недоговорил)?
И таким образом по 4 точки двигаемся до конца (можно брать серединные
отрезки, чтобы поглаже были стыки).
TO Фэ:
порядок обхода точек должен быть известен и для интерполяции,
иначе никак.
Фэ (2002-03-15 10:29:00) [12]Одно уточнение - должен быть известен порядок обхода точек (очередность точек). Если это автору известно - тогда интерполяция.
han_malign (2002-03-15 09:43:00) [13]2 _Mike_- опять вы путаете задачи апроксимации(МНК)и интерполяции (сплайн, Гаус), а вот через параметрическую функцию - грамотно.
Примечание: Насчет МНК - если кривая проходит через все точки(главное условие задачи интерполяции) - СКО=0 всегда!!!
ProgMan (2002-03-15 08:53:00) [14]Попробуй посмотреть здесь:
http://www.srcc.msu.su/num_anal/lib_na/cat/cat914.htm
_Mike_ (2002-03-15 08:42:00) [15]метод наименьших квадратов.
второй курс. аналитическая геометрия.
Вся сложность в том, чтобы догадаться, как его применить. :-)
Вводишь параметр t (типа, шаг) и по методу наименьших квадратов
независимо вычисляешь 3 функции:
x=X(t)
y=Y(t)
z=Z(t)
(t:=0 TO tMax)
Ahd (2002-03-15 03:57:00) [16]Да, забыл сказать, кривая должнабыть 3-го порядка.
Ahd (2002-03-15 01:59:00) [17]Да там не принципиально в 3D или 2D, просто когда добавляется Z, вычисляется еще одна координата, а считается все по одной формуле для X, Y, Z вот эта формула в принципе мне и нужна...
lipskiy (2002-03-15 01:09:00) [18]Ух ты, аж в 3D!
Про 2D я еще могу на работе глянуть, а вот с тридэ сложнее.