Similar topics
User Yang Sedang Online
Total 2 uses online :: 0 Terdaftar, 0 Tersembunyi dan 2 Tamu Tidak ada
User online terbanyak adalah 34 pada Tue Oct 22, 2024 10:15 pm
Archieve
Contoh BAB II IMK dari Ka Septian
5 posters
Halaman 1 dari 1
Contoh BAB II IMK dari Ka Septian
3. PEMBAHASAN MASALAH
Dalam penulisan ini, penulis
membuat sebuah aplikasi resizing
citra menggunakan JAVA yang akan diimplementasikan pada komputer dekstop.
Proses pembuatan aplikasi ini melalui beberapa tahapan, mulai dari pembuatan
alur, pembuatan struktur, perancangan tampilan, implementasi program dan
spesifikasi hardware. Bab ini akan menjelaskan tentang tahapan-tahapan dalam
pembuatan aplikasi resizing citra.
3.1 Pembuatan Struktur
Untuk mempermudah dalam
pembuatan aplikasi, pertama-tama penulis merancang struktur navigasi, sehingga
pembuatan program aplikasi dapat dilakukan secara terurut. Struktur navigasinya
adalah sebagai berikut :
Gambar 3.1 Struktur Program
Struktur
navigasi di atas, merupakan urutan penggunaan aplikasi pengolahan citra.
Pertama-tama pada saat aplikasi dijalankan, menu yang hanya bisa di akses
adalah Buka gambar, dan About. Untuk dapat menggunakan semua menu yang ada,
kita harus mengambil gambar yang terdapat pada media penyimpanan. Setelah gambar
di panggil maka gambar tersebut akan ditempatkan pada Internal Frame,
selanjutnya pengguna dapat me-resize lalu di simpan atau bisa juga
langsung menyimpannya apabila hanya ingin merubah namanya saja. Setelah itu,
pengguna dapat menutup aplikasi dengan memilih menu keluar.
3.2 Pembuatan Alur
Gambar 3.2 Diagram Alur
Pada alur diagram ini, user
diharuskan untuk membuka file gambar yang akan di resize. Setelah itu, kita dapat memilih untuk me-resize gambar tersebut. Pada saat kita
memilih resize, akan tampil frame
yang digunakan untuk memasukkan ukuran atau resolusi gambar yang baru. Setelah
gambar tersebut di resize, user dapat menyimpan hasil gambar yang
baru. Apabila kita telah selesai menggunakan aplikasi ini, kita dapat memilih
Keluar untuk menghentikan aplikasi.
3.3 Rancangan Tampilan
3.3.1 Rancangan
Tampilan Utama
Pada
tampilan utama ini digunakan sebagai tempat untuk menjalankan semua
fungsi-fungsi yang terdapat pada aplikasi ini.
Gambar 3.3 Tampilan
Utama
Pada rancangan tampilan di atas,
berikut ini adalah komponen-komponen yang digunakan:
3.3.2
Rancangan TampilanPengaturan
resolusi
Pada
tampilan pengeturan resolusi ini, akan digunakan untuk memasukkan ukuran pixel
gambar yang diinginkan. Pengguna akan diminta untuk memasukkan lebar dan tinggi
yang diinginkan.
Gambar 3.4
Memasukkan ukuran gambar
Pada
rancangan tampilan di atas, berikut ini adalah komponen-komponen yang
digunakan:
3.3.3
Rancangan Tampilan Bantuan
Pada rancangan tampilan help ini,
penulis menempatkan beberapa komponen yang berguna untuk menampilkan tutorial
berupa tulisan.
Gambar 3.5
Rancangan TampilanBantuan
Pada
rancangan tampilan di atas, berikut ini adalah komponen-komponen yang
digunakan:
3.3.4 Rancangan
TampilanTentang
Pada rancangan tampilan tentang ini,
penulis menempatkan beberapa komponen yang berguna untuk menjelaskan tentang
pembuat program dan ucapan terima kasih
Gambar 3.6 Rancangan Tampilan Tentang
Pada
rancangan tampilan di atas, berikut ini adalah komponen-komponen yang
digunakan:
3.4
Penjelasan Source Code
Source code aplikasi resizing citra
ini selengkapnya telah dilampirkan lampiran program. Sub bab ini akan
menjelaskan sebagian code dari setiap bagian utama dari program tersebut.
3.4.1 Buka Berkas Gambar
public String
FileChose() {
JFileChooser
fc = new JFileChooser();
fc.setAcceptAllFileFilterUsed(false);
int returnVal =
fc.showDialog(this,"Select Image");
if
(returnVal == JFileChooser.APPROVE_OPTION) {
return fc.getSelectedFile().toString();
}else{
return "-1";
}
}
Setelah kita memilih menu buka, akan muncul tampilan untuk
mencari berkas gambar yang akan di ubah ukurannya. Hasil berkas yang didapat
dari return fc.getSelectedFile().toString()
disimpan sementara di
dalam buffer file sebelum di
tampilkan.
Adapun
listing proses penyimpanan berkas sebagai berikut:
BufferedImage
bufImage(String ImageName){
try{
BufferedImage
img1 =ImageIO.read(new File(ImageName));
return
img1;
}catch (Exception e){return null;}
Pada listing di atas, dibuat objek
dari kelas BufferedImage yaitu img1 yang digunakan untuk membaca berkas gambar
yang akan di resize. Berkas gambar
yang telah dibaca pada BufferedImage
kemudian akan ditampilkan.
Berikut listing untuk menampilkan
berkas gambar.
private void
openImage(String strIm){
try{
BufferedImage im =
bufImage(strIm);
L = new Layer(100, 50,
im.getWidth()+10 ,im.getHeight()+33, im, strIm);
gmbr = im;
desktop.add(L);
this.btUkuran.setEnabled(true);
}catch (Exception e){ }
}
Pada listing
di atas, dibuat objek dari kelas BufferedImage yaitu im. Setelah itu dibuat
objek dari kelas Viewer yaitu vi, yang digunakan sebagai media untuk
menampilkan gambar. Adapun parameter pada kelas Viewer sebagai berikut:
3.4.2 Resizing
citra
Setelah memasukkan ukuran gambar yang baru maka digunakan oleh method
updateScale
public Utama(String width,String
height){
L.updateImage(scale(gmbr,Integer.parseInt(width),
Integer.parseInt(heigt)));
}
Method Utama akan memanggil method
updateImage pada kelas Layer yang akan memanggil method scale. Dimana method tersebut akan melakukan proses resizing.
public void
updateImage(BufferedImage image){
img1=image;
aturkomponenintfrm(100,50,gmbr1.getWidth()+10,gmbr1.getHeight()+33);
p.repaintPanelImage(img1);
}
Method
updateImage berfungsi untuk menampilkan gambar yang telah dirubah ukurannya.
Gambar tersebut ditampilkan dengan memanggil kelas PanelDrw, method aturKomponen dan method repaintPanelImage melalui objek p
yang telah didefinisikan sebelumnya.
BufferedImage scale(BufferedImage
image1,float rx,float ry){
AffineTransform
tx = new AffineTransform();
tx.scale(rx,ry);
AffineTransformOp op = new
AffineTransformOp(tx, AffineTransformOp.TYPE_BILINEAR);
return op.filter(image1, null);
}
Method
scale berfungsi merubah ukuran gambar dengan cara memanggil kelas
AffineTransform yang terdapat pada package java.awt.geom dengan parameter
berupa bilangan integer, dimana parameter tersebut di dapat dari inputan yang
di input oleh user. Hasil proses dari kelas AffineTransform sebagai parameter
pada kelas AffineTransformOp yang akan mengembalikan berkas berupa BufferedImage
yang menampung gambar baru yang telah dirubah ukurannya.
3.5 Implementasi
Dalam tahapan implementasi aplikasi,
maka untuk menjalankan aplikasi ini dibutuhkan syarat minimal yang harus
dipenuhi oleh komputer yang digunakan sebagai media implementasinya, syarat
tersebut yaitu komputer telah terinstal java runtime environment versi 1.6.
Untuk mengeksekusi aplikasi ini caranya adalah mengetikkan perintah java –jar
Resizing.jar melalui terminal atau command prompt yang dimiliki sistem operasi
komputer tersebut.
Berikut ini
akan ditampilkan ukuran dari gambar dengan resolusi 600x399 dengan ukuran file 66,3
KB.
(a)
(b)
Gambar 3.7 (a)
Gambar dengan Resolusi 600x399 (b)Ukuran Berkas Gambar dengan Resolusi 600x399
Diubah ke
ukuran 300 x 200 untuk melihat ukuran dari berkas gambar yang telah diubah
resolusinya. Pertama kita masukkan ukuran dari lebar dan tinggi yang
diinginkan. Lalu klik tombol proses.
.
Gambar 3.8 Masukan
Ukuran Gambar 300 x 200
(a)
(b)
Gambar 3.9 (a)
Gambar dengan Resolusi 300x200 (b)Ukuran Berkas Gambar dengan Resolusi 300x200
Lalu diubah
ke ukuran 100 x 67 untuk melihat ukuran dari berkas gambar yang telah diubah
resolusinya. Pertama kita masukkan ukuran dari lebar dan tinggi yang
diinginkan. Lalu klik tombol proses.
Gambar 3.10
Masukan Ukuran Gambar 100x67
(a)
(b)
Gambar 3.11 (a)Gambar
dengan Resolusi 100x67 (b)Ukuran Berkas Gambar dengan Resolusi 100x67
3.7 Spesifikasi Perangkat yang
Digunakan
Spesifikasi
perangkat keras yang digunakan penulis dalam pembuatan aplikasi pembelian obat
ini, adalah sebagai berikut:
-
Processor
AMD Athlon 500 MHz
-
CRT
Monitor 17” 1024x768 pixel
-
RAM
384 MB
-
Hardisk
80 GB
-
Nvidia
Vanta Bios 16 MB
Sedangkan untuk perangkat lunak yang
digunakan dalam pembuatan aplikasi pembelian obat ini adalah sebagai berikut:
-
J2sdk-1_6_0_03
Penulis menggunakan java
versi j2sdk 1.6 dalam pembuatan aplikasi pembelian obat ini.
-
eclipse-java-galileo-SR1-win32
Penulis menggunakan
eclipse-java-galileo-SR1-win32 sebagai Integrated Development Environment dalam
pembuatan aplikasi.
-
Windows
XP Professional SP2
Penulis menggunakannya
sebagai system operasi dalam pembuatan aplikasi resizing citra ini.
Dalam penulisan ini, penulis
membuat sebuah aplikasi resizing
citra menggunakan JAVA yang akan diimplementasikan pada komputer dekstop.
Proses pembuatan aplikasi ini melalui beberapa tahapan, mulai dari pembuatan
alur, pembuatan struktur, perancangan tampilan, implementasi program dan
spesifikasi hardware. Bab ini akan menjelaskan tentang tahapan-tahapan dalam
pembuatan aplikasi resizing citra.
3.1 Pembuatan Struktur
Untuk mempermudah dalam
pembuatan aplikasi, pertama-tama penulis merancang struktur navigasi, sehingga
pembuatan program aplikasi dapat dilakukan secara terurut. Struktur navigasinya
adalah sebagai berikut :
Gambar 3.1 Struktur Program
Struktur
navigasi di atas, merupakan urutan penggunaan aplikasi pengolahan citra.
Pertama-tama pada saat aplikasi dijalankan, menu yang hanya bisa di akses
adalah Buka gambar, dan About. Untuk dapat menggunakan semua menu yang ada,
kita harus mengambil gambar yang terdapat pada media penyimpanan. Setelah gambar
di panggil maka gambar tersebut akan ditempatkan pada Internal Frame,
selanjutnya pengguna dapat me-resize lalu di simpan atau bisa juga
langsung menyimpannya apabila hanya ingin merubah namanya saja. Setelah itu,
pengguna dapat menutup aplikasi dengan memilih menu keluar.
3.2 Pembuatan Alur
Gambar 3.2 Diagram Alur
Pada alur diagram ini, user
diharuskan untuk membuka file gambar yang akan di resize. Setelah itu, kita dapat memilih untuk me-resize gambar tersebut. Pada saat kita
memilih resize, akan tampil frame
yang digunakan untuk memasukkan ukuran atau resolusi gambar yang baru. Setelah
gambar tersebut di resize, user dapat menyimpan hasil gambar yang
baru. Apabila kita telah selesai menggunakan aplikasi ini, kita dapat memilih
Keluar untuk menghentikan aplikasi.
3.3 Rancangan Tampilan
3.3.1 Rancangan
Tampilan Utama
Pada
tampilan utama ini digunakan sebagai tempat untuk menjalankan semua
fungsi-fungsi yang terdapat pada aplikasi ini.
Gambar 3.3 Tampilan
Utama
Pada rancangan tampilan di atas,
berikut ini adalah komponen-komponen yang digunakan:
- | JToolBar | : | Untuk menaruh tombol-tombol yang digunakan sebagai menu |
- | JButton1 | : | Berguna sebagai tombol untuk mem-browse gambar yang akan ditampilkan |
- | JButton2 | : | Berguna untuk menyimpan gambar |
- | JButton3 | : | Berguna untuk menampilkan form memasukkan ukuran gambar |
- | JButton4 | : | Berguna untuk menampilkan form bantuan |
- | JButton5 | : | Berguna untuk menampilkan form tentang |
- | JButton6 | : | Berguna untuk menutup form utama |
- | JDesktopPane | : | Berguna sebagai tempat untuk menampilkan gambar |
3.3.2
Rancangan TampilanPengaturan
resolusi
Pada
tampilan pengeturan resolusi ini, akan digunakan untuk memasukkan ukuran pixel
gambar yang diinginkan. Pengguna akan diminta untuk memasukkan lebar dan tinggi
yang diinginkan.
Gambar 3.4
Memasukkan ukuran gambar
Pada
rancangan tampilan di atas, berikut ini adalah komponen-komponen yang
digunakan:
- | Label1 | : | Berisi tulisan lebar |
- | JLabel2 | : | Berisi tulisan tinggi |
- | JTextField1 | : | Untuk memasukkan lebar ukuran gambar yang baru |
- | JTextField2 | : | Untuk memasukkan tinggi ukuran gambar yang baru |
- | JButton1 | : | Tombol OK untuk mengeksekusi perintah |
- | JButton2 | : | Tombol Cancel untuk membatalkan perintah |
3.3.3
Rancangan Tampilan Bantuan
Pada rancangan tampilan help ini,
penulis menempatkan beberapa komponen yang berguna untuk menampilkan tutorial
berupa tulisan.
Gambar 3.5
Rancangan TampilanBantuan
Pada
rancangan tampilan di atas, berikut ini adalah komponen-komponen yang
digunakan:
- | JButton1 | : | Berguna untuk membuka tutorial tentang membuka gambar |
- | JButton2 | : | Berguna untuk membuka tutorial tentang menyimpan gambar |
- | JButton3 | : | Berguna untuk membuka tutorial tentang mengubah resolusi gambar |
- | JTextArea | : | Berguna untuk menampilkan tutorial |
3.3.4 Rancangan
TampilanTentang
Pada rancangan tampilan tentang ini,
penulis menempatkan beberapa komponen yang berguna untuk menjelaskan tentang
pembuat program dan ucapan terima kasih
Gambar 3.6 Rancangan Tampilan Tentang
Pada
rancangan tampilan di atas, berikut ini adalah komponen-komponen yang
digunakan:
- | JLabel1 | : | Menampilkan gambar |
- | JLabel2 | : | Menampilkan tulisan ucapan terima kasih |
3.4
Penjelasan Source Code
Source code aplikasi resizing citra
ini selengkapnya telah dilampirkan lampiran program. Sub bab ini akan
menjelaskan sebagian code dari setiap bagian utama dari program tersebut.
3.4.1 Buka Berkas Gambar
public String
FileChose() {
JFileChooser
fc = new JFileChooser();
fc.setAcceptAllFileFilterUsed(false);
int returnVal =
fc.showDialog(this,"Select Image");
if
(returnVal == JFileChooser.APPROVE_OPTION) {
return fc.getSelectedFile().toString();
}else{
return "-1";
}
}
Setelah kita memilih menu buka, akan muncul tampilan untuk
mencari berkas gambar yang akan di ubah ukurannya. Hasil berkas yang didapat
dari return fc.getSelectedFile().toString()
disimpan sementara di
dalam buffer file sebelum di
tampilkan.
Adapun
listing proses penyimpanan berkas sebagai berikut:
BufferedImage
bufImage(String ImageName){
try{
BufferedImage
img1 =ImageIO.read(new File(ImageName));
return
img1;
}catch (Exception e){return null;}
Pada listing di atas, dibuat objek
dari kelas BufferedImage yaitu img1 yang digunakan untuk membaca berkas gambar
yang akan di resize. Berkas gambar
yang telah dibaca pada BufferedImage
kemudian akan ditampilkan.
Berikut listing untuk menampilkan
berkas gambar.
private void
openImage(String strIm){
try{
BufferedImage im =
bufImage(strIm);
L = new Layer(100, 50,
im.getWidth()+10 ,im.getHeight()+33, im, strIm);
gmbr = im;
desktop.add(L);
this.btUkuran.setEnabled(true);
}catch (Exception e){ }
}
Pada listing
di atas, dibuat objek dari kelas BufferedImage yaitu im. Setelah itu dibuat
objek dari kelas Viewer yaitu vi, yang digunakan sebagai media untuk
menampilkan gambar. Adapun parameter pada kelas Viewer sebagai berikut:
- Parameter
pertama menunjukkan posisi Layer
berdasarkan sumbuX. - Parameter
kedua menunjukkan posisi Layer
berdasarkan sumbuX. - Parameter
ketiga menunjukkan lebar Layer
berdasarkan lebar gambar yang akan ditampilkan. - Parameter
keempat menunjukkan tinggi viewer
berdasarkan tinggi gambar yang akan ditampilkan. - Parameter
kelima berisi berkas gambar - Parameter
keenam berisi lokasi tempat gambar
3.4.2 Resizing
citra
Setelah memasukkan ukuran gambar yang baru maka digunakan oleh method
updateScale
public Utama(String width,String
height){
L.updateImage(scale(gmbr,Integer.parseInt(width),
Integer.parseInt(heigt)));
}
Method Utama akan memanggil method
updateImage pada kelas Layer yang akan memanggil method scale. Dimana method tersebut akan melakukan proses resizing.
public void
updateImage(BufferedImage image){
img1=image;
aturkomponenintfrm(100,50,gmbr1.getWidth()+10,gmbr1.getHeight()+33);
p.repaintPanelImage(img1);
}
Method
updateImage berfungsi untuk menampilkan gambar yang telah dirubah ukurannya.
Gambar tersebut ditampilkan dengan memanggil kelas PanelDrw, method aturKomponen dan method repaintPanelImage melalui objek p
yang telah didefinisikan sebelumnya.
BufferedImage scale(BufferedImage
image1,float rx,float ry){
AffineTransform
tx = new AffineTransform();
tx.scale(rx,ry);
AffineTransformOp op = new
AffineTransformOp(tx, AffineTransformOp.TYPE_BILINEAR);
return op.filter(image1, null);
}
Method
scale berfungsi merubah ukuran gambar dengan cara memanggil kelas
AffineTransform yang terdapat pada package java.awt.geom dengan parameter
berupa bilangan integer, dimana parameter tersebut di dapat dari inputan yang
di input oleh user. Hasil proses dari kelas AffineTransform sebagai parameter
pada kelas AffineTransformOp yang akan mengembalikan berkas berupa BufferedImage
yang menampung gambar baru yang telah dirubah ukurannya.
3.5 Implementasi
Dalam tahapan implementasi aplikasi,
maka untuk menjalankan aplikasi ini dibutuhkan syarat minimal yang harus
dipenuhi oleh komputer yang digunakan sebagai media implementasinya, syarat
tersebut yaitu komputer telah terinstal java runtime environment versi 1.6.
Untuk mengeksekusi aplikasi ini caranya adalah mengetikkan perintah java –jar
Resizing.jar melalui terminal atau command prompt yang dimiliki sistem operasi
komputer tersebut.
Berikut ini
akan ditampilkan ukuran dari gambar dengan resolusi 600x399 dengan ukuran file 66,3
KB.
(a)
(b)
Gambar 3.7 (a)
Gambar dengan Resolusi 600x399 (b)Ukuran Berkas Gambar dengan Resolusi 600x399
Diubah ke
ukuran 300 x 200 untuk melihat ukuran dari berkas gambar yang telah diubah
resolusinya. Pertama kita masukkan ukuran dari lebar dan tinggi yang
diinginkan. Lalu klik tombol proses.
.
Gambar 3.8 Masukan
Ukuran Gambar 300 x 200
(a)
(b)
Gambar 3.9 (a)
Gambar dengan Resolusi 300x200 (b)Ukuran Berkas Gambar dengan Resolusi 300x200
Lalu diubah
ke ukuran 100 x 67 untuk melihat ukuran dari berkas gambar yang telah diubah
resolusinya. Pertama kita masukkan ukuran dari lebar dan tinggi yang
diinginkan. Lalu klik tombol proses.
Gambar 3.10
Masukan Ukuran Gambar 100x67
(a)
(b)
Gambar 3.11 (a)Gambar
dengan Resolusi 100x67 (b)Ukuran Berkas Gambar dengan Resolusi 100x67
3.7 Spesifikasi Perangkat yang
Digunakan
Spesifikasi
perangkat keras yang digunakan penulis dalam pembuatan aplikasi pembelian obat
ini, adalah sebagai berikut:
-
Processor
AMD Athlon 500 MHz
-
CRT
Monitor 17” 1024x768 pixel
-
RAM
384 MB
-
Hardisk
80 GB
-
Nvidia
Vanta Bios 16 MB
Sedangkan untuk perangkat lunak yang
digunakan dalam pembuatan aplikasi pembelian obat ini adalah sebagai berikut:
-
J2sdk-1_6_0_03
Penulis menggunakan java
versi j2sdk 1.6 dalam pembuatan aplikasi pembelian obat ini.
-
eclipse-java-galileo-SR1-win32
Penulis menggunakan
eclipse-java-galileo-SR1-win32 sebagai Integrated Development Environment dalam
pembuatan aplikasi.
-
Windows
XP Professional SP2
Penulis menggunakannya
sebagai system operasi dalam pembuatan aplikasi resizing citra ini.
AISHA- Posts : 1
Reputasi : 3
Cendol : 0
Join date : 22.03.10
Re: Contoh BAB II IMK dari Ka Septian
loh???ini kan bab III
fahrizal_gg- Posts : 32
Reputasi : 36
Cendol : 0
Join date : 28.10.09
Age : 35
Location : dunia DOTA
Re: Contoh BAB II IMK dari Ka Septian
Ribet BEt RIBET>>> RMH
DJ_and- Posts : 61
Reputasi : 95
Cendol : 2
Join date : 28.10.09
Halaman 1 dari 1
Permissions in this forum:
Anda tidak dapat menjawab topik