LAPORAN PRAKTIKUM
BAHASA PEMROGRAMAN 1
MODUL 10
“Animasi”
DOSEN PENGAMPU:
DEDE
IRAWAN, M.KOM.
DISUSUN OLEH:
FARADILA
SUHAEFI
20180910003
SISTEM
INFORMASI 2018 A
FAKULTAS KOMPUTER
SISTEM
INFORMASI
UNIVERSITAS KUNINGAN
2019
KATA PENGANTAR
Puji
syukur saya panjatkan kehadirat Allah SWT, atas kasih dan sayang-Nya memberikan pengetahuan, kemampuan dan
kesempatan kepada penyusun sehingga mampu menyelesaikan tugas ini. Penyusunan makalah ini ditulis sebagai tugas mata kuliah praktikum bahasa pemrograman
1 modul 10.
Penyusun
menyadari, dalam penulisan makalah ini masih ada kemungkinan kekurangan-kekurangan karena keterbatasan
kemampuan penyusun, untuk itu masukan yang bersifat membangun akan sangat
membantu penyusun untuk semakin membenahi kekurangannya.
Ucapan
terima kasih tidak lupa saya haturkan
kepada dosen pembimbing mata kuliah ini yaitu Bapak Dede Irawan, M.Kom , semoga makalah ini dapat berguna
sebagai karya dari kita dan untuk semua. Amiin….
Penyusun
Kuningan, 15
Januari 2020
DAFTAR
ISI
HALAMAN JUDUL
KATA PENGANTAR
DAFTAR ISI
BAB 1 PENDAHULUAN
1.1 Latar
Belakang
1.2 Rumusan Masalah
1.3 Tujuan Penulisan
BAB 2 ISI
2.1 Pengantar Animasi dalam Program Java
2.2 Hasil
Praktikum dan Analisis
2.3 Latihan / Post Test
KESIMPULAN
DAFTAR
PUSTAKA
BAB 1
PENDAHULUAN
1.1
Latar Belakang
Animasi adalah tampilan
objek yang bergerak. Animasi dapat berupa objek 2D ataupun 3D. Java menyediakan
semua fasilitas yang dibutuhkan untuk membuat animasi 2D maupun 3D.
1.2
Rumusan Masalah
1.
Bagaimana hasil dari praktikum dan analisisnya ?
2.
Bagaimana program dari latihan / pos test ?
1.3
Tujuan Penulisan
Tujuan dari penulisan makalah
ini agar mahasiswa dapat membuat animasi 2D sederhana menggunakan Java.
BAB 2
ISI
2.1 Pengantar Java Grafis
Dengan kemampuan dari kelas graphics yang dimiliki Java dalam class
libraries, maka dimungkinkan untuk dapat membangun bidang lines, shape,
character, warna dan image pada suatu applet. Anda tidak harus menciptakan
sebuah instance dari Graphics yang tujuannya adalah untuk membangun sesuatu di
applet; pada applet anda metode paint() menyediakan objek-objek dari kelas
Graphics. Kelas Graphics adalah bagian dari paket java.awt
dengan demikian apabila Anda membangun suatu bidang pada applet, pastikan bahwa
Anda harus melakukan import pada class tersebut dan diletakkan pada bagian awal
dari file java
Kelas java.awt.Graphics digunakan untuk lukisan
adat. Ini mengelola konteks grafis (seperti warna, font dan area klip) dan
menyediakan metode untuk merender tiga jenis objek grafis :
-
Teks : via drawString() .
-
Primitif dan bentuk vektor vektor: melalui drawXxx() dan fillXxx() untuk
Line , PolyLine , Oval , Rect , RoundRect , 3DRect , dan Arc .
-
Gambar bitmap: via drawImage() .
Kelas Graphics juga memungkinkan Anda untuk
mendapatkan / mengatur atribut dari konteks grafis :
-
Font ( setFont() , getFont() )
-
Warna ( setColor() , getColor() )
-
Area kliping tampilan ( getClip() , getClipBounds() , setClip() )
Untuk membangun sebuah objek pada layar,
memanggil salah satu dari metode yang tersedia didalam kelas Graphics. Pada
semua metode drawing memiliki argumen yang mewakili titik-akhir, titik-sudut
dan titik-awal dari sebuah objek yang berisi nilai-nilai dalam sistem koordinat
yang membangun grafik, sebagai contoh : suatu garis dimulai dari titik-awal
(10,10) dan titik-akhir (20,20). Sistem koordinat pada java selalu dimulai
dari titik (0,0) yang diposisikan pada sudut kiri atas. Nilai x positif
berada di kanan dan nilai y positif berada di bawah. Semua nilai piksel
bertipe integer (tidak ada piksel dengan nilai partial dan fractional).
Java merupakan bahasa yang cross platform, dan sudah
menyediakan primitif grafik 2D dan secara opsional grafik 3D. Java cukup mudah
dipelajari, dan bisa mengakses mode grafik dalam lingkungan manapun (X Window,
GDI Windows, dll). Java juga sudah
digunakan sebagai sarana
pembantu dalam banyak
mata kuliah, termasuk juga pemrograman sistem terdistribusi dan sistem
operasi. Selain operasi grafik dasar, Java juga mendukung pemrosesan grafik 2D
melalui kelas-kelas Java2D dan pemrosesan grafik 3D melalui paket tambahan
(bukan standar) Java3D. Dalam hal Java3D ini
tidak dibahas di
dalam diktat ini,
namun informasi mengenai hal tersebut dapat dicari dalam dokumentasi
yang disertakan. Pada grafik java dasar, terdapat beberapa objek grafik yang
nilai koordinat pada grafik itu adalah bilangan bulat (integer).
2.2 Praktikum dan Analisis
Program:
package modul10;
import java.awt.*;
import java.awt.image.BufferedImage;
import java.util.Timer;
import java.util.TimerTask;
public class Latihan_01 extends javax.swing.JFrame {
private
static int waktu = 100;
Image
gambar;
Dimension
ukuran;
Insets
insets;
Color
color [] = {Color.RED, Color.GREEN, Color.BLUE};
public
Latihan_01() {
initComponents();
setTitle("Animasi Warna");
setLocationRelativeTo(null);
}
@Override
public
void paint (Graphics g) {
if
((ukuran==null)||(ukuran!=getSize())) {
ukuran=getSize();
gambar=new BufferedImage (getWidth(), getHeight(),
BufferedImage.TYPE_INT_RGB);
}
if(insets == null) {
insets = getInsets ();
}
int x =
insets.left;
int y =
insets.top;
int widht
= getWidth() - insets.left - insets.right;
int
height = getHeight() - insets.top - insets.bottom;
int
start = 0 ;
int
steps = color.length;
int
stepSize = 360 / steps;
synchronized (color){
Graphics tampil_gambar = gambar.getGraphics();
tampil_gambar.setColor(Color.WHITE);
tampil_gambar.fillRect(x, y, widht, height);
for
(int i=0; i<steps; i++) {
tampil_gambar.setColor(color[i]);
tampil_gambar.fillArc(x,
y, widht, height, start, stepSize);
start += stepSize;
}
}
g.drawImage(gambar, 0, 0, this);
}
public
void jalan () {
TimerTask task = new TimerTask () {
public void run () {
Color c = color [0];
synchronized (color){
System.arraycopy(color, 1, color, 0, color.length - 1);
color [color.length - 1] = c;
}
repaint ();
}
};
Timer timer = new Timer();
timer.schedule(task, 0, waktu);
}
@SuppressWarnings("unchecked")
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
Latihan_01 tampil = new Latihan_01();
tampil.setVisible(true);
tampil.jalan();
}
});
}
}
|
Output:
2.3 Post Test
Berikan contoh animasi sederhana dengan menggerakan
gambar horizontal maupun vertical.
Program:
package modul10;
import java.awt.*;
import javax.swing.*;
public class post_test extends JPanel {
int x = 0;
int y = 0;
@Override
public void
paint(Graphics g){
super.paint(g);
//gerak sudut
g.setColor(Color.BLUE);
g.fillRect(100+x, 100+x, 50, 50);
//gerak vertikal
g.setColor(Color.RED);
g.fillOval(20+x, 200, 50, 50);
//gerak horizontal
g.setColor(Color.GREEN);
g.fillOval(100, 10+x, 50, 50);
//gerak lingkaran
g.setColor(Color.YELLOW);
g.fillRect(5+x, 300-x, 50, 50);
}
void gerak(){
x++;
if(x == 500){
x = 0;
}
}
public static
void main(String[] args) throws InterruptedException{
JFrame f = new JFrame();
f.setSize(500, 500);
f.setVisible(true);
f.setTitle("POST TEST - FARADILA");
f.setLocationRelativeTo(null);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
post_test a = new post_test();
f.add(a); //menambahkan JPanel
while(true){
a.gerak();//memanggil gerak
a.repaint();//menggambar ulang objek
Thread.sleep(5);
}
}
}
|
Output:
KESIMPULAN
Jadi dengan Java Grafis kita bisa membuat berbagai bentuk program grafis
seperti Games, Aplikasi Grafis, Animasi dan lain-lain.
DAFTAR PUSTAKA
Buku Modul Bahasa Pemrograman 1
Tidak ada komentar:
Posting Komentar