Senin, 09 Juli 2012
Program Java Bikin Garis_Bresenham
import java.awt.*;
import javax.swing.*;
public class Garis_Bresenham extends JPanel{
int x0,y0,x1,y1;
public void garismu(int x0, int y0, int x1, int y1,Graphics g) {
int x,y,xend;
this.x0=x0;
this.y0=y0;
this.x1=x1;
this.y1=y1;
int dx = Math.abs(x1-x0);
int dy = Math.abs(y1-y0);
int p = 2*dy-dx;
int duady = 2*dy;
int duadydx = 2*(dy-dx);
if (x0>x1) {
x = x1;
y = y1;
xend = x0;
} else {
x = x0;
y = y0;
xend = x1;
}
g.drawRect(x, y, 1, 1);
while(x<xend) {
x++;
if(p<0) {
p+=duady;
}
else {
if (y0>y1) {
y--; } else y++;
p+=duadydx;
}
g.drawRect(x, y, 1, 1);
try{
Thread.sleep(2);
}catch (InterruptedException ie){
System.out.println(ie.getMessage());
}
}
}
public void paint(Graphics g){
garismu(1,1,700,700,g );
}
public static void main(String[] args) {
// TODO code application logic here
JFrame frame = new JFrame("algoritma garis DDA");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Garis_Bresenham grs = new Garis_Bresenham ();
grs.setBackground(Color.WHITE);
frame.add(grs);
frame.setSize(800,600);
frame.setVisible(true);
}
}
Langganan:
Posting Komentar (Atom)
Tidak ada komentar:
Posting Komentar