Rabu, 17 Januari 2018

Dasar Java Grafis (Modul 9 Bahasa Pemrograman Java)



Laporan Praktikum Bahasa Pemrograman 1
Modul IX
Dosen pengampu Dede Irawan, M.Kom
“Dasar Java Grafis”



Disusun Oleh :
Reny Hernawati
20160910053
SI A 2016

Universitas Kuningan
Jl.Cut Nyak Dien No. 36A Cijoho,  Kuningan
Telp. (0232)874824




KATA PENGANTAR

Alhamdulillah, puji syukur saya panjatkan ke Hadirat Allah SWT, karena hanya dengan berkat-Nya saya dapat menyelesaikan makalah ini. Tak lupa shalawat serta salam semoga dilimpahkan kepada junjungan kita Nabi Besar Muhammad SAW yang telah membawa kita dari alam gelap ke alam yang terang benderang, dari alam jahiliyah ke alam yang  penuh  berkah ini. Saya mengucapkan terima kasih kepada :
Bapak Dede Irawan, M.Kom selaku dosen Praktikum Bahasa Pemrograman 1.
Saya menyusun makalah ini dengan sungguh – sungguh dan semampu saya. Saya berharap dengan adanya makalah ini dapat memberikan pengalaman maupun pelajaran yang berarti bagi siapa saja yang membacanya.
Makalah ini dibuat sebagai salah satu laporan praktikum bahasa pemrogaman 1.  Makalah ini saya buat satu jilid yang berisi tentang “Dasar Java Grafis”.
Akhir kata, manusia tidak ada yang sempurna, begitu pula dengan makalah ini jauh dari kata sempurna. Oleh karena itu saran dan kritik yang membangun sangat saya nantikan demi kesempurnaan makalah ini.




DAFTAR ISI
KATA PENGANTAR
DAFTAR ISI

BAB I PENDAHULUAN
A.      LATAR BELAKANG

BAB II PEMBAHASAN
A.      Grafis Java: Kelas Container
B.      Grafis Java: Kelas Component
C.      Grafis Java: Kelas Color
D.     Menggunakan Kelas Graphics Di Java
  1. Contoh program
  2. Post test

BAB III PENUTUP
A.      KESIMPULAN
B.      DAFTAR PUSTAKA






BAB I
PENDAHULUAN

A.    Latar Belakang
Perkembangan ilmu pengetahuan dan teknologi saat ini sangatlah pesat. Dimana setiap gerak-gerik dan liku-liku kehidupan ini sangat dipengaruhi oleh adanya informasi yang kemudian informasi itu dapat diperoleh melalui ilmu pengetahuan dan teknologi.
Komputer merupakan salah satu teknologi yang paling pesat perkembangannya. Pada saat pertama kali ditemukan, komputer digunakan terutama sebagai alat bantu untuk mempercepat proses hitung menghitung. Komputer dari generasi  ke generasi mengalami perkembangan dalam hal pengolahan data baik kapasitas maupun kecepatannya. Data yang diolah tidak hanya berupa teks atau angka, tapi kini komputer dapat mengolah gambar/grafika. Komputer yang memiliki piranti grafis untuk mengolah gambar atau grafika disebut grafis komputer.
Grafika komputer pada dasarnya adalah suatu bidang komputer yang mempelajari cara-cara untuk meningkatkan dan memudahkan komunikasi antara manusia dengan mesin (komputer) dengan jalan membangkitkan, menyimpan dan memanipulasi gambar model suatu objek menggunakan komputer. Grafika komputer memungkinkan kita untuk berkomunikasi lewat gambar-gambar, bagan-bagan dan diagram.




BAB II
PEMBAHASAN

