praktikum 3 guide

Upload: ilham-clinkers

Post on 07-Jul-2018

214 views

Category:

Documents


0 download

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

    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