Tutorial Grafkom Membuat Animasi Menggunakan JAVA 2D ( ANIMASI 1 )


Kali ini kami akan mencoba menjelaskan tentang bagaimana cara untuk membuat Animasi menggunakan Java Netbeen. Tak usah banyak basa basi lagi mari ikuti Langkah - langkah berikut :
1. Yang pertama perlu kita lakukan adalah kita buat file.java
2. Lalu kita isikan dengan scriptnya, sebagai berikut :


package ball;
import java.awt.*;
import java.awt.event.*;
import java.awt.font.FontRenderContext;
import java.awt.font.GlyphVector;
import java.awt.geom.*;
import java.util.*;
import javax.swing.*;

/**
 *
 * @author Riza
 */
public class Ball extends JFrame{

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        // TODO code application logic here
        new Ball();
    }
  
public Ball() {
    this.setSize(500, 500); // MEMBUAT WINDOS
    this.setTitle("RIO EKA RETANDI");//MEMBERI JUDUL TITLE
    this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    this.add(new PaintSurface(), BorderLayout.CENTER);
    Thread t = new AnimationThread(this); // MENJALANKAN THREAD TERHADAP VARIABLE
    t.start();
    this.show();
    }

    }

class AnimationThread extends Thread {
    JFrame c;

public AnimationThread(JFrame c){
    this.c = c;
}

public void run(){
    while(true){
    c.repaint();
    try{
    Thread.sleep(30); // FRAME GAMBAR PERDETIK
    }
    catch(InterruptedException ex){
    }
    }

   }
}
class PaintSurface extends JComponent{
    double x_p = 100;
    double y_p = 100;
    int rotation = 0;
    double angle = 0;

public void paint(Graphics g){
    Graphics2D g2 = (Graphics2D)g; // MEMBERI VARIABLE G PADA GRAPHIC KE G2
    g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
   
    g2.setPaint(new GradientPaint(20,0, Color.green,0, getHeight(), Color.ORANGE));  // warna background gradasi
    g2.fillRect(0,0,getWidth(),getHeight());

    Shape ellipse = new Ellipse2D.Double(150,100,200,200);
    GradientPaint paint = new GradientPaint(100, 100, Color.WHITE, 400,400, Color.GRAY);  // bulatan tengah
    g2.setPaint(paint);
    g2.fill(ellipse);
    AlphaComposite ac = AlphaComposite.getInstance(AlphaComposite.SRC_OVER, (float) 0.4f );
    g2.setComposite(ac);
    g2.setColor(Color.blue); // pewarnaan kata
    Font font = new Font("Serif", Font.BOLD, 120); // pengaturan font untuk huruf
    g2.setFont(font);
    g2.drawString("RIO", 120, 200);  // penulisan huruf rio dan tata letak
    FontRenderContext frc = g2.getFontRenderContext();
    GlyphVector gv = font.createGlyphVector(frc, "2D"); // penulisan 2d
    Shape glyph = gv.getOutline(150, 300); // letak vertikal tulisan 2D
    g2.rotate(Math.PI/6, 200, 300);   //letak horizontal posisi tulisan 2D
    g2.fill(glyph);
    if(rotation == 360) { // rotasi 2D
    rotation = 0;
}
else {
    rotation += 10; // PERTTAMBAHAN PERCEPATAN ROTASI
    angle -= 0.05;
    x_p = 100*Math.cos(angle)+200; // MEREVOLUSI OBYEK
    y_p = 100*Math.sin(angle)+200;
}

    Shape ball = new Ellipse2D.Float((int)x_p,(int)y_p, 50, 20); // FUNGSI MEMBENTUK ELIPS
    g2.rotate(Math.toRadians(rotation), x_p + 50/2, y_p + 10/2); // MEROTASI OBYEK
    g2.setColor(Color.magenta); // MEMBERI WARNA OBYEK
    g2.fill(ball); // MENGAMBAR ball nya yang mutar
}
}

3. Run project F6


Semoga tutorial yang kami bagi ini dapat membantu sobat sekalian.
SELAMAT BELAJAR

1 Response to "Tutorial Grafkom Membuat Animasi Menggunakan JAVA 2D ( ANIMASI 1 ) "