• Tidak ada hasil yang ditemukan

MODUL Tugas bentuk 2 dimensi

N/A
N/A
Protected

Academic year: 2018

Membagikan "MODUL Tugas bentuk 2 dimensi"

Copied!
14
0
0

Teks penuh

(1)

Grafika Interraktef & Anfmasf

Halman 1 darf 14 @2010, Hrndra Gunawan, S.Sf

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 :

(2)

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);

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

procrdurr dwp (dx1,dy1:sfnglr);

{ gambar teftefk rrlatef }

var x1,y1 : sfnglr;

brgfn

srarah jarum jam }

Elsr

al := al - Pf / 10; { putearan

mrlawan jarum jam }

(3)

Grafika Interraktef & Anfmasf

Halman 3 darf 14 @2010, Hrndra Gunawan, S.Sf

y0 := clfrnteHrfghte / 2;

al := 0;

s := 1;

m := 20;

canvas.brush.steylr:= bsclrar;

brgfn

TObjrcte; Buteteon: TMousrButeteon;

Shf te: TShf teSteater; X, Y: Intergrr);

var x1,y1,x2,y2 :Intergrr;

mausTaster :Boolran;

TObjrcte; Shf te: TShf teSteater; X,

Y: Intergrr);

TObjrcte; Buteteon: TMousrButeteon;

Shf te: TShf teSteater; X, Y: Intergrr);

brgfn

mausTaster := Falsr;

rnd;

(4)

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

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

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;

Tugas Laporan Praktikum

Tujuan Praktikum :

(5)

Grafika Interraktef & Anfmasf

Halman 5 darf 14 @2010, Hrndra Gunawan, S.Sf

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

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

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

Tujuan Praktikum :

(6)

1. Program di atas merupakan program persegi panjang jendela di dalam bujur sangkar dengan

letak tdk merapat. Rubah program tersebut dengan merapat

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

MODUL IV

MEMBUAT SATU OBJEK DILUAR BENTUK YANG

SUDAH ADA INTERAKTIF DAN ANIMASI

MEMBESAR DAN KECIL SECARA BERSAMAAN

DENGAN KENDALI BUTTON

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

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

Tujuan Praktikum :

(7)

Grafika Interraktef & Anfmasf

Halman 7 darf 14 @2010, Hrndra Gunawan, S.Sf

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

Membuat lingkaran didalam objek tambahan pd bentuk yang sudah ada

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 } dwl(10, 10); dwl(10, 0); dwl(0, 0); dwl(0, 10);

Tugas Laporan Praktikum

Tujuan Praktikum :

(8)

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;

Rubah lingkaran tsb ke bentuk gabungan elipps vertikal dan horisontal

MODUL VI

MEMBUAT OBJEK LAIN DILUAR BENTUK YANG SUDAH

ADA INTERAKTIF DAN ANIMASI

Membuat tambahan pd bentuk yang sudah ada

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;

Rubah pondasi antena ke bentuk bujur sangkar dan segi tiga

Tugas Laporan Praktikum

Tujuan Praktikum :

Praktikum

(9)

Grafika Interraktef & Anfmasf

Halman 9 darf 14 @2010, Hrndra Gunawan, S.Sf

MODUL VII

MEMBUAT ANIMASI INTERAKTIF BERBALIK ARAH

DAN ROTASI 180

o

Membuat animasi interaktifberbalik arah dan rotasi 180

o

Program sama dengan modul VI, Perbedaannya ada tambahan 2 prosedur sbb:

procedure TForm1.Button3Click(Sender: TObject); { Berbalik arah }

begin

dirFlg := Not dirFlg;

end;

procedure TForm1.Button4Click(Sender: TObject); { Rotasi 180

o

}

begin

sf := -sf;

end;

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

2. Buat animasi dgn timer berbeda pada gambar jendela rumah

Tujuan Praktikum :

Praktikum

(10)

MODUL VIII

MENGGERAKAN OBJEK ANIMASI

Memindahkan posisi pada objek animasi aktif

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, Dialogs, StdCtrls, ExtCtrls, Buttons;

Tujuan Praktikum :

(11)

Grafika Interraktef & Anfmasf

Halman 11 darf 14 @2010, Hrndra Gunawan, S.Sf

type

TForm1 = class(TForm) Timer1: TTimer;

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 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

procedure dwl (dx1,dy1 : single); { gambar garis relatif } var x1,y1 : single;

(12)

dx1 := mf * dx1;

procedure dwp (dx1,dy1:single); { gambar titik relatif } var x1,y1 : single;

begin

procedure drawHouse; { gambar rumah } begin

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 }

(13)

Grafika Interraktef & Anfmasf

Halman 13 darf 14 @2010, Hrndra Gunawan, S.Sf

canvas.brush.style:= bsclear; begin

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;

procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);

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;

(14)

begin close; end; end.

Rubah rumah tsb dari bentuk 2 dimensi menjadi 3 dimensi

Referensi

Dokumen terkait

Sedangkan analisis berdasarkan tabel nilai kisaran klasifikasi tingkatan menurut Arifin S, dkk (2006) belum sesuai dengan kenyataan di lapangan. Adapun lokasi-lokasi

Pokja Pekerjaan Konstruksi Unit Layanan Pengadaan Kabupaten Mamuju Utara akan melaksanakan Pelelangan Umum dengan pascakualifikasi untuk paket pekerjaan konstruksi sebagai

In particular, a 2-vector space is skeletal if the corresponding 2-term chain complex has vanishing differential, and two 2-vector spaces are equivalent if the corresponding 2-term

Berdasarkan berbagai data yang telah di- peroleh dari tindakan yang dilaksanakan pada siklus I, siklus II, dan siklus III, maka dapat disimpulkan bahwa penggunaan metode

Pada penelitian ini dilakukan analisis sinyal menggunakan Discrete Wavelet Transfoerm (DWT) jenis Symlet level 8 dengan filter-filter yang dapat menganalisa sinyal EMG

cukup baik dibandingkan dengan kelembagaan penyuluhan di kabupaten Pelalawan dan kota Pekanbaru; 2). Pelaksanaan fungsi pelayanan dan fungsi pengaturan masih mendominasi sistim

Sebenarnya kerajinan tangan ini hanya mengambil kerangka dari jam dinding yang biasa orang pakai, Cuma hanya mengambil mesin nya dan jarum penunjuk nya.. Kerajinan jam dinding

Dalam hal penjualan batubara dilakukan secara jangka tertentu (term), harga batubara mengacu pada rata-rata 3 (tiga) Harga Patokan Batubara terakhir pada bulan dimana