About

Website Dalam Masa Perbaikan

SELAMAT MENIKMATI ILMU YANG BERMANFAAT

Pages

Minggu, 24 Mei 2015

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:

Twitter Delicious Facebook Digg Stumbleupon Favorites More

 
Powered by Blogger