1. Latar Belakang 2. Tujuan

dokumen-dokumen yang mirip
dimensi dimana terdapat banyak method yang sudah disediakan oleh Java seperti ketika menangani pengujian tabrakan, menampilkan bound berupa

Graphics2D dan Geometry

1. Latar Belakang Didalam pembuatan game java sering kali kita mendefinisikan banyak object seperti gambar, dan grafik geometri yang begitu banyak,

BINA NUSANTARA UNIVERSITY NATA LASE

Modul 2. [access specifier] [tipe data] [nama variabel];

A. TUJUAN PEMBELAJARAN

Tutorial A Menggambar Bendera Merah Putih Pada Frame

IF PEMROGRAMAN LANJUT EVENT. Oleh : Andri Heryandi, M.T.

BAB II VARIABEL DAN TIPE DATA

2 TIPE DATA DAN VARIABEL

A. TUJUAN PEMBELAJARAN

MODUL 7 - EXCEPTION HANDLING

Membuat Menu Login Sederhana [Full Coding]

Membuat Kalkulator dengan Java

BAHASA PEMROGRAMAN JAVA

LAPORAN PRAKTIKUM PEMROGRAMAN DASAR TIPE-TIPE FUNGSI ATAU METHOD

PEMROGRAMAN JAVA : VARIABEL DAN TIPE DATA

IF PEMROGRAMAN LANJUT EXCEPTION. Oleh : Andri Heryandi, M.T.

MODUL III ARRAYLIST TUGAS PENDAHULUAN

Identifier, Keywords, Variabel, Tipe Data Primitif dan Operator PBO. Ramos Somya

1. Mana diantara pilihan-pilihan berikut ini yang merupakan penulisan loop yang benar?

PERTEMUAN III OBJEK DAN CLASS TUJUAN PRAKTIKUM

BAB I PENDAHULUAN. Listing 1.1 menunjukkan program GUI Java sederhana menggunakan AWT. import java.awt.*; import java.awt.event.*;

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LAB SHEET PEMROGRAMAN JAVA 2

GUI (Grapichal User Interface)

AWT (ABSTRACT WINDOWS TOOLKITS)

BAB 2 DASAR-DASAR GRAFIK 2D

PERCOBAAN 1 : Ketik program di bawah ini, bila terjadi kasalahan waktu compile dan runtime, betulkan!

Anonymous Inner Class

Pemrograman Berorientasi Obyek (IT251) Ramos Somya, S.Kom., M.Cs.

Badiyanto, S.Kom., M.Kom. PBO java

Didalam menampilkan peta yang sudah kita buat, kita akan menggunakan Slick2D sebagai sebuah frameworknya.

4.1 WARNA Ketika objek geometri dibangun, objek tersebut dapat digambar dengan method fill(shape) atau

MODUL PRAKTIKUM KE 3 A.

PEMAHAMAN DASAR DASAR JAVA

Aplikasi Grafik Menggunakan Netbeans

Belajar Set Currency Format di TextField Java

1.Tujuan. 2. Latar Belakang

Politeknik Elektronika Negeri Surabaya

DASAR PEMOGRAMAN JAVA

BAB IX. USER INTERFACE

A. TUJUAN PEMBELAJARAN 1. Mengetahui cara menangani exception dengan cara melempar exception. 2. Mengetahui cara membuat sendiri class exception.

Membuat Frame, Label, TextField dan Button di Java [Full Coding]

APLIKASI PERHITUNGAN NILAI MAHASISWA. Untuk membuat aplikasi nilai mahasiswa, langkah-langkahnya adalah sebagai berikut :

Abstract Class dan Interface. Viska Mutiawani, M.Sc

Konsep Lanjut Pemrograman Objek

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LAB SHEET PEMROGRAMAN 2

PEWARISAN D E W I S A R T I K A, M. K O M

Pertemuan 2 (2) : Membuat Class dan mengakses Anggota Class

Materi : GUI AWT & SWING.

KA2173 Pemrograman Berorientasi Objek. 10 BAB X PENGAKSESAN DATABASE. H a l 64

