Seperti yang sudah dijelaskan pada pertemuan sebelumnya, kali ini saya akan membuat sebuah rumah dan sebuah gedung rumah sakit menggunakan Strawberry Project.
Kalian dapat mengetikkan sintaks seperti dibawah ini :
Pertama, terlebih dahulu kita membuka aplikasi Strawberry Prolog dengan klik dua kali icon Strawberry Prolog atau dengan klik Start lalu pilih Strawberry Prolog.
Apabila tampilan sudah seperti gambar di atas, maka kita klik file lalu new dan pilih Strawberry Project.
Kalian dapat mengetikkan sintaks seperti dibawah ini :
?-
window(_,_,bangunan(),"Bentuk
Bangunan",0,0,1353,595).
bangunan(paint):-
%%%%%%%%%%%%%%%%%%%%
% %
%
Program Rumah %
% %
%%%%%%%%%%%%%%%%%%%%
%dinding
1
pen(3,rgb(0,0,0)),
brush(rgb(255,149,149)),
rect(166,194,367,440),
%dinding
2
brush(rgb(255,149,149)),
rect(365,194,660,415),
%atap
trapesium
brush(rgb(98,0,0)),
fill_polygon(184,92,144,218,670,218,639,92),
%cerobong
asap
brush(rgb(111,55,0)),
ellipse(540,58,594,70),
rect(544,67,591,155),
%atap
segitiga
pen(15,rgb(0,0,0)),
line(265,65,144,218),
line(265,65,387,219),
pen(3,rgb(255,149,149)),
brush(rgb(255,149,149)),
fill_polygon(145,219,266,66,386,219),
%jendela
lingkaran
brush(rgb(213,255,255)),
pen(3,rgb(0,0,0)),
ellipse(217,120,316,219),
pen(3,rgb(0,0,0)),
line(266,120,266,215),
line(217,170,316,170),
%pintu
pen(3,rgb(0,0,0)),
brush(rgb(120,100,0)),
rect(432,264,517,415),
brush(rgb(213,255,255)),
rect(444,277,506,339),
ellipse(510,360,490,375),
%tangga
brush(rgb(98,0,0)),
rect(424,412,526,432),
rect(415,427,536,448),
%jendela
1
brush(rgb(213,255,255)),
rect(192,244,343,330),
line(200,252,239,252),
line(200,252,200,322),
line(200,322,239,322),
line(239,252,239,322),
line(245,252,291,252),
line(246,322,292,322),
line(292,252,292,321),
line(245,251,245,322),
line(298,252,337,252),
line(298,252,298,322),
line(298,323,337,323),
line(336,322,336,251),
brush(rgb(117,58,0)),
rect(192,330,343,347),
%jendela
2
brush(rgb(213,255,255)),
rect(571,248,633,349),
rect(578,256,626,340),
brush(rgb(117,58,0)),
rect(571,348,633,362),
%%%%%%%%%%%%%%%%%%%%%%
% %
%
Gedung Rumah Sakit %
% %
%%%%%%%%%%%%%%%%%%%%%%
%gedung
utama
brush(rgb(192,192,192)),
rect(985,18,1071,82),
brush(rgb(145,255,145)),
rect(911,68,1143,499),
%jendela
gedung utama
brush(rgb(255,255,135)),
rect(926,108,977,162),
line(950,110,950,160),
line(928,135,975,135),
rect(1003,107,1053,161),
line(1027,110,1027,159),
line(1006,135,1050,135),
rect(1076,107,1126,162),
line(1079,135,1124,135),
line(1101,110,1101,160),
rect(925,205,975,260),
line(950,206,950,258),
line(926,233,971,233),
rect(1000,205,1050,260),
line(1001,232,1048,232),
line(1025,206,1025,258),
rect(1075,205,1125,260),
line(1075,232,1125,232),
line(1100,205,1100,260),
rect(925,308,976,365),
line(925,335,976,335),
line(950,308,950,365),
rect(998,308,1050,365),
line(998,335,1050,335),
line(1023,308,1023,365),
rect(1075,308,1125,365),
line(1075,335,1125,335),
line(1100,308,1100,365),
pen(7,rgb(255,255,255)),
line(910,175,1139,175),
line(910,276,1141,276),
line(910,381,1141,381),
%pintu
brush(rgb(213,213,0)),
rect(987,401,1062,495),
line(1025,406,1025,489),
line(1017,439,1017,456),
line(1033,439,1033,456),
pen(0,rgb(192,192,192)),
brush(rgb(192,192,192)),
rect(805,499,1255,515),
brush(rgb(255,255,255)),
rect(978,495,1072,510),
%lambang
rumah sakit
pen(3,rgb(255,255,255)),
brush(rgb(255,255,255)),
rect(1022,26,1035,63),
rect(1000,39,1057,52),
%gedung
1
pen(3,rgb(0,0,0)),
brush(rgb(13,208,77)),
rect(816,172,914,499),
%jendela
gedung 1
brush(rgb(255,255,135)),
rect(835,191,893,250),
line(863,248,863,192),
line(838,221,890,221),
rect(835,284,893,342),
line(863,285,863,338),
line(838,310,890,310),
rect(835,373,893,435),
line(863,375,863,432),
line(838,405,890,405),
%gedung
2
brush(rgb(13,208,77)),
rect(1140,172,1242,499),
%jendela
gedung 2
brush(rgb(255,255,135)),
rect(1158,191,1220,250),
line(1187,192,1187,248),
line(1160,220,1218,220),
rect(1158,284,1220,342),
line(1187,285,1187,340),
line(1160,310,1216,310),
rect(1158,373,1220,435),
line(1187,373,1187,433),
line(1160,400,1216,400).
Pertama, terlebih dahulu kita membuka aplikasi Strawberry Prolog dengan klik dua kali icon Strawberry Prolog atau dengan klik Start lalu pilih Strawberry Prolog.
Apabila tampilan sudah seperti gambar di atas, maka kita klik file lalu new dan pilih Strawberry Project.
Logika Programnya adalah seperti berikut :
?-
Statement ini untuk membuat awalan pada
strawberry prolog, wajib di isi, untuk mengisi program inti pada window.
window(_,_,bangunan(),"Bentuk
Bangunan",0,0,1353,595).
Statement window dibuat untuk menampilkan
jendela (window) yang dapat diisikan program yang ingin dibuat. “Bentuk
Bangunan” untuk memberi nama pada kotak window. 0,0,1353,595 adalah koordinat
untuk menentukan panjang dan lebar kotak window(1353x595), juga menentukan
dimana pertama kali window muncul dalam layar disana akan muncul window di
pojok kiri atas karena saya masukan koordinat (0,0).
bangunan(paint):-
Untuk memanggil method bangunan.
%%%%%%%%%%%%%%%
% %
% Program Rumah %
% %
%%%%%%%%%%%%%%%
%dinding 1
%
adalah komentar atau menunjukkan dokumentasi bahwa ini adalah program rumah
yang akan dibuat. Dan program rumah pertama yang akan kita buat adalah bentuk
dinding.
pen(3,rgb(0,0,0))
Perintah
tersebut adalah kita akan membuat atau menulis menggunakan tinta dengan
ketebalan 3 dan berwarna hitam. Rgb(0,0,0) adalah warna hitam karena semakin
kecil skalanya, maka semakin gelap pula warna yang kita peroleh.
brush(rgb(255,149,149))
Perintah brush berguna untuk mewarnai suatu
objek yang telah kita buat. Rgb(255,149,149) adalah warna merah muda. Kode rgb
tersebut kita dapatkan dari paint yang sudah ada di windows.
rect(166,194,367,440)
Perintah
rect adalah kita akan membuat sebuah persegi dengan koordinat yang telah kita
tentukan. Cara menentukan koordinat (x,y) adalah (x1,y1,x2,y2) atau yang
berarti titik awal (x1,y1)=166,194 dan titik akhir (x2,y2)=367,440.
fill_polygon(145,219,266,66,386,219)
Apabila
kita ingin membuat objek segitiga, maka kita dapat menggunakan perintah
fill_polygon. Cara menentukan koordinat segitiga adalah (x1,y1,x2,y2,x3,y3).
Pada setiap ujung segitiga, kita dapat mengambil titik koordinatnya.
fill_polygon(184,92,144,218,670,218,639,92)
Sama halnya dengan membuat segitia, fill_polygon juga
dapat membuat bentuk trapesium. Bedanya pada bentuk segitiga, kita hanya
memerlukan 3 titik koordinat, sedangkan untuk membuat bentuk trapesium maka
kita memerlukan 4 titik koordinat. Cara menentukan titik koordinat tersebut
adalah (x1,y1,x2,y2,x3,y3,x4,y4).
ellipse(540,58,594,70),
Ellipse
merupakan perintah yang digunakan untuk membuat bentuk lingkaran.
line(265,65,144,218),
Line adalah kita akan membuat sebuah garis
dengan koordinat yang telah kita tentukan, yaitu titik awal (x1,y1)=150,25 dan
titik akhir (x2,y2)=25,150 maka akan ditarik garis dari titik awal hingga titik
akhirnya.
Dalam
membuat rumah dan gedung lebih baik kita pisahkan bagian-bagiannya seperti atap, dinding,
pintu, dan jendela dengan menggunakan perintah % yang artinya komentar, agar
tidak bingung jika terjadi kesalahan. Juga kita tidak bingung jika ingin
memberi warna berbeda pada setiap bagian-bagiannya seperti ingin memberi warna
coklat pada pintu dan warna ungu pada jendela.
Dan inilah hasilnya
Sekian dari saya,
Semoga Bermanfaat :)
Comments
Post a Comment