الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

إلى كل خبراء open gl ممكن شرح الكود التالي

مغلق
بدأه عبد الله بخاري في 30 أبريل 2007 · 0 رد · 1,011 مشاهدة · في OpenGL
مشاركة: واتساب X فيسبوك تيليجرام
#1

هذا برنامج يرسرم بالماوس إذا كنت ضاغط على حرف C من الكيبورد وحركت الماوس

ممكن شرح الكود

#include <GL/glut.h>

GLsizei winWidth = 400, winHeight = 300; // Initial display-window size.

void init (void)

{

glClearColor (0.0, 0.0, 1.0, 1.0); // Set display-window color to blue.

glMatrixMode (GL_PROJECTION);

gluOrtho2D (0.0, 200.0, 0.0, 150.0);

}

void displayFcn (void)

{

glClear (GL_COLOR_BUFFER_BIT); // Clear display window.

glColor3f (1.0, 0.0, 0.0); // Set point color to red.

glPointSize (10.0); // Set point size to 3.0.

}

void winReshapeFcn (int newWidth, int newHeight)

{

/* Reset viewport and projection parameters */

glViewport (0, 0, newWidth, newHeight);

glMatrixMode (GL_PROJECTION);

glLoadIdentity ( );

gluOrtho2D (0.0, GLdouble (newWidth), 0.0, GLdouble (newHeight));

/* Reset display-window size parameters. */

winWidth = newWidth;

winHeight = newHeight;

}

void plotPoint (GLint x, GLint y)

{

glBegin (GL_POINTS);

glVertex2i (x, y);

glEnd ( );

}

/* Move cursor while pressing c key enables freehand curve drawing. */

void curveDrawing (GLubyte curvePlotKey, GLint xMouse, GLint yMouse)

{

GLint x = xMouse;

GLint y = winHeight - yMouse;

switch (curvePlotKey)

{

case 'c':

plotPoint (x, y);

break;

default:

break;

}

glFlush ( );

}

int main (int argc, char** argv)

{

glutInit (&argc, argv);

glutInitDisplayMode (GLUT_SINGLE | GLUT_RGB);

glutInitWindowPosition (100, 100);

glutInitWindowSize (winWidth, winHeight);

glutCreateWindow ("Keyboard Curve-Drawing Example");

init ( );

glutDisplayFunc (displayFcn);

glutReshapeFunc (winReshapeFcn);

glutKeyboardFunc (curveDrawing);

glutMainLoop ( );

}

هذا الموضوع مغلق.

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…