MODUL Tugas bentuk 2 dimensi

  

MODUL I

MEMBUAT SATU BENTUK PERSEGI INTERAKTIF

DAN ANIMASI MEMBESAR DAN KECIL DENGAN

KENDALI BUTTON

  1. Mampu membuat bentuk persegi dengan pixel terhadap sistem koordinat

  2. Membuat Animasi Bentuk dengan timer

  3. Membuat animasi perubahan bentuk membesar dan mengecil

  Tujuan Praktikum : Praktikum unfte Unfte1; fnterr acr usrs Wfndows, Mrssagrs, SysUtefls, Varfantes, Classrs, Graphfcs, Conterols, Forms, Dfalogs, StedCterls, ExteCterls, Buteteons; teypr TForm1 = class(TForm) Tfmrr1: TTfmrr; Buteteon1: TButeteon; Buteteon2: TButeteon; procrdurr Buteteon1Clfck(Srndrr: TObjrcte); procrdurr Buteteon2Clfck(Srndrr: TObjrcte); procrdurr Tfmrr1Tfmrr(Srndrr: TObjrcte); procrdurr FormCrrater(Srndrr: TObjrcte); procrdurr FormMousrDown(Srndrr: TObjrcte; Buteteon: TMousrButeteon; Shf te: TShf teSteater; X, Y: Intergrr); procrdurr FormMousrMovr(Srndrr: TObjrcte; Shf te: TShf teSteater; X, Y: Intergrr); procrdurr FormMousrUp(Srndrr: TObjrcte; Buteteon: TMousrButeteon; Shf te: TShf teSteater; X, Y: Intergrr); prfvater { Prfvater drclaratefons } publfc { Publfc drclaratefons } rnd; var Form1: TForm1; al , { Suduteputear } sf,co, { Sfnus dan Kosfnus } m , { acteor Skala } x0,y0: sfnglr; { Basfs koordfnate absolute } s : fntergrr; { acteor Crrmfnan } dfrFlg : boolran; { flag arah } var x1,y1,x2,y2 :Intergrr; mausTaster :Boolran; fmplrmrnteatefon {$R *.d m} procrdurr dwl (dx1,dy1 : sfnglr); { gambar garfs rrlatef } var x1,y1 : sfnglr; brgfn dx1 := m * dx1; dy1 := m * dy1; x1 := x0 + dx1 * co - s * dy1 * sf; orm1.canvas.Lfnrteo(round(x1),roun d(y1));

  End; procrdurr dwp (dx1,dy1:sfnglr); { gambar teftefk rrlatef } var x1,y1 : sfnglr; brgfn dx1 := m * dx1; dy1 := m * dy1; x1 := x0 + dx1 * co - s * dy1 * sf; y1 := y0 - s * dy1 * co - dx1 * sf; orm1.canvas.movrteo(round(x1),rou nd(y1)); End; procrdurr drawHousr; brgfn dwp(6, 0); { Buate prrsrgf } dwl(6, 8); dwl(9, 8); dwl(9, 0); dwl(6, 0); End; procrdurr TForm1.Buteteon1Clfck(Srndrr: TObjrcte); brgfn { zoom oute } m := m + 1;{ fnterraktef -1 } rnd; procrdurr TForm1.Buteteon2Clfck(Srndrr: TObjrcte); brgfn { zoom fn } m := m - 1; { fnterraktef -1 } rnd; procrdurr TForm1.Tfmrr1Tfmrr(Srndrr: TObjrcte); brgfn orm1.rr rrsh; I dfrFlg Thrn al := al + Pf / 10 { putearan srarah jarum jam } Elsr al := al - Pf / 10; { putearan mrlawan jarum jam } sf := Sfn(al ); co := Cos(al ); drawHousr; rnd; procrdurr TForm1.FormCrrater(Srndrr: TObjrcte); brgfn y0 := clfrnteHrfghte / 2; al := 0; s := 1; m := 20; canvas.brush.steylr:= bsclrar; brgfn mausTaster := Falsr; Canvas.Prn.Modr := pmNoteXor; Canvas.Prn.Steylr := psdash; rnd; rnd; procrdurr TForm1.FormMousrDown(Srndrr: TObjrcte; Buteteon: TMousrButeteon; Shf te: TShf teSteater; X, Y: Intergrr); var x1,y1,x2,y2 :Intergrr; mausTaster :Boolran; brgfn Canvas.Brush.Steylr:=bsClrar; x1 := x; y1 := y; x2 := x; y2 := y; Canvas.Rrcteanglr (x1, y1,x2, y2); mausTaster := Trur rnd; procrdurr TForm1.FormMousrMovr(Srndrr: TObjrcte; Shf te: TShf teSteater; X, Y: Intergrr); brgfn f note mausTaster tehrn rxfte; Canvas.Rrcteanglr (x1, y1,x2, y2); x2 := x; y2 := y; Canvas.Rrcteanglr (x1, y1,x2, y2) rnd; procrdurr TForm1.FormMousrUp(Srndrr: TObjrcte; Buteteon: TMousrButeteon; Shf te: TShf teSteater; X, Y: Intergrr); brgfn mausTaster := Falsr; rnd; rnd.

  Tugas Laporan Praktikum 1. Rubah bentuk persegi panjang tsb ke bentuk bujur sangkar.

  2. Rubah bentuk persegi panjang tsb ke bentuk segi tiga sama kaki

  