A.    Grafis Java: Kelas Container
Kelas-kelas Java dapat digolongkan menjadi tiga kelompok yaitu kelas-kelas wadah (container classes), kelas-kelas pembantu (helper classes) dan kelas-kelas komponen (component classes). Kelas yang termasuk dalam container classes dapat digunakan sebagai wadah atau tempat bagi kelas-kelas komponen (component classes) yaitu obyek dari kelas seperti JButton, JTextArea, JTexField, JComboBox, JListBox dan JTable. Kelas-kelas yang termasuk ke dalam helper classes dapat digunakan untuk memformat tampilan kelas lainnya.
Kelas Container termasuk dalam container classes. Kelas Container sebenarnya adalah Abstract Window toolkit (AWT) container sebagai wadah untuk obyek dari kelas-kelas grafis ketika Java pertama kali diperkenalkan (kelas Window, Panel, Frame, Dialog dan Applet). Untuk menyusun obyek-obyek atau komponen di wadah sesuai dengan posisi yang diinginkan, dapat digunakan kelas bantu (helper class) LayoutManager. Berikut ini adalah hirarki turunan dari kelas Container:

Hirarki turunan kelas Container

Kelas Container merupakan kelas turunan langsung dari kelas Component. Kelas Container juga mempunyai banyak sekali metoda selain juga metoda yang diwarisi dari kelas Component. Tabel berikut ini adalah beberapa metoda penting yang dimiliki oleh kelas Container:

Metoda kelas Container
Metoda
Keterangan
add(Component comp)
Menambahkan sebuah komponen ke dalam wadah (container).
add(Component comp, int index)
Menambahkan sebuah komponen ke dalam wadah dengan posisi yang telah ditentukan oleh parameter index.
paint(Graphics g)
Menggambar di wadah (container).
paintComponent(Graphics g)
Menggambar tiap-tiap komponen di wadah (container).
remove(Component comp)
Menghilangkan komponen tertentu dari wadah (container).
remove(int index)()
Menghilangkan komponen yang ditentukan oleh index dari wadah (container).
removeAll()
Menghilangkan semua komponen dari wadah (container).
setLayout(LayoutManager mgr)
Menentukan tata letak (layout manager) dari wadah (container).
getLayout()
Mengembalikan jenis tata letak (layout manager) yang digunakan oleh wadah (container).

B.     Grafis Java: Kelas Component
Kelas-kelas Java dapat digolongkan menjadi tiga kelompok yaitu kelas-kelas wadah (container classes), kelas-kelas pembantu (helper classes) dan kelas-kelas komponen (component classes). Kelas yang termasuk dalam container classes dapat digunakan sebagai wadah atau tempat bagi kelas-kelas komponen (component classes) yaitu obyek dari kelas seperti JButton, JTextArea, JTexField, JComboBox, JListBox dan JTable. Kelas-kelas yang termasuk ke dalam helper classes dapat digunakan untuk memformat tampilan kelas lainnya.
Kelas Component merupakan kelas abstrak. Secara hirarki, kelas Component adalah turunan dari kelas Object. Kelas Object berada di puncak teratas dalam hirarki kelas di Java. Semua kelas, langsung maupun tidak langsung, merupakan turunan dari kelas Object. Berikut ini adalah hirarki turunan dari kelas Component:

Hirarki kelas Component

Kelas Component mempunyai banyak sekali metoda. Semua kelas turunan dari kelas Component akan mewarisi semua metoda yang bisa diakses (accessible method) dari kelas ini. Berikut ini adalah tabel beberapa metoda penting dari kelas Component:

