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

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

алгоритм отрисовки кривой по массиву точек [D5, D6]


murad ©   (2002-08-21 19:44:00) 

Добрый день.
Нет ли у кого алгоритма отрисовки кривой по массиву точек
PolyLine - не подходит т.к. это ломанная, а не кривая.
PolyBezier - не подходит т.к. нужны опорные точки.
Заранее спасибо.


Jeer   (2002-08-21 23:01:00) [1]

Достаточно плавно и просто получается так.
1. Берем три первые точки и строим интерполирующий трехчлен.
2. Рисуется кривая между 1-ой и 2-ой точками.
3. Сдвигаемся на одну точку и пвт с п.1

Этот способ применялся при ручной отрисовке с помощью лекал.

Для построения трехчлена можно использовать оптимальную интерполяцию (пр равномерном шаге).
y=sum(Ai*Xi)
k=t/T
A1 = -0.5*k*(1-k)
A2 = 1 - k^2 = (1+k)*(1-k)
A3 = 0.5*k*(1+k)

T - шаг
tmax = +/-(T/2) смещение от центра между точками


BOA_KAA   (2002-08-21 21:16:00) [2]

Любопытный глюк... Меня в ответах не видно... :-(((


BOA_KAA   (2002-08-21 21:14:00) [3]

Вообще-то это спрайты. То есть тебе прямая дорога в математику:-)))
Если порыскаю - то у меня куча ссылок на эту тему была... Но это уже завтра:-))


Наверх

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