Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курсовая работа / курсова ТПСПП_11111111111.doc
Скачиваний:
1
Добавлен:
30.05.2020
Размер:
1.37 Mб
Скачать

6.1 Код програми

unit Unit1;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls, Spin, Buttons, ExtCtrls, ComCtrls;

type

TForm1 = class(TForm)

PageControl1: TPageControl;

TabSheet3: TTabSheet;

TabSheet4: TTabSheet;

Panel6: TPanel;

Panel5: TPanel;

SpeedButton3: TSpeedButton;

Label8: TLabel;

SpinEdit6: TSpinEdit;

Label6: TLabel;

Label7: TLabel;

Label9: TLabel;

Label1: TLabel;

Image1: TImage;

procedure SpeedButton3Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

var

Form1: TForm1;

rnd,x1,x2,x3,y1,y2,y3,FinalAge:integer;

c:char;

ot:string;

cc,AngleR,AngleL,StartAngle,ConCoef:Real;

implementation

{$R *.dfm}

procedure Line(x1,y1,x2,y2:real; C:TCanvas);

begin

c.Moveto(round(x1),round(y1));

c.lineto(round(x2),round(y2));

end;

Procedure DrawDragon(age:integer;x1,y1,x2,y2:real;n:real);

var

dx,dy,AC,CD,AD,cx,cy:real;

begin

inc(age);

if Age=FinalAge then

begin

line(x1,y1,x2,y2, form1.image1.canvas);

end

else

begin

cx:=(x2+x1)/2;

cy:=(y2+y1)/2;

AC:=sqrt(sqr(cx-x1)+sqr(cy-y1));

dx:=cx + AC * (cos(n+pi/2));

dy:=cy + AC * (sin(n+pi/2));

drawdragon(age,x1,y1,dx,dy,n+45*cc);

drawdragon(age,x2,y2,dx,dy,n+90*cc+45*cc);

end;end;

procedure TForm1.SpeedButton3Click(Sender: TObject);

begin

x1:=145;

y1:=160;

x2:=560;

y2:=160;

CC:=(pi/180);

FinalAge:=spinedit6.Value;

image1.Canvas.Brush.Color:=clWhite;

image1.Canvas.rectangle(0,0,image1.Width,image1.Height);

DrawDragon(0,x1,y1,x2,y2,0);

end;

end.

6.2 Приклад роботи програми

7 Висновок:

Виконуючі роботу я засвоїв основні навички у роботі з різними компонентами візуального програмування. Використовуючи закріплені навички роботи з візуальними і не візуальними компонентами створив програму яка малює «Драконову криву». В ході виконання програми виникали деякі проблеми, які були пов’язані з різноманітними помилками в програмі.

8 Література:

  1. Морозов А.Д. Введение в теорию фракталов - Москва-Ижевск: Институт компьютерных исследований, 2002. (стр.54-58)

  2. Ватолин Д.С."Использование ДКП для ускорения фрактального сжатия изображений", Программирование, Номер 3, 1999, стр. 51-57

  3. Бобровский С. Delphi 5 – М.: Питер, 2002

  4. Коцюбинский А.О., Грошев С.В. Язык программирования Delphi 5 – М.: «Издательство Триумф», 1999.

  5. Т.А. Ильина. Программирование на Delphi 6 – М.: Питер, 2000.

  6. Ч. Куписевич. Программирования на Delphi. – М: Киев, 1986

  7. Кроновер Р.М. Фракталы и хаос в динамических системах. Основы теории. Москва: Постмаркет, 2000.

Тема: ”Створення програм у візуальному середовищі Delphi.”

Мета: ”Навчитися створювати програми в візуальному середовищі Delphi.”

Завдання: «Фрактали.Драконова крива».

Соседние файлы в папке Курсовая работа