MODUL II

MEMBUAT DUA BENTUK PERSEGI INTERAKTIF

DAN ANIMASI MEMBESAR DAN KECIL SECARA

BERSAMAAN DENGAN KENDALI BUTTON

Tujuan Praktikum :

  1. Mampu membuat dua bentuk persegi dengan pixel terhadap sistem koordinat

  2. Membuat Animasi dua Bentuk secara bersamaan dengan satu timer

  3. Membuat animasi 2 objek perubahan bentuk membesar dan mengecil bersamaan

Praktikum

  Program sama dengan modul I, Perbedaan nya di prosedur drawHouse sbb: procedure drawHouse; begin dwp(6, 0); { Buat persegi panjang} dwl(6, 8); dwl(9, 8); dwl(9, 0); dwl(6, 0); dwp(0, 10); { Dengan posisi persegi panjang } dwl(10, 10); dwl(10, 0); dwl(0, 0); dwl(0, 10); { di dalam bujur sangkar } End;

  1. Program di atas merupakan program persegi panjang di dalam bujur sangkar dengan letak merapat ke sisi. Rubah program tersebut dengan tidak merapat, dengan posisi persegi panjang yg didalamnya di tengah

  2. Rubah program tsb ke bentuk segi tiga di dalam segi tiga

  

MODUL III

MEMBUAT TIGA BENTUK PERSEGI INTERAKTIF

DAN ANIMASI MEMBESAR DAN KECIL SECARA

BERSAMAAN DENGAN KENDALI BUTTON

Tujuan Praktikum :

  1. Mampu membuat tiga bentuk persegi dengan pixel terhadap sistem koordinat

  2. Membuat Animasi tiga Bentuk secara bersamaan dengan satu timer

  3. Membuat animasi 3 objek perubahan bentuk membesar dan mengecil bersamaan

Praktikum

  Program sama dengan modul I, Perbedaan nya di prosedur drawHouse sbb: procedure drawHouse; begin dwp(6, 0); { Buat persegi panjang, pintu } dwl(6, 8); dwl(9, 8); dwl(9, 0); dwl(6, 0); dwp(0, 10); { Bujur sangkar, sisi rumah } dwl(10, 10); dwl(10, 0); dwl(0, 0); dwl(0, 10); dwp(1, 8); { Persegi panjang, jendela } dwl(4, 8); dwl(4, 4); dwl(1, 4); dwl(1, 8); End;

Tugas Laporan Praktikum

  1. Program di atas merupakan program persegi panjang jendela di dalam bujur sangkar dengan letak tdk merapat. Rubah program tersebut dengan merapat

  

MODUL IV

MEMBUAT SATU OBJEK DILUAR BENTUK YANG

SUDAH ADA INTERAKTIF DAN ANIMASI

