Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 15.05.2010, 00:46   #1
Yuko
Новичок
Джуниор
 
Регистрация: 26.09.2009
Сообщений: 2
По умолчанию графика Delphi(звезда Давида)

Доброе время суток тем, кто просматривает эту тему. Вот хотелось бы попросить помочь с программкой, вопшем суть заключаеца в том что, необходимо напиать программу, выводящую звезду Давида по концам которой пробегают все цвета радуги. Вот есть кусок программы:
procedure TForm1.Image1Click(Sender: TObject);

procedure krug(x,y,a,b:integer; color:Tcolor);
begin
with image1.Canvas do
begin
pen.Width:=3;
ellipse(x,y,a,b);
brush.Color:=color;
Floodfill(x+3,y+3,clBlue,fsborder);
end;
end;

begin
with image1.Canvas do
begin
pen.color:=clblue;
Pen.Width:=8;
moveto(70,70);
lineto(170,70);
lineto(120,160);
lineto(70,70);
moveto(120,40);
lineto(170,130);
lineto(70,130);
lineto(120,40);
krug(110,30,130,50,clred);
krug(165,60,185,80,clyellow);
krug(165,120,185,140,cllime);
krug(110,150,130,170,claqua);
krug(60,120,80,140,clnavy);
krug(60,60,80,80,clpurple);

end;

end;



Вообщем, теперь надо, чтобы эти цветные круги пробегали по часовой стрелке...

Заранее спасибо))
Yuko вне форума Ответить с цитированием
Старый 15.05.2010, 08:34   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Код:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls, ExtCtrls;

type
  TForm1 = class(TForm)
    Image1: TImage;
    Timer1: TTimer;
    procedure FormCreate(Sender: TObject);
    procedure krug(x, y, a, b: integer; color: Tcolor);
    procedure DrawAllCircles;
    procedure Timer1Timer(Sender: TObject);
  private
    ColorArray: array[1..6] of TColor;
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.krug(x, y, a, b: integer; color: Tcolor);
begin
  with image1.Canvas do
  begin
    pen.Width := 3;
    brush.Color := color;
    brush.Style := bsSolid;
    ellipse(x, y, a, b);
//    Floodfill(x + 4, y + 4, clBlue, fsborder);
  end;
end;


procedure TForm1.FormCreate(Sender: TObject);
begin
  ColorArray[1] := clred;
  ColorArray[2] := clyellow;
  ColorArray[3] := cllime;
  ColorArray[4] := claqua;
  ColorArray[5] := clnavy;
  ColorArray[6] := clpurple;

  with image1.Canvas do
  begin
    pen.color := clblue;
    Pen.Width := 8;
    moveto(70, 70);
    lineto(170, 70);
    lineto(120, 160);
    lineto(70, 70);
    moveto(120, 40);
    lineto(170, 130);
    lineto(70, 130);
    lineto(120, 40);
  end;

  DrawAllCircles;
end;

procedure TForm1.DrawAllCircles;
begin
  krug(110, 30, 130, 50, ColorArray[1]);
  krug(165, 60, 185, 80, ColorArray[2]);
  krug(165, 120, 185, 140, ColorArray[3]);
  krug(110, 150, 130, 170, ColorArray[4]);
  krug(60, 120, 80, 140, ColorArray[5]);
  krug(60, 60, 80, 80, ColorArray[6]);
end;

procedure TForm1.Timer1Timer(Sender: TObject);
var i, Next : integer;
 tmpColor : TColor;
begin
  // сдвиг массива цветов по часовой стрелке
  TmpColor := ColorArray[6];
  for i:=6 downto 2 do
    ColorArray[i] := ColorArray[i-1];
  ColorArray[1] := TmpColor;
  DrawAllCircles;
end;

end.
Вложения
Тип файла: rar DavidColor.rar (1.8 Кб, 67 просмотров)
Serge_Bliznykov вне форума Ответить с цитированием
Старый 15.05.2010, 12:18   #3
Yuko
Новичок
Джуниор
 
Регистрация: 26.09.2009
Сообщений: 2
По умолчанию

Спасибо,Большое))
Yuko вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Графика в Delphi QuadroX Фриланс 5 13.05.2010 15:06
3D Графика в Delphi QuadroX Фриланс 14 12.05.2010 23:11
Графика в Delphi novi4ok_Delphi Помощь студентам 3 16.03.2010 19:23
[Pascal] крутящаяся звезда Рамик Помощь студентам 2 27.05.2009 17:08