Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.02.24;
Скачать: CL | DM;

Вниз

алгоритм Безье   Найти похожие ветки 

 
Kolius   (2003-02-14 17:40) [0]

Очень нужен алгоритм Безье построения кривых по "усам"- тот что используется в Иллюстаторе при рисовании пером.
Исходник не обязательно на делфи- можно и на с++
ООООООчень нужно! помогите пожалуйста!


 
MBo ©   (2003-02-14 17:43) [1]

Canvas.PolyBezier не хватит?


 
Kolius   (2003-02-14 18:10) [2]

мне нужен сам код алгоритма- нужно внести в него некоторые изменения
Не знаете где его можно найти?


 
reonid ©   (2003-02-14 18:20) [3]

procedure TGwBezierCurve.BezierValue(i: Integer; t: Double; var AX, AY: Double);
var t_sq,t_cb,r1,r2,r3,r4,
Xi, Yi, Xip1, Yip1, RCXi, RCYi, LCXip1, LCYip1: Double;
ip1: Integer;
begin
ip1 := (i + 1) mod Length;
Xi := X[i];
Yi := Y[i];
RCXi := RightCtrlX[i]; // Правая контрольная точка
RCYi := RightCtrlY[i]; // (то, что ты называешь усами)
Xip1 := X[ip1];
Yip1 := Y[ip1];
LCXip1 := LeftCtrlX[ip1]; // Левая контрольная точка
LCYip1 := LeftCtrlY[ip1]; //

// Сам алгоритм
t_sq := t * t;
t_cb := t * t_sq;

r1 := (1 - 3*t + 3*t_sq - t_cb)* Xi;
r2 := ( 3*t - 6*t_sq + 3*t_cb)*( RCXi + Xi );
r3 := ( 3*t_sq - 3*t_cb)*( LCXip1+ Xip1 );
r4 := ( t_cb)* Xip1;
AX := r1 + r2 + r3 + r4;

r1 := (1 - 3*t + 3*t_sq - t_cb)* Yi;
r2 := ( 3*t - 6*t_sq + 3*t_cb)*( RCYi + Yi );
r3 := ( 3*t_sq - 3*t_cb)*( LCYip1+ Yip1 );
r4 := ( t_cb)* Yip1;
AY := r1 + r2 + r3 + r4;
end;


 
MBo ©   (2003-02-14 18:32) [4]

формула расчета приведена в
http://delphi.mastak.ru/cgi-bin/forum.pl?look=1&id=1045055196&n=7


 
лщднф   (2003-02-14 19:14) [5]

Документацию нашел, вам спасибо. Кому интересно- посмотрите по ссылке:
http://homepages.borland.com/efg2lab/Graphics/Jean-YvesQueinecBezierCurves.htm

очень хорошая документация с примером



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

Текущий архив: 2003.02.24;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.018 c
14-76148
Alex Timchenko
2003-02-07 12:33
2003.02.24
Требуются Delphi-программеры (сорри за оффтопик - очень надо)


1-76027
Дима2003
2003-02-13 14:03
2003.02.24
TreeView1.RightClickSelect


1-76028
AlexanderSK
2003-02-13 15:42
2003.02.24
Создание и удаление формы


14-76126
alexay
2003-02-06 03:30
2003.02.24
Нужна утилита для восстановления баз данных (структуру)


1-75884
Xmen
2003-02-14 06:49
2003.02.24
Помогите! Как определить размер файла?