![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() Как сделать чтоб эллипс рисовался по таймеру по определённым координатам которые вычисляются в цикле...вот у меня такая шняга...
Код:
procedure TForm1.Timer2Timer(Sender: TObject); var Vx,Vy,x,y,d,a:real; begin Canvas.Brush.Color:=clblue; Canvas.Pen.Color:=clblack; Vx:=1500; Vy:=1200; x:=11000; y:=0; d:=0.001; a:=-3; repeat Vx:=Vx+a*x; Vy:=Vy+a*y; x:=x+Vx*d; y:=y+Vy*d; xe1:=350+round(x/110); ye1:=250-round(y/0.5); Canvas.MoveTo(xe1,ye1); Canvas.Ellipse(xe1-5,ye1+5,xe1+5,ye1-5); until x>11000;:) lmikle: пользуемся тегами! короче мне надо чтоб не сразу рисовалось а через интервал времени... |
#2
|
|||
|
|||
![]() Тебе надо сделать тка, что по таймеру будет отрисовываться 1 итерация цикла, а все переменные тебе надо определить на уровне класса.
|
#3
|
|||
|
|||
![]() А как это сделать?????
|
#4
|
||||
|
||||
![]() В качестве цикла у тебя бкдет выступать само событие
Код:
Form1.Timer2Timer(Sender: TObject); Код:
Timer2.Enabled := x > 11000; Код:
Vx,Vy,x,y,d,a:real; Код:
procedure TForm1.FormCreate(Sender: TObject); begin Vx:=1500; Vy:=1200; x:=11000; y:=0; d:=0.001; a:=-3; end; Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |