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

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.009 c
1-76000
ed
2003-02-11 14:06
2003.02.24
Drivecombobox


1-75959
harismatik
2003-02-12 15:14
2003.02.24
Перехват вставки из буфера обмена


6-76075
1g0r
2003-01-03 19:09
2003.02.24
Проблема с UDP обменом (API- NMUDP)


1-75939
Saracin
2003-02-14 14:05
2003.02.24
Как узнать исчезновение popup меню?


3-75747
Andy Eremin
2003-02-07 15:18
2003.02.24
Error creating cursor handle





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский