skip to main |
skip to sidebar

Minggu, Mei 24, 2015

Blogger
Komputer Grafik
Membuat Garis Miring Menggunkan Algoritma DDA
Berikut Ini Coding nya :
#include<GL/glut.h>
#include<stdlib.h>
#include<math.h>
#include<iostream.h>
void setPixel(int px,int py)
{
glBegin(GL_POINTS);
glVertex2i(px,py);
glEnd();
}
void algoritmaDDA(int x1,int y1,int x2,int y2)
{
int dy=y2-y1;
int dx=x2-x1;
float t=(float)0.5;
if(abs(dx)>abs(dy))
{
float m = (float) dy /(float) dx;
t +=y1;
dx=(dx<0)? -1 : 1;
m*=dx;
while (x1 != x2)
{
x1 +=dx;
t +=m;
setPixel(x1,(int)t);
}
}
else
{
float m=(float) dx / (float) dy;
t +=x1;
dy=(dy<0) ? 1 : 1;
m +=dy;
while(y1!=y2)
{
y1 +=dy;
t +=m;
setPixel((int)t,y1);
}
}
}
void display()
{
glClear(GL_COLOR_BUFFER_BIT);
glColor3f(1.0,0.0,0.0);
glPointSize(4.0);
algoritmaDDA(120,100,210,250);
glFlush();
}
void init(void)
{
glClearColor(1.0,1.0,1.0,0.0);
glMatrixMode(GL_PROJECTION);
gluOrtho2D(0.0,700.0,0.0,500.0);
}
int main(int argc,char**argv)
{
glutInit(&argc,argv);
glutInitDisplayMode(GLUT_SINGLE|GLUT_RGB);
glutInitWindowSize(600,500);
glutInitWindowPosition(0,0);
glutCreateWindow("Digital Differential Analyzer Algoritm");
init();
glutDisplayFunc(display);
glutMainLoop();
return 0;
}
======= :)Selamat Mencoba Semoga Ilmu Ini Bermanfaat :)=======
0 komentar:
Posting Komentar