You are on page 1of 4

TUGAS INDIVIDU GRAFIKA KOMPUTER

DOSEN : ELVIA BUDIANITA, ST, M.Cs

2017
1. Jika ada 2 buah titik K(4, 6) dan L(10, 10 ) yang dihubungkan dan membentuk sebuah garis,
bagaimanakah penggambarannya dengan menggunakan metode DDA dan Bressenham ?
2. Gambarkan lingkaran dengan persamaan berikut :
a) X2 +Y2 = 36
b) (X-3)2 + (Y-2)2 = 25
3. Buatlah program membuat garis berikut menggunakan bahasa pemrograman dan tampilkan
outputnya.!

import java.awt.Color;

import java.awt.Graphics;

import java.awt.Graphics2D;

import javax.swing.JPanel;

import javax.swing.JFrame;

import javax.swing.JOptionPane;

public class garis_bras extends JPanel {

private int x0,y0,x1,y1 ;

// xa =10;ya=10;xb=200;yb=10;

public garis_bras() {

// repaint();

public garis_bras(int x0, int y0, int x1, int y1) {

setX0(x0);

setY0(y0);

setX1(x1);

setY1(y1);

}
public void paintLine (int x0, int y0, int x1, int y1){

JFrame frame = new JFrame("Bressenham");

// frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

frame.add(new garis_bras( x0,y0,x1,y1));

frame.setSize(250, 200);

frame.setLocationRelativeTo(null);

frame.setVisible(true);

/**

*/

// private static final long serialVersionUID = 1L;

@Override

public void paintComponent(Graphics g){

super.paintComponent(g);

Graphics2D g2d = (Graphics2D) g;

g2d.setColor(Color.blue);

int dx,dy,x,y, xEnd, p;

dx = Math.abs(getX0() - getX1());

dy = Math.abs(getY0() - getY1());

p = 2 * dy - dx;

if ( getX0() > getX1() ){

x = getX1();

y = getY1();

xEnd = getX0();

else{

x = getX0();

y = getY0();

xEnd = getX1();
}

g2d.drawLine(Math.round(x), Math.round(y),Math.round(x),Math.round(y));

while ( x < xEnd){

x += 1 ;

if (p < 0){

p += 2 * dy;

..................(SEMPURNAKAN)

g2d.drawLine(Math.round(x), Math.round(y),Math.round(x),Math.round(y));

public int getX0() {

return x0;

public void setX0(int x0) {

this.x0 = x0;

public int getY0() {

return y0;

public void setY0(int y0) {

this.y0 = y0;

public int getX1() {

return x1;

public void setX1(int x1) {

this.x1 = x1;
}

public int getY1() {

return y1;

public void setY1(int y1) {

this.y1 = y1;

public static void main(String[] s) {

garis_bras ln = new garis_bras();

ln.paintLine(100, 100, 200,100);

You might also like