PERTEMUAN 3 OBJEK DAN CLASS

P 5 Bab 4 : GUI (Graphical User Interface) 4.1 Tujuan. 4.2 Materi. 4.3 Review OOP. : Suzuki, Ferari, Toyota, Honda, Jaguar

Pemrograman Java. Pertemuan VIII By: Augury

Elemen Dasar Dalam Bahasa Java

LAB02 : KODING PROGRAM

TUGAS PEMROGRAMAN BERBASIS JAVA ADARA HIJAB

IF PEMROGRAMAN LANJUT PERCABANGAN. Oleh : Andri Heryandi, M.T.

Praktikum JTable. Gambar 1

IF PEMROGRAMAN LANJUT PERULANGAN. Oleh : Andri Heryandi, M.T.

Permainan Remi Sederhana

Topik. 1. Statement if 2. Statement if..else.. 3. Statement if..else.. If (bertingkat ) 4. Penggunaan Input Keyboard

LAB PEMROGRAMAN I (JAVA FUNDAMENTAL) PERTEMUAN 3 Dosen : Bella Hardiyana S. Kom

PERTEMUAN 2 ARRAY, PERCABANGAN, DAN PERULANGAN

Input Nilai tanpa Case String di Java

Exception adalah penanda bahwa kondisi/kejadian yang tidak diinginkan telah terjadi pada program kita. Ada 2 jenis exception (+1 Error):

BAB 1 KONSEP DASAR JAVA

Metode Binnary Searching di Java Console

Pengenalan APLIKASI DATABASE

Pemrograman Berbasis Java PERSEWAAN PELAMPUNG. Riska Nony Oktaviani Kelas 21 Teknik Informatika Teknologi Informasi

Dasar Perancangan Graphical User Interface

Membuat dan Menggunakan Class

Modul Praktikum 9 BAB IX LAYOUTING. Departemen Teknologi Informasi Telkom Applied Science School H a l

MODUL PRAKTIKUM PEMROGRAMAN BERORIENTASI OBJEK

Percabangan & Perulangan

BAB IV IMPLEMENTASI DAN PENGUJIAN

MODUL PRAKTIKUM BERORIENTASI OBJEK NINF615 SEMESTER GASAL 2016/2017 PROGRAM STUDI S1 TEKNIK INFORMATIKA

Perulangan / Looping

Pemrograman Berorientasi Object

Fajar Yusran Zebua DASAR ANIMASI

if (ekspresi_boolean) { Pernyataan1; } else { Pernyataan2; }

A. TUJUAN PEMBELAJARAN

Percabangan dan Perulangan

Pertemuan III [STRUKTUR KONTROL] CariGrade.java Program mencari grade nilai menggunakan struktur control if-else

Bahasa Pemrograman :: Dasar Pemrograman Java

MEMBUAT APLIKASI ZODIAK SEDERHANA DENGAN JAVA BY : INDRA

KENDALI PROSES. Untuk mengatur arus program, pemrograman java menyediakan struktur perulangan (looping), kondisional, percabangan, dan lompatan.

MODUL 9 EXCEPTION HANDLING

BAB 3 TYPE DATA, VARIABLE DAN OPERATOR

KA2173 Pemrograman Berorientasi Objek. 9 BAB IX PEMROGRAMAN GUI: SWING. H a l 56

MATERI PRAKTIKUM 2 ARRAY

Mendapatkan Input Dari Keyboard

1. Latar Belakang 2. Tujuan

A. TUJUAN PEMBELAJARAN 1. Mengenal berbagai macam bentuk operator 2. Memahami penggunaan berbagai macam jenis operator yang ada di Java

LISTING PROGRAM. Program animasi Frame by Frame dalam bahasa pemrograman Java

2.1 if Jenis-jenis Percabangan if adalah if, if else, If else if else if - else

PEMROGRAMAN SOCKET LANJUTAN

SISTEM INFORMASI PENJUALAN SATE BERBASIS JAVA. Disusun oleh : Rahmat Hidayat

Transkripsi:

1. Latar Belakang Grafik vektor banyak sekali digunakan pada pembuatan game-game 2 Dimensi dimana terdapat banyak method-method yang sudah disediakan oleh Java seperti ketika kita ingin menangani pengujian tabrakan, menampilkan bound berupa rectangle dan masih banyak lagi. Grafik vektor merupakan pelajaran dasar yang harus dipelajari sebelum memasuki pembahasan grafik bitmap. pada bab ini juga dibahas masalah tentang penanganan grafis full screen dimana game yang akan kita buat dapat dimainkan dalam satu layar penuh. 2. Tujuan Setelah mempelajari lab activity ini peserta diharapkan dapat: Mengetahui fungsi dari class Shape. Menggambar garis menggunakan class Graphics2D. Mengetahui perbedaan antara Rectangle2D dan RoundRectangle2D. Menggambar menggunakan Arc2D. Memahami fungsi dari Polygon. Membuat tampilan mode Full-Screen Menjalankan dan menutup mode Full-screen 1 Page

3. Percobaan Percobaan 1: Membuat Class PercobaanJava2D import javax.swing.jframe; import java.awt.*; import java.awt.geom.*; public class PercobaanJava2D extends JFrame{ Shape Shape Shape Shape garis, garis1; rect,rect1; round_rect,round_rect1; ellipse; public static void main(string args[]){ PercobaanJava2D p=new PercobaanJava2D(); PercobaanJava2D(){ settitle("percobaan Java2D"); garis = new Line2D.Float(50,50,150,150); // Menggunkan Point2D untuk menggambar garis Point2D awal=new Point2D.Float(200,50); Point2D akhir=new Point2D.Float(300,150); garis1 = new Line2D.Float(awal, akhir); round_rect = new RoundRectangle2D.Float(320,50,100,100,20,20); round_rect1 = new RoundRectangle2D.Float(430,50,100,100,20,20); rect = new Rectangle2D.Float(50,200,100,100); rect1 = new Rectangle2D.Float(200,200,100,100); ellipse = new Ellipse2D.Float(330,200,200,100); setsize(600,400); setvisible(true); setdefaultcloseoperation(this.exit_on_close); public void paint(graphics g){ Graphics2D g2d=(graphics2d)g; g2d.draw(garis); g2d.draw(garis1); g2d.setcolor(color.blue); g2d.draw(rect); g2d.fill(rect1); g2d.setcolor(color.red); g2d.draw(round_rect); g2d.fill(round_rect1); g2d.setcolor(color.yellow); g2d.fill(ellipse); 2 Page

Percobaan 2 : Class PercobaanArc2d import javax.swing.jframe; import java.awt.*; import java.awt.geom.*; public class PercobaanArc2d extends JFrame { Shape arc1,arc2,arc3,arc4,arc5,arc6; public static void main(string args[]){ PercobaanArc2d p=new PercobaanArc2d(); PercobaanArc2d(){ settitle("percobaan ARC 2 Dimensi"); arc1 = new Arc2D.Float(20,50,100,100,30,270,Arc2D.PIE); arc2 = new Arc2D.Float(120,50,100,100,30,270,Arc2D.OPEN); arc3 = new Arc2D.Float(220,50,100,100,30,270,Arc2D.CHORD); arc4 = new Arc2D.Float(20,170,100,100,30,270,Arc2D.PIE); arc5 = new Arc2D.Float(120,170,100,100,30,270,Arc2D.OPEN); arc6 = new Arc2D.Float(220,170,100,100,30,270,Arc2D.CHORD); setsize(400,300); setvisible(true); setdefaultcloseoperation(this.exit_on_close); public void paint(graphics g){ Graphics2D g2d=(graphics2d)g; g2d.setcolor(color.orange); g2d.draw(arc1); g2d.draw(arc2); g2d.draw(arc3); g2d.setcolor(color.red); g2d.fill(arc4); g2d.setcolor(color.blue); g2d.fill(arc5); g2d.setcolor(color.yellow); g2d.fill(arc6); 3 Page

Percobaan 3 : Pembuatan class PercobaanPoligon import javax.swing.jframe; import java.awt.*; import java.awt.geom.*; public class PercobaanPoligon extends JFrame { Polygon poligon,poligon1; public static void main(string args[]){ PercobaanPoligon p=new PercobaanPoligon(); PercobaanPoligon(){ settitle("percobaan Poligon"); int titikx[] = {200,100,130,270,300; int titiky[] = {50,150,270,270,150; poligon= new Polygon(titikX, titiky, titikx.length); for(int i=0;i<titiky.length;i++){ titiky[i]=titiky[i]+300; poligon1=new Polygon(titikX, titiky, titikx.length); setsize(400,600); setvisible(true); setdefaultcloseoperation(this.exit_on_close); public void paint(graphics g){ Graphics2D g2d=(graphics2d)g; g2d.setcolor(color.blue); g2d.draw(poligon); g2d.setcolor(color.green); g2d.fill(poligon1); 4 Page

Percobaan 4 : membuat class ScreenManager dan class TestFullScreen import java.awt.*; import javax.swing.jframe; public class ScreenManager { private GraphicsDevice device; public ScreenManager() { GraphicsEnvironment environment = GraphicsEnvironment.getLocalGraphicsEnvironment(); device = environment.getdefaultscreendevice(); private static final DisplayMode Mode_Pilihan[] = { new DisplayMode(1024, 768, 32, 0), new DisplayMode(1024, 768, 24, 0), new DisplayMode(1024, 768, 16, 0), new DisplayMode(800, 600, 32, 0), new DisplayMode(800, 600, 24, 0), new DisplayMode(800, 600, 16, 0), new DisplayMode(640, 480, 32, 0), new DisplayMode(640, 480, 24, 0), new DisplayMode(640, 480, 16, 0) ; public DisplayMode setresolusilayar(int nilai){ if(nilai >=9)nilai=0; DisplayMode sistemmode[] = device.getdisplaymodes(); for (int j = 0; j < sistemmode.length; j++) { if (perikasdisplaymode(mode_pilihan[nilai], sistemmode[j])) { return Mode_Pilihan[nilai]; return null; public DisplayMode getcurrentdisplaymode() { return device.getdisplaymode(); public boolean perikasdisplaymode(displaymode mode1,displaymode mode2) { if (mode1.getwidth()!= mode2.getwidth() mode1.getheight()!= mode2.getheight()) { return false; if (mode1.getbitdepth()!= DisplayMode.BIT_DEPTH_MULTI && mode2.getbitdepth()!= DisplayMode.BIT_DEPTH_MULTI && mode1.getbitdepth()!= mode2.getbitdepth()) { return false; 5 Page

if (mode1.getrefreshrate()!= DisplayMode.REFRESH_RATE_UNKNOWN && mode2.getrefreshrate()!= DisplayMode.REFRESH_RATE_UNKNOWN && mode1.getrefreshrate()!= mode2.getrefreshrate()) { return false; return true; public void setfullscreen(displaymode displaymode,jframe frame) { if(device.isfullscreensupported()){ frame.setdefaultcloseoperation(jframe.exit_on_close); frame.setundecorated(true); frame.setresizable(false); device.setfullscreenwindow(frame); if(displaymode!= null && device.isdisplaychangesupported()){ try { device.setdisplaymode(displaymode); catch (IllegalArgumentException ex) { else{ System.out.println("System Operasi tidak mendukung Mode Fullscreen"); public void tutupscreen() { Window window = device.getfullscreenwindow(); if (window!= null) { window.dispose(); device.setfullscreenwindow(null);

import java.awt.*; import javax.swing.imageicon; public class TestFullScreen{ public static void main(string args[]) { TestFullScreen test = null; test = new TestFullScreen(); test.cobafullscreen(); private ScreenManager screen; public void cobafullscreen() { screen = new ScreenManager(); try { DisplayMode displaymode = screen.setresolusilayar(7); screen.setfullscreen(displaymode,new PercobaanJava2D()); finally { // screen.tutupscreen();