MEMBESAR DAN KECIL SECARA BERSAMAAN

DENGAN KENDALI BUTTON

Tujuan Praktikum :

  Mampu membuat tambahan satu objek dengan posisi diluar bentuk yang sudah ada

Praktikum

  Program sama dengan modul I, Perbedaan nya di prosedur drawHouse sbb: procedure drawHouse; begin dwp(6, 0); { Buat persegi panjang, pintu } dwl(6, 8); dwl(9, 8); dwl(9, 0); dwl(6, 0); dwp(0, 10); { Bujur sangkar, sisi rumah } dwl(10, 10); dwl(10, 0); dwl(0, 0); dwl(0, 10); dwp(1, 8); { Persegi panjang, jendela } dwl(4, 8); dwl(4, 4); dwl(1, 4); dwl(1, 8); dwp(-1, 9); { Atap } dwl(5, 15); dwl(11, 9); End;

  Tugas Laporan Praktikum Rubah atap segitiga simetris tsb menjadi tidak simetris.

  

MODUL V

MEMBUAT LINGKARAN DIDALAM OBJEK DILUAR

BENTUK YANG SUDAH ADA INTERAKTIF DAN

ANIMASI MEMBESAR & KECIL SECARA BERSAMAAN

DENGAN KENDALI BUTTON

Tujuan Praktikum :

  Membuat lingkaran didalam objek tambahan pd bentuk yang sudah ada

Praktikum

  Program sama dengan modul I, Perbedaan nya ada tambahan di prosedur dwc dan drawHouse sbb: procedure dwc (dx1,dy1,R : single); { gambar lingkaran } var x1,y1 : single; begin dx1 := mf * dx1; dy1 := mf * dy1; R := mf * R; x1 := x0 + dx1 * co - sf * dy1 * si; y1 := y0 - sf * dy1 * co - dx1 * si; form1.canvas.ellipse(round(x1-r),round(y1-r),round(x1+r),round(y1+r)); End; procedure drawHouse; begin dwp(6, 0); { Buat persegi panjang, pintu } dwl(6, 8); dwl(9, 8); dwl(9, 0); dwl(6, 0); dwp(0, 10); { Bujur sangkar, sisi rumah } dwp(1, 8); { Persegi panjang, jendela } dwl(4, 8); dwl(4, 4); dwl(1, 4); dwl(1, 8); dwp(-1, 9); { Atap } dwl(5, 15); dwl(11, 9); dwc(5, 12, 1); { fentilasi } End;

Tugas Laporan Praktikum

  Rubah lingkaran tsb ke bentuk gabungan elipps vertikal dan horisontal

  

MODUL VI

MEMBUAT OBJEK LAIN DILUAR BENTUK YANG SUDAH

ADA INTERAKTIF DAN ANIMASI

Tujuan Praktikum :

  Membuat tambahan pd bentuk yang sudah ada

Praktikum

  Program sama dengan modul V, Perbedaannya ada tambahan drawHouse sbb: dwp(7, 13); { pondasi Antena } dwl(7, 16); dwl(9, 16); dwl(9, 11); End;

  Tugas Laporan Praktikum

  Rubah pondasi antena ke bentuk bujur sangkar dan segi tiga

  

MODUL VII

MEMBUAT ANIMASI INTERAKTIF BERBALIK ARAH

o

Tujuan Praktikum :

  o

  Membuat animasi interaktifberbalik arah dan rotasi 180

Praktikum

  Program sama dengan modul VI, Perbedaannya ada tambahan 2 prosedur sbb: procedure TForm1.Button3Click(Sender: TObject); { Berbalik arah } begin dirFlg := Not dirFlg; end;

  o

  procedure TForm1.Button4Click(Sender: TObject); { Rotasi 180 } begin sf := -sf; end;

Tugas Laporan Praktikum

  1. Modifikasi gambar, Lakukan tambahan objek lain pada rumah tsb

  2. Buat animasi dgn timer berbeda pada gambar jendela rumah

  

MODUL VIII

MENGGERAKAN OBJEK ANIMASI

