Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

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 я еще могу на работе глянуть, а вот с тридэ сложнее.


Наверх

Титульная страница Поиск, карта сайта Написать письмо