praktikum 3 guide
TRANSCRIPT
-
8/18/2019 Praktikum 3 Guide
1/10
1
Praktikum 3 : Graphicswindow (next level)
Dasar-dasar Komputasi Ilmu KelautanWaktu : Selasa 29/3/2016 hingga Senin 4/4/2016=====================================================================
Praktikum 3 ini bertujuan untuk:
Mengembangkan kemampuan mahasiswa dalam menggunakan objekgraphicswindow dan property nya.
Mengembangkan kemampuan mahasiswa menggunakan subrutin dalam
sistem menu
Melatih kemampuan analisa algoritma program smallbasic
Pelaksanaan praktikum
Download script smallbasic dari LMS. Ada 3 contoh yang digunakan
untuk praktikum ini
Untuk contoh 1, file gambar dapat di download di LMS, nama file
gambar: barlomp.jpg Pilih salah satu program, copy ke smallbasic, baca sintaksnya dan
cobalah memahami bagaimana program tersebut bekerja. Diskusikan
dengan rekan di dalam kelompok praktikum
Buatlah algoritma deskriptifnya (narasi) tentang urut-urutan
proses yang dilakukan oleh setiap bagian yang ada pada program
tersebut (cukup gunakan penomoran tidak perlu menggunakan flow
chart). Salin algoritma yang disepakati tersebut ke dalam word
karena akan menjadi bagian laporan untuk praktikum 3 ini.
Kembangkan program yang telah dipilih tersebut sesuai dengan daya
kreatifitas kelompok
Script final program smallbasic yang telah disepakati oleh semua
anggota kelompok dan asisten, disalin ke microsoft word untuk
diupload secara perseorangan
Masing-masing anggota kelompok melengkapi dokumen word tersebut
dengan cover laporan: judul praktikum, nama, stambuk, kelas,
kelompok dan asisten, serta tanggal, jam praktikum dan tempat
praktikum
Penamaan file yang akan diupload adalah sebagai berikut
o
Kelas_kelompok_nama_stb
o Contoh: A_1_Nurul_L11115003
Bila ada hal-hal yang belum jelas dapat ditanyakan ke asisten
atau koordinator mata kuliah.
Selamat bekerja.. by [email protected]
-
8/18/2019 Praktikum 3 Guide
2/10
2
1.
Menampilkan Lokasi di P. Barranglompo
'Menemukan lokasi pada citra satelit P. Barranglompo
'menggunakan pesan interaktif '2016@mbandas '===================================== citrasiap() GraphicsWindow.MouseDown = pesan
'---------------------------------------subrutin menyiapkan citra satelit Sub citrasiapGraphicsWindow.width=600 GraphicsWindow.height=600 citra="d:\barlomp.jpg"
GraphicsWindow.DrawResizedImage(citra,60,35,500,520) endsub
'---------------------------------------subrutin menampilkan nama lokasi bila diklik pada batas koordinat yang tepat Sub pesanGraphicsWindow.brushcolor ="red" if (GraphicsWindow.MouseX > 250 And GraphicsWindow.MouseX
250 And GraphicsWindow.MouseY
-
8/18/2019 Praktikum 3 Guide
3/10
3
Sound.PlayBellRing() GraphicsWindow.ShowMessage(" Lapangan Barranglompo","lokasi") GraphicsWindow.drawtext(270,270,"Lapangan")
elseIf (GraphicsWindow.MouseX > 150 And GraphicsWindow.MouseX 150 And GraphicsWindow.MouseY 20 And GraphicsWindow.MouseX 20 And GraphicsWindow.MouseY
-
8/18/2019 Praktikum 3 Guide
4/10
4
2.
Menggerakkan Turtle ke Koordinat Tertentu
'struktur logika percabangan dan subrutin 'untuk menggerakkan turtle secara interaktif 'ke koordinat tertentu pada layar smallbasic '2016@mbandas '*****************************************
layarsiap() hint()
'---------------------------------subrutin layar
Sub layarsiapGraphicswindow.height=610 GraphicsWindow.width=810 Graphicswindow.left=30 GraphicsWindow.top=50 GraphicsWindow.brushcolor ="lightcyan" GraphicsWindow.fillRectangle(145,20,650,570) GraphicsWindow.brushcolor ="black"
-
8/18/2019 Praktikum 3 Guide
5/10
5
GraphicsWindow.DrawBoundText(20, 20, 200, "koordinat tujuan") GraphicsWindow.DrawText(5, 45, "x=") GraphicsWindow.DrawText(70, 45, "y=") GraphicsWindow.DrawText(145, 5, "x=0, y=0") GraphicsWindow.DrawText(710, 5, "x=645, y=0")
GraphicsWindow.DrawText(145, 590, "x=0, y=570") GraphicsWindow.DrawText(710, 590, "x=645, y=570") textbox1 = Controls. AddTextBox(22, 45) textbox2 = Controls. AddTextBox(87, 45) button1 = Controls. AddButton("siapkan penyu", 20, 75) button2 = Controls. AddButton("gerakkan penyu", 20, 110) Controls.SetSize(textbox1,40,20) Controls.SetSize(textbox2,40,20) Controls.SetSize(button1,110,30) Controls.SetSize(button2,110,30) Controls.ButtonClicked = jamang
goli=150 EndSub
'---------------------------------subrutin menu Sub jamangIf Controls.LastClickedButton = button1 Then
awal() elseIf Controls.LastClickedButton = button2 Then
berikutnya() EndIf
endsub
'---------------------------------subrutin siapkan turtle Sub awalsiagax = Controls.GetTextBoxText(textbox1)+150 siagay = Controls.GetTextBoxText(textbox2)+20 Turtle.PenUp() deltax=siagax-150 deltay=siagay-20 koordinat=deltax+","+deltayGraphicsWindow.brushcolor ="black" GraphicsWindow.DrawText(50,goli,koordinat) goli=goli+10 Turtle.MoveTo(siagax,siagay) GraphicsWindow.brushcolor ="red" GraphicsWindow.fillellipse(siagax-5,siagay-5,10,10)
endsub
'---------------------------------subrutin gerakkan turtle Sub berikutnya
-
8/18/2019 Praktikum 3 Guide
6/10
6
Turtle.Pendown() siagax = Controls.GetTextBoxText(textbox1)+150 siagay = Controls.GetTextBoxText(textbox2)+20 deltax=siagax-150 deltay=siagay-20
koordinat=deltax+","+deltayGraphicsWindow.brushcolor ="black" GraphicsWindow.DrawText(50,goli,koordinat) goli=goli+10 Turtle.MoveTo(siagax,siagay) GraphicsWindow.brushcolor ="red" GraphicsWindow.fillellipse(siagax-5,siagay-5,10,10)
EndSub
'---------------------------------subrutin pentunjuk cara menggunakan Sub hint
GraphicsWindow.fontname="garamond" GraphicsWindow.fontsize=18 GraphicsWindow.brushcolor ="#DCDCDC" GraphicsWindow.DrawBoundText(250, 200, 400, "Cara menggunakan: mula-mula masukkan nilai 0 pada
kolom x dan y, gunakan tab untuk pindah dari x ke y atau gunakan mouse lalu klik tombol SIAPKANPENYU") GraphicsWindow.DrawBoundText(250, 300, 400, "selanjutnya masukkan nilai x dan y sesuai dengan
batas nilai koordinat layar, lalu klik GERAKKAN PENYU") sound.PlayChime()
endsub
-
8/18/2019 Praktikum 3 Guide
7/10
7
3.
Grafik Pasang Surut dan Komponen Penyusunnya
' menampilkan estimasi grafik pasang surut 'dari komponen sinus and cosinus
'2016 - [email protected] '=========================== layarsiap() tombol() '------------------- ini bagian subrutin fungsi sinus Sub sinusFor i=1 To 1200 x=iy=i*2
npi=math.pi trigsin=(Math.Sin(x*npi/180)*50)+((Math.Sin(y*npi/180)*1)*(Math.Sin(y*npi/180)*1)) ys=250-trigsinGraphicsWindow.setpixel(x,ys,"red") Shapes.Move(bola,x,ys) Program.Delay(2) If x=1200 Then Sound.PlayBellRing() endif
endfor EndSub
'------------------- ini bagian subrutin fungsi cosinus Sub cosinusFor i=1 To 1200 x=iy=i*2
npi=math.pi trigcos=(Math.cos(x*npi/180)*60)+(Math.cos(y*npi/180)*50) yc=250-trigcosGraphicsWindow.setpixel(x,yc,"blue") Shapes.Move(kotak,x,yc)
-
8/18/2019 Praktikum 3 Guide
8/10
8
Program.Delay(2) endfor EndSub
'------------------- ini bagian subrutin fungsi pasang surut
Sub pasutFor i=1 To 1200 x=iy=i*2 npi=math.pi trigsin=(Math.Sin(x*npi/180)*60)+((Math.Sin(y*npi/180)*1)*(Math.Sin(y*npi/180)*1)) trigcos=(Math.cos(x*npi/180)*60)+(Math.cos(y*npi/180)*50) hpasut=trigsin+trigcosyp=250-hpasutGraphicsWindow.setpixel(x,yp,"yellow") Shapes.Move(kotak,x,yp)
Program.Delay(2) endfor EndSub
'------------------- ini bagian subrutin pengaturan tombol menu Sub tomboltombol1=controls. AddButton("grafik sinus",285,5) tombol2=controls. AddButton("grafik cosinus",410,5) tombol3=controls. AddButton("pasang surut",535,5) tombol4=controls. AddButton("tampilkan semua",660,5) tombol5=controls. AddButton("hapus layar",785,5) Controls.SetSize(tombol1,120,30) Controls.SetSize(tombol2,120,30) Controls.SetSize(tombol3,120,30) Controls.SetSize(tombol4,120,30) Controls.SetSize(tombol5,120,30) Controls.buttonclicked=menudiklikendsub
'------------------- ini bagian subrutin reaksi bila tombol diklik Sub menudiklikIf Controls.LastClickedButton=tombol1 Then
GraphicsWindow.Clear () layarsiap() tombol() sinus() ketsin()
elseIf Controls.LastClickedButton=tombol2 Then GraphicsWindow.Clear () layarsiap() tombol()
-
8/18/2019 Praktikum 3 Guide
9/10
9
cosinus() ketcos() elseIf Controls.LastClickedButton=tombol3 Then
GraphicsWindow.Clear () layarsiap()
tombol() pasut() ketpasut()
elseIf Controls.LastClickedButton=tombol4 Then GraphicsWindow.Clear () layarsiap() tombol() sinus() cosinus() pasut() elseIf Controls.LastClickedButton=tombol5 Then
GraphicsWindow.Clear () layarsiap() tombol()
EndIf EndSub
'------------------- ini bagian subrutin menyiapkan layar tampilan Sub layarsiapGraphicsWindow.FontName="arial narrow" GraphicsWindow.FontSize=16 GraphicsWindow.width=1200 GraphicsWindow.height=500 GraphicsWindow.left=25 GraphicsWindow.top=25 GraphicsWindow.BackgroundColor ="#000000" GraphicsWindow.pencolor ="#DCDCDC" GraphicsWindow.drawline(0,250,1200,250) GraphicsWindow.drawtext(0,230,"muka laut rata-rata") GraphicsWindow.pencolor ="#FFFFFF" bola=Shapes. Addellipse(5,5) kotak=Shapes. AddRectangle(5,5)
endsub
Sub ketsinGraphicsWindow.FontName="arial narrow" GraphicsWindow.FontSize=16 GraphicsWindow.DrawBoundText(372,407,500,"Grafik yang ditampilkan ini merupakan komponen sinus
dari fungsi pasang surut") EndSub Sub ketcosGraphicsWindow.FontName="arial narrow"
-
8/18/2019 Praktikum 3 Guide
10/10
10
GraphicsWindow.FontSize=16 GraphicsWindow.DrawBoundText(372,407,500,"Grafik yang ditampilkan ini merupakan komponen
cosinus dari fungsi pasang surut") EndSub
Sub ketpasutGraphicsWindow.FontName="arial narrow" GraphicsWindow.FontSize=16 GraphicsWindow.DrawBoundText(447,407,400,"Grafik yang ditampilkan ini merupakan fungsi pasang
surut") endsub