Tujuan Praktikum :

  Memindahkan posisi pada objek animasi aktif

Praktikum Program Utama

  program Project1; uses Forms, Unit1 in 'Unit1.pas' {Form1}; {$R *.res} begin Application.Initialize; Application.CreateForm(TForm1, Form1); Application.Run; end.

Unit Program

  unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, type TForm1 = class(TForm) Timer1: TTimer; Button1: TButton; Button2: TButton; Button3: TButton; Button4: TButton; Button5: TButton; Button6: TButton; Button7: TButton; Button8: TButton; Panel1: TPanel; BitBtn2: TBitBtn; BitBtn3: TBitBtn; BitBtn4: TBitBtn; BitBtn5: TBitBtn; Label1: TLabel; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure Button3Click(Sender: TObject); procedure Button4Click(Sender: TObject); procedure Timer1Timer(Sender: TObject); procedure FormCreate(Sender: TObject); procedure Button9Click(Sender: TObject); procedure Button5Click(Sender: TObject); procedure Button6Click(Sender: TObject); procedure Button7Click(Sender: TObject); procedure Button8Click(Sender: TObject); procedure FormMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); procedure FormMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); procedure FormMouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); procedure BitBtn1Click(Sender: TObject); procedure BitBtn2Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; alf, { Sudutputar } si,co, { Sinus dan Kosinus } mf, { factor Skala } x0,y0: single; { Basis koordinat absolut } sf : integer;{ factor Cerminan } dirFlg : boolean; { flag arah } var x1,y1,x2,y2 :Integer; mausTaste :Boolean; implementation {$R *.dfm} procedure dwc (dx1,dy1,R : single); { gambar lingkaran relatif } var x1,y1 : single; begin dx1 := mf * dx1; dy1 := mf * dy1; R := mf * R; x1 := x0 + dx1 * co - sf * dy1 * si; y1 := y0 - sf * dy1 * co - dx1 * si; form1.canvas.ellipse(round(x1-r),round(y1-r),round(x1+r),round(y1+r)); End; procedure dwl (dx1,dy1 : single); { gambar garis relatif } var x1,y1 : single; begin

dx1 := mf * dx1; dy1 := mf * dy1; x1 := x0 + dx1 * co - sf * dy1 * si; y1 := y0 - sf * dy1 * co - dx1 * si; form1.canvas.Lineto(round(x1),round(y1)); End; procedure dwp (dx1,dy1:single); { gambar titik relatif } var x1,y1 : single; begin dx1 := mf * dx1; dy1 := mf * dy1; x1 := x0 + dx1 * co - sf * dy1 * si; y1 := y0 - sf * dy1 * co - dx1 * si; form1.canvas.moveto(round(x1),round(y1)); End; procedure drawHouse; { gambar rumah } begin dwp(0, 10); { sisi depan } dwl(10, 10); dwl(10, 0); dwl(0, 0); dwl(0, 10); dwp(1, 8); { jendela } dwl(4, 8); dwl(4, 4); dwl(1, 4); dwl(1, 8); dwp(6, 0); { Pintu } dwl(6, 8); dwl(9, 8); dwl(9, 0); dwl(6, 0); dwp(-1, 9); { Atap } dwl(5, 15); dwl(11, 9); dwc(5, 12, 1); { fentilasi } dwp(7, 13); { pondasi Antena } dwl(7, 16); dwl(9, 16); dwl(9, 11); End; procedure TForm1.Button1Click(Sender: TObject); begin mf := mf + 1; end; procedure TForm1.Button2Click(Sender: TObject); begin mf := mf - 1; end; procedure TForm1.Button3Click(Sender: TObject); begin dirFlg := Not dirFlg; end; procedure TForm1.Button4Click(Sender: TObject); begin sf := -sf; end; procedure TForm1.Timer1Timer(Sender: TObject); begin form1.refresh; If dirFlg Then alf := alf + Pi / 10 { putaran sesuai dengan arah jarum jam } Else alf := alf - Pi / 10; { putaran melawan arah jarum jam } si := Sin(alf); co := Cos(alf); drawHouse; end; procedure TForm1.FormCreate(Sender: TObject); begin x0 := clientWidth / 2; y0 := clientHeight / 2; alf := 0; sf := 1; mf := 20;

