Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Компоненты и классы
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 01.05.2008, 17:34
Спаплюжений Спаплюжений вне форума
Прохожий
 
Регистрация: 01.05.2008
Сообщения: 4
Репутация: 10
По умолчанию Определен класс, описывающий овал.

Прошу помочь, как описываеться овал.
Ответить с цитированием
  #2  
Старый 01.05.2008, 18:22
Ozerich Ozerich вне форума
Новичок
 
Регистрация: 11.04.2008
Адрес: В городе-герой Минск
Сообщения: 69
Репутация: 10
По умолчанию

canvas.Ellipse
Ответить с цитированием
  #3  
Старый 01.05.2008, 23:14
Спаплюжений Спаплюжений вне форума
Прохожий
 
Регистрация: 01.05.2008
Сообщения: 4
Репутация: 10
По умолчанию

типа два эллипса нужно сделать?
Ответить с цитированием
  #4  
Старый 02.05.2008, 18:07
Ozerich Ozerich вне форума
Новичок
 
Регистрация: 11.04.2008
Адрес: В городе-герой Минск
Сообщения: 69
Репутация: 10
По умолчанию

Нарисуй мне еллипс
Ответить с цитированием
  #5  
Старый 02.05.2008, 22:26
Спаплюжений Спаплюжений вне форума
Прохожий
 
Регистрация: 01.05.2008
Сообщения: 4
Репутация: 10
По умолчанию

вот текст, здесь рисуеться три ромба, подскажите как нарисовать овал.

Код:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
var
  Form1: TForm1;
  fi:array [0..2] of TMyClass;
implementation
 
{$R *.dfm}
 
constructor  TMyClass.Create(img:TImage);
begin
 
m_a:=50;
m_alpha:=60;
m_beta:=30;
m_image:=img;
m_color:=clBlack;
m_image.Canvas.Brush.Color:=m_color;
 
end;
 
function TMyClass.GetBgColor:TColor;
begin
result:=m_color;
end;
 
procedure TMyClass.SetBgColor(color:TColor);
begin
m_color:=color;
//m_image.Canvas.Brush.Color:=m_color;
end;
 
procedure
var
pts: array[1..4] of TPoint;
begin
 
with m_image.Canvas do
     begin
        Brush.Color:=m_color;
        pts[1].X:=m_pos.X + trunc(m_a*cos(m_alpha*Pi/360)*cos(m_beta*Pi/180)+0.5);
        pts[1].Y:=m_image.Height - (m_pos.Y+trunc(m_a*cos(m_alpha*Pi/360)*sin(m_beta*Pi/180)+0.5));
        pts[2].X:=m_pos.X - trunc(m_a*sin(m_alpha*Pi/360)*cos((90-m_beta)*Pi/180)+0.5);
        pts[2].Y:=m_image.Height - (m_pos.Y+trunc(m_a*sin(m_alpha*Pi/360)*sin((90-m_beta)*Pi/180)+0.5));
        pts[3].X:=m_pos.X-trunc(m_a*cos(m_alpha*Pi/360)*cos(m_beta*Pi/180)+0.5);
        pts[3].Y:=m_image.Height - (m_pos.Y-trunc(m_a*cos(m_alpha*Pi/360)*sin(m_beta*Pi/180)+0.5));
        pts[4].X:=m_pos.X + trunc(m_a*sin(m_alpha*Pi/360)*cos((90-m_beta)*Pi/180)+0.5);
        pts[4].Y:=m_image.Height - (m_pos.Y-trunc(m_a*sin(m_alpha*Pi/360)*sin((90-m_beta)*Pi/180)+0.5));
        Polygon(pts);
     end;
end;
 
procedure TMyClass.SetAB(A,Alpha,Beta:integer);
begin
m_a:=A;
m_alpha:=Alpha;
m_beta:=Beta;
end;
 
procedure TMyClass.GetAB(var A,Alpha,Beta:integer);
begin
a:=m_A;
Alpha:=m_Alpha;
Beta:=m_beta;
end;
 
function TMyClass.GetPos:TPoint;
begin
result:=m_pos;
end;
 
procedure TMyClass.SetPos(pos:TPoint);
begin
m_pos:=pos;
end;
 
procedure TForm1.FormCreate(Sender: TObject);
var
a,alpha,beta,i:integer;
pos:TPoint;
begin
randomize;
for i:=0 to 2 do
begin
fi[i]:=TMyClass.Create(Image1);
pos.X:=100+75*i;
pos.Y:=50*i+100;
fi[i].SetPos(pos);
fi[i].SetBgColor(RGB(random(255),random(255),random(255)));
fi[i].drow;
end;
fi[0].GetAB(a,alpha,beta);
pos:= fi[0].GetPos;
LabeledEdit1.Text:=inttostr(A);
LabeledEdit2.Text:=inttostr(Alpha);
LabeledEdit3.Text:=inttostr(Beta);
LabeledEdit5.Text:=inttostr(Pos.X);
LabeledEdit6.Text:=inttostr(Pos.Y);
Edit1.TExt:=ColorToString(fi[0].GetBgColor);
end;
 
procedure TForm1.Button2Click(Sender: TObject);
var a,alpha,beta,i:integer;
tmp:TPoint;
begin
A:=StrToInt(LabeledEdit1.Text);
Alpha:=StrToInt(LabeledEdit2.Text);
Beta:=StrToInt(LabeledEdit3.Text);
if(Alpha < 0) then
  Alpha:=0;
if(Beta < 0) then
  Beta:=0;
fi[RadioGroup1.ItemIndex].SetAB(A,ALPHA,Beta);
tmp.x:=StrToInt(LabeledEdit5.Text);
tmp.Y:=StrToInt(LabeledEdit6.Text);
fi[RadioGroup1.ItemIndex].SetPos(tmp);
fi[RadioGroup1.ItemIndex].SetBgColor(StrToInt(Edit1.TExt));
Image1.Canvas.Brush.Color:=clWhite;
Image1.Canvas.Rectangle(-1,-1,Image1.Width+1,Image1.Height+1);
for i:=0 to 2 do
  fi[i].drow;
end;
 
procedure TForm1.RadioGroup1Click(Sender: TObject);
var a,alpha,beta:integer;
begin
fi[RadioGroup1.ItemIndex].GetAB(a,alpha,beta);
LabeledEdit1.Text:=inttostr(A);
LabeledEdit2.Text:=inttostr(Alpha);
LabeledEdit3.Text:=inttostr(Beta);
LabeledEdit5.Text:=inttostr(fi[RadioGroup1.ItemIndex].GetPos.X);
LabeledEdit6.Text:=inttostr(fi[RadioGroup1.ItemIndex].GetPos.Y);
Edit1.TExt:=ColorToString(fi[RadioGroup1.ItemIndex].GetBgColor);
end;
 
end.

Admin: Читаем правила форума и учимся правильно оформлять код.

Последний раз редактировалось Admin, 03.05.2008 в 12:44.
Ответить с цитированием
  #6  
Старый 02.05.2008, 22:54
Ozerich Ozerich вне форума
Новичок
 
Регистрация: 11.04.2008
Адрес: В городе-герой Минск
Сообщения: 69
Репутация: 10
По умолчанию

Я думаю тебя наругают что не умеешь пользоваться тегами
Ответить с цитированием
  #7  
Старый 03.05.2008, 22:46
Спаплюжений Спаплюжений вне форума
Прохожий
 
Регистрация: 01.05.2008
Сообщения: 4
Репутация: 10
По умолчанию

Пршу прощения. Больше такое не повторится.
А по теме вопроса какие нибудь подсказки будут
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 03:32.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025