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

Вниз

Как нарисовать дугу?   Найти похожие ветки 

 
Shaman2002 ©   (2002-11-05 18:41) [0]

Люди подскажите как нарисовать дугу по трем точкам в PaintBox.
Точнее говоря полэлипса под углом к оси ОХ. Известны координаты трех вершин.
Буду очень признателен за помощь.


 
MBo ©   (2002-11-06 06:25) [1]

Дугу окружности по трем точкам нарисовать можно, а вот для эллипса трех точек недостаточно - нужно либо 4 точки, либо еще какой-то параметр эллипса, например, эксцентриситет или (что проще) отношение большой и малой полуосей


 
ZEE ©   (2002-11-06 09:13) [2]

На счет "полэлипса" - не знаю, но вообще кривые (по трем точкам) я рисую так:

var aPts:array[0..4]of TPoint;
...
aPts[0]:=Point(x1,y1);
aPts[1]:=Point(x1,y1);
aPts[2]:=Point(x2,y2);
aPts[3]:=Point(x3,y3);
aPts[4]:=Point(x3,y3);
Image1.Canvas.Brush.Color:=clBlack;
Image1.Canvas.FillRect(Rect(0,0,0,0));
// сам не знаю как эта штука влияет на прорисовку,
// но почему-то без нее не работает
Image1.Canvas.Brush.Style:=bsClear;
PolyBezier(Image1.Canvas.Handle,aPts,4);
...


Может конечно не совсем правильно, но кто умеет лучше - пусть кинет в меня правильным кодом :)



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

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

Наверх




Память: 0.47 MB
Время: 0.017 c
1-45830
xnum
2002-11-05 10:32
2002.11.14
DBGrid ===> clipboard


14-46133
AL2002
2002-10-25 18:21
2002.11.14
Спасибо мастерам Дельфи.


1-45975
Calm
2002-11-04 15:24
2002.11.14
Как определить высоту (height) строки TMemo?


1-45799
lensky
2002-11-03 19:45
2002.11.14
Listview Select All...


3-45707
lejik
2002-10-23 10:39
2002.11.14
Хэндл DataSet