canvas.brush.style:= bsclear; begin mausTaste := False; Canvas.Pen.Mode := pmNotXor; Canvas.Pen.Style := psdash; end; end; procedure TForm1.Button9Click(Sender: TObject); begin close; end; procedure TForm1.Button5Click(Sender: TObject); begin y0:=y0-5; end; procedure TForm1.Button6Click(Sender: TObject); begin x0:=x0-5; end; procedure TForm1.Button7Click(Sender: TObject); begin x0:=x0+5; end; procedure TForm1.Button8Click(Sender: TObject); begin y0:=y0+5; end; procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); var x1,y1,x2,y2 :Integer; mausTaste :Boolean; begin Canvas.Brush.Style:=bsClear; x1 := x; y1 := y; x2 := x; y2 := y; Canvas.Rectangle (x1, y1,x2, y2); mausTaste := True end; procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); begin Panel1.Caption := IntToStr(x)+ ':' + IntToStr(y); if not mausTaste then exit; Canvas.Rectangle (x1, y1,x2, y2); x2 := x; y2 := y; Canvas.Rectangle (x1, y1,x2, y2) end; procedure TForm1.FormMouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin mausTaste := False; end; procedure TForm1.BitBtn1Click(Sender: TObject); begin x0:=x0+5; end; procedure TForm1.BitBtn2Click(Sender: TObject);

begin close; end; end.

  Tugas Laporan Praktikum

  Rubah rumah tsb dari bentuk 2 dimensi menjadi 3 dimensi

Dokumen yang terkait

Penerapan model pembelajaran berbasis masalah dan model pembelajaran inkuiri terbimbing pada materi pokok tekanan kelas VIII semester II MTsN 2 Palangka Raya tahun ajaran 2014/2015 - Digital Library IAIN Palangka Raya

0 0 29

Penerapan model pembelajaran berbasis masalah dan model pembelajaran inkuiri terbimbing pada materi pokok tekanan kelas VIII semester II MTsN 2 Palangka Raya tahun ajaran 2014/2015 - Digital Library IAIN Palangka Raya

1 1 21

Penerapan model pembelajaran berbasis masalah dan model pembelajaran inkuiri terbimbing pada materi pokok tekanan kelas VIII semester II MTsN 2 Palangka Raya tahun ajaran 2014/2015 - Digital Library IAIN Palangka Raya

0 1 48

The correlation between students’ students’ mastery of simple past tense and their ability in writing anecdote at the eighth grade of MTs N 2 Palangka Raya - Digital Library IAIN Palangka Raya

0 0 19

A. Background of the Study - The correlation between students’ students’ mastery of simple past tense and their ability in writing anecdote at the eighth grade of MTs N 2 Palangka Raya - Digital Library IAIN Palangka Raya

0 0 8

A. Review of the Previous Study - The correlation between students’ students’ mastery of simple past tense and their ability in writing anecdote at the eighth grade of MTs N 2 Palangka Raya - Digital Library IAIN Palangka Raya

0 0 12

The correlation between students’ students’ mastery of simple past tense and their ability in writing anecdote at the eighth grade of MTs N 2 Palangka Raya - Digital Library IAIN Palangka Raya

0 0 16

A. Description of the Data - The correlation between students’ students’ mastery of simple past tense and their ability in writing anecdote at the eighth grade of MTs N 2 Palangka Raya - Digital Library IAIN Palangka Raya

0 0 25

EFEKTIVITAS REMEDIAL PADA MATA PELAJARAN PENDIDIKAN AGAMA ISLAM PADA KELAS III DI SDN 2 PAHANDUT PALANGKA RAYA SKRIPSI

0 0 99

BAB I PENDAHULUAN A. Latar Belakang - Mengembangkan kognitif dengan pembelajaran kooperatif tipe jigsaw materi iman kepada hari akhir di SMPN Satu Atap 2 Kamipang Kabupaten Katingan - Digital Library IAIN Palangka Raya

0 0 97