منتدى مصر التقني
هل تريد التفاعل مع هذه المساهمة؟ كل ما عليك هو إنشاء حساب جديد ببضع خطوات أو تسجيل الدخول للمتابعة.

بليز اشرحوا لي

اذهب الى الأسفل

بليز اشرحوا لي Empty بليز اشرحوا لي

مُساهمة من طرف حياة الشقا الثلاثاء أبريل 28, 2015 1:46 pm

مو فاهمة ولاشيء في البرنامج لو سمحتوا اشرحوا للي هالبرنامج Embarassed








// Program to Draw Line Using Digital Differential Analyzer Algorithm
// Program Name -  dda.cpp
#include <GL/glut.h>
#include <GL/gl.h>
#include <stdlib.h>
#include <iostream.h>
#include <math.h>
void init (void)
{
                glClearColor (1.0, 1.0, 1.0, 0.0);       // Set display-window color to white.
                glMatrixMode (GL_PROJECTION);         // Set projection parameters.
                gluOrtho2D (0.0, 200.0, 0.0, 150.0);
}
inline int round (const float a)
{
                                return int (a + 0.5);
}
void setPixel(GLint xCoordinate, GLint yCoordinate)
{
                glBegin(GL_POINTS);
                glVertex2i(xCoordinate, yCoordinate);
                glEnd();
                glFlush(); //process all OpenGL functions as quickly as possible
}
void lineDDA (void)
{
                                glClear (GL_COLOR_BUFFER_BIT);           // Clear display window.
glColor3f (0.0, 0.0, 1.0);
int x0 = 6;
int y0 = 9;
int xEnd = 11;
int yEnd = 12;
int dx = xEnd - x0,             dy = yEnd - y0,  steps,  k;
float xIncrement, yIncrement, x = x0, y = y0;
if (fabs (dx) > fabs (dy))  steps = fabs (dx);
else    steps = fabs (dy);
xIncrement = float (dx) / float (steps);
yIncrement = float (dy) / float (steps);
setPixel(round(x),round(y));
for (k = 0; k < steps; k++)
                                {
                                                x += xIncrement;
                                                y += yIncrement;
                                                cout<<"X= "<<x<<" Y="<<y<<endl;
                                                setPixel(round(x),round(y));
                }  }
void setPixel(GLint xCoordinate, GLint yCoordinate)
{
                                glBegin(GL_POINTS);
                                glVertex2i(xCoordinate, yCoordinate);
                                glEnd();   glFlush();                          //process all OpenGL functions as quickly as possible
}
main (int argc, char** argv)
{
                glutInit (&argc, argv);                                                            // Initialize GLUT.
                glutInitDisplayMode (GLUT_SINGLE | GLUT_RGB);         // Set display mode.
                glutInitWindowPosition (50, 100);                                            // Set top-left display-window position.
glutInitWindowSize (400, 300);
 
glutCreateWindow ("An Example OpenGL Program");                  .
init ( );                                                                                                  .
glutDisplayFunc (lineDDA);
glutMainLoop ( );                                                             .
حياة الشقا
حياة الشقا
..
..

تاريخ التسجيل : 26/11/2012
المساهمات : 17
النقاط : 30
التقيم : 1
الدولة : السعودية
الجنس : انثى

الرجوع الى أعلى الصفحة اذهب الى الأسفل

بليز اشرحوا لي Empty رد: بليز اشرحوا لي

مُساهمة من طرف حياة الشقا الثلاثاء أبريل 28, 2015 1:48 pm

تكفون خلال هاليومين  Embarassed
حياة الشقا
حياة الشقا
..
..

تاريخ التسجيل : 26/11/2012
المساهمات : 17
النقاط : 30
التقيم : 1
الدولة : السعودية
الجنس : انثى

الرجوع الى أعلى الصفحة اذهب الى الأسفل

بليز اشرحوا لي Empty رد: بليز اشرحوا لي

مُساهمة من طرف زهراء الثلاثاء أبريل 28, 2015 9:02 pm

للاسف اختى الكريمة هذا برنامج بلغة السى بلس بلس لرسم خط باستخدام خوارزمية (DDA) الرقمية ولا يوجد بالمنتدى من له الخبرة الكافية فى السى بلس بلس لشرح هذا المثال
زهراء
زهراء
........
........

تاريخ التسجيل : 18/02/2011
المساهمات : 438
النقاط : 769
التقيم : 67
الدولة : مصر
الجنس : انثى

الرجوع الى أعلى الصفحة اذهب الى الأسفل

الرجوع الى أعلى الصفحة

ََ

مواضيع ذات صلة


 
صلاحيات هذا المنتدى:
لاتستطيع الرد على المواضيع في هذا المنتدى