Metoda kelas Component
Metoda
Keterangan
setSize(int width, int height)
Mengatur kembali ukuran komponen sehingga mempunyai lebar width dan tinggi height.
setVisible(boolean b)
Menampilkan atau menyembunyikan komponen tergantung dari nilai boolean b.
setFont(Font f)
Mengatur jenis huruf dari komponen.
getFont(Font f)
Mengembalikan jenis huruf dari komponen.
setForegound(Color c)
Mengatur warna latar depan (foreground) dari komponen
getForeground()
Mengembalikan warna latar depan (foreground) dari komponen.
setBackground(Color c)
Mengatur warna latar belakang (background) dari komponen.
getBackground()
Mengembalikan warna latar belakang (background) dari komponen.
getWidth()
Mengembalikan lebar komponen saat ini.
getHeight()
Mengembalikan tinggi komponen saat ini.
setPreferedSize()
Mengatur ukuran komponen yang diinginkan.
getPreferedSize(Dimention d)
Mengembalikan ukuran komponen yang diinginkan.
isVisible()
Menunjukkan apakah komponen ini tampak.
setVisible(boolean b)
Menampilkan atau meyembunyikan komponen.
setName(String name)
Mengatur nama komponen ke string yang telah ditentukan
getName()
Mengembalikan nama dari komponen.

C.     Grafis Java: Kelas Color
Kelas-kelas Java dapat digolongkan menjadi tiga kelompok yaitu kelas-kelas wadah (container classes), kelas-kelas pembantu (helper classes) dan kelas-kelas komponen (component classes). Kelas yang termasuk dalam container classes dapat digunakan sebagai wadah atau tempat bagi kelas-kelas komponen (component classes) yaitu obyek dari kelas seperti JButton, JTextArea, JTexField, JComboBox, JListBox dan JTable. Kelas-kelas yang termasuk ke dalam helper classes dapat digunakan untuk memformat tampilan kelas lainnya.
Sesuatu yang berwarna tentu akan lebih indah dan menarik, demikian juga dengan komponen grafis Java yang diberi warna. warna di Java juga dapat disusun dari warna merah (red), hijau (green) dan warna biru (blue) atau yang lebih dikenal dengan RGB. Masing-masing warna diwakili oleh nilai byte dengan rentang nilai dari 0 sampai dengan 255. Berikut ini adalah hirarki turunan kelas Color:

Hirarki turunan kelasColor

Kelas Color mempunyai lebih dari lima konstruktor dan lebih dari dua puluh metoda. Disamping konstruktor dan metoda, kelas Color juga memiliki predeclared color constant (konstanta warna) yang digunakan untuk mewakili warna tertentu. Konstanta warna tersebut dideklarasikan dengan modifier public final static. Tabel-tabel berikut ini adalah daftar beberapa konstanta warna, konstruktor dan metoda kelas Color yang sering digunakan di dalam program.
Konstanta warna kelas Color
Metoda
Warna
Nilai RGB
public final static Color RED
Merah
255.0.0
public final static Color GREEN
Hijau
0.255.0
public final static Color BLUE
Biru
0.0.255
public final static Color WHITE
Putih
255.255.255
public final static Color YELLOW
Kuning
255.255.0
public final static Color BLACK
Hitam
0.0.0
public final static Color PINK
Merah muda
255.200.0
public final static Color ORANGE
Jingga tua
255.175.175


Konstruktor kelas Color
Konstruktor
Keterangan
Color(float r, float g, float b)
Mengkonstruksi warna dengan menentukan nilai r, g dan b dengan rentang (range) 0.0–1.0.
Color(int r, int g, int b)
Mengkonstruksi warna dengan menentukan nilai r, g dan b dengan rentang (range) 0–255.



Metoda kelas Color
Metoda
Keterangan
getGreen()
Mengembalikan nilai integer (int) yang mewakili warna hijau dengan rentang 0-255.
getRed()
Mengembalikan nilai integer (int) yang mewakili warna merah dengan rentang 0-255.
getBlue()
Mengembalikan nilai integer (int) yang mewakili warna biru dengan rentang 0-255.

D.    Menggunakan Kelas Graphics Di Java
Kelas Graphics merupakan kelas abstrak yang menyediakan interface grafis untuk menampilkan bentuk dan gambar di layar (screen) di platform berbeda. Ketika metoda paint(Graphics g) atau paintComponent(Graphics g) digunakan, g adalah obyek subclass konkret dari kelas abstrak Graphics.
Berikut ini adalah hirarki turunan dari kelas Graphics di bahasa pemrograman Java:
Hirarki kelas Graphics di Java
Kelas Graphics mempunyai banyak metoda yang dapat digunakan untuk menggambar string, line dan berbagai bentuk bangun. Anda dapat memanggil metoda-metoda tersebut menggunakan variabel acuan g yang mengacu ke obyek kelas Graphics, yang merupakan parameter dari metoda pain dan paintComponent. Berikut ini adalah tabel beberapa metode dari kelas Graphics:

Metoda Kelas Graphics
Metoda
Keterangan
drawString(String str, int x, int y)
Menggambar string dengan posisi (koordinat) ditentukan oleh x dan y.
drawLine(int x1, int y2, int x2, int y2)
Menggambar garis dengan titik pertama x1 dan y1 dan titik kedua x2 dan y2.
drawRect(int x, int y, int width, int height)
Menggambar persegi panjang dengan sudut kiri atas ditentukan oleh x dan y serta lebar dan panjang ditentukan oleh width dan height.
fillRect(int x, int y, int width, int height)
Menggambar persegi panjang berwarna dengan sudut kiri atas ditentukan oleh x dan y serta lebar dan panjang ditentukan oleh width dan height.
drawOval (int x, int y, int width, int height)
Menggambar lingkaran lonjong dengan panjang dan lebar ditentukan oleh width dan height. Sudut kiri atas yang melingkar berada pada koordinat x dan y.
fillOval (int x, int y, int width, int height)
Menggambar lingkaran lonjong berwarna dengan panjang dan lebar ditentukan oleh width dan height. Sudut kiri atas yang melingkar berada di koordinat x dan y.
drawRoundRect(int x, int y, int width, int height, int arcWidth, int arcHeight)
Menggambar persegi panjang yang mempunyai sudut melingkar dengan lebar dan tinggi ditentukan oleh width dan height. Sudut-sudut melingkar ditentukan oleh arcWidth dan arcHeight.
fillRoundRect(int x, int y, int width, int height, int arcWidth, int arcHeight)
Menggambar persegi panjang berwarna yang mempunyai sudut melingkar dengan lebar dan tinggi ditentukan oleh width dan height. Sudut-sudut melingkar ditentukan oleh arcWidth dan arcHeight.
draw3DRect(int x, int y, int width, int height, boolean b)
Menggambar persegi panjang berdimensi tiga dengan sudut kiri atas ditentukan oleh x dan y serta lebar dan tinggi ditentukan oleh width dan height.
fill3DRect(int x, int y, int width, int height, boolean b)
Menggambar persegi panjang berdimensi tiga berwarna dengan sudut kiri atas ditentukan oleh x dan y serta lebar dan tinggi ditentukan oleh width dan height.

E.     Contoh Program
// Nama file : DrawingRect.java
// Mengambar rectangle di frame (JFrame)

// mengimpor kelas
import javax.swing.JFrame;
import java.awt.Graphics;
import java.awt.Color;

// deklarasi kelas
public class DrawingRect extends JFrame {

   // Konstruktor kelas DrawingRect
   public DrawingRect() {

      super("Kelas DrawingRect");
      setSize(260, 165);
      setVisible(true);
   }

   // Metoda paint
   public void paint(Graphics g) {
   
      // Memanggil metoda paint dari superclass
      super.paint(g);

      // Mengatur warna
      g.setColor(Color.RED);
      g.drawRect(20, 40, 220, 50);

      g.setColor(Color.BLUE);
      g.fillRect(20, 100, 220, 50);
   }

   // Metoda main
   public static void main(String[] args) {
      DrawingRect frame = new DrawingRect();
      frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
   }
}

Menggunakan kelas Graphics di Java

Baris nomor 15 adalah pernyataan untuk memanggil konstruktor kelas JFrame (konstruktor superclass dari kelas DrawingRect) dan memberikan argumen string “Kelas DrawingRect” ke konstruktor superclass. Pernyataan super.paint(Graphics g) di baris nomor 24 diperlukan untuk memastikan bahwa area tinjauan dibersihkan sebelum gambar baru ditampilkan.
Di baris nomor 27 dan 28, variabel acuan g yang mengacu ke obyek dari kelas Graphics, berturut-turut memanggil metoda setColor dan drawRect. Parameter metoda setColor diberi argumen berupa konstanta warna merah, Color.RED agar bentuk bangun yang digambar diberi garis warna merah. Metoda kedua yang dipanggil, drawRect, adalah metoda untuk menggambar bentuk bangun persegi panjang.
Di pernyataan baris nomor 30 dan 31, variabel acuan g yang mengacu ke obyek kelas Graphics, berturut-turut memanggil metoda setColor dan fillRect. Parameter metoda setColor diberi argumen berupa konstanta warna biru, Color.BLUE, agar bentuk bangun yang digambar diberi warna biru. Metoda kedua yang dipanggil, fillRect, adalah metoda untuk menggambar bentuk bangun persegi panjang (rectangle) yang keseluruhannya warnanya diberi warna biru.



Post Test
Buat bentuk untuk menunjukan operasi himpunan berupa Union, Intersection, dan Subtraction.
ü  Script
package Modul_09;
import java.awt.Color;
import java.awt.Graphics;
import javax.swing.*;

public class Latihan_02 extends JFrame {
    public Latihan_02() {
        setTitle("Latihan Grafis");
        setSize(600,550);
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setLocationRelativeTo(null);
        setVisible(true);
    }
    @Override
    public void paint(Graphics g){
        g.setColor(Color.BLUE);
        g.fillOval(220, 60, 120, 120);
        g.fillOval(280, 60, 120, 120);
        g.setColor(Color.BLACK);
        g.drawOval(220, 60, 120, 120);
        g.drawOval(280, 60, 120, 120);
       
        g.setColor(Color.BLUE);
        g.fillOval(210, 230, 120, 120);
        g.setColor(Color.BLACK);
        g.drawOval(210, 230, 120, 120);
        g.setColor(Color.BLUE);
        g.fillOval(275, 230, 120, 120);
        g.setColor(Color.BLACK);
        g.drawOval(275, 230, 120, 120);
        g.setColor(Color.WHITE);
        g.fillOval(275, 238, 50, 105);
        g.setColor(Color.BLACK);
        g.drawOval(275, 238, 50, 105);
       
        g.setColor(Color.BLUE);
        g.fillOval(100, 400, 120, 120);
        g.setColor(Color.WHITE);
        g.fillOval(160, 400, 120, 120);
        g.setColor(Color.BLACK);
        g.drawOval(100, 400, 120, 120);
        g.drawOval(160, 400, 120, 120);
       
        g.setColor(Color.BLUE);
        g.fillOval(410, 400, 120, 120);
        g.setColor(Color.WHITE);
        g.fillOval(350, 400, 120, 120);
        g.setColor(Color.BLACK);
        g.drawOval(350, 400, 120, 120);
        g.drawOval(410, 400, 120, 120);
    }
    public static void main(String[] args){
        Latihan_02 latihan_02 = new Latihan_02();
    }
}

ü  Hasil Running
1.png
BAB III
PENUTUP
A.    Kesimpulan
Bahasa pemrograman java tidak hanya dapat digunakan untuk membuat program berbasis text (text-base program) namun lebih dari itu java juga mendukung pemrograman grafis. Dengan menguasai pemrograman grafis dalam bahasa java maka dimungkinkan dapat membuat aneka bentuk program grafis seperti games, aplikasi grafis, animasi dll.

B.     Daftar Pustaka






Tidak ada komentar:

Posting Komentar

Animasi (Modul 10 Bahasa Pemrograman Java)

Laporan Praktikum Bahasa Pemrograman 1 Modul X Dosen pengampu Dede Irawan, M.Kom “Animasi” Disusun Oleh : Reny Herna...