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

OPEN GL و برنامج الرسام

مغلق
بدأه Mis.Dot في 28 أبريل 2005 · 8 رد · 3,181 مشاهدة · في OpenGL
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله وبركاته

انا طالبة ادرس ماده OPEN GL

لا اخفي عنكم ان المادة حلوة وممتعة أيضا

كلفنا بأن نقوم بمشروع برمجي باستخدام هذه اللغه بإنشاء برنامج مبسط شبيه ببرنامج الرسام ولكن اقل تقنية منه في كل شي

--------------------------------------------------------------

Write an OpenGL program (interactive program) that draw lines by clicking on the start point and then drag on the display window drawing area.

Give the user a menu that (s)he choose from. The menu contains the following options:

1- Clearing the display window.

2- Choose a line drawing color which includes at least the colors (red, green, blue, black).

3- Choose a line pattern which includes (dash, dot, dot-dash, solid lines).

4- Choose a line thickness. (line width from 1 to 4).

5- Quit the program.

When you execute the program it will not draw anything until you choose a color from the color menu.

---------------------------------------------------------------

اتمنى منكم التعاون معي ولكم جزيل الشكر

تم تعديل هذه المشاركة بواسطة Mis.Dot في 28 أبريل 2005 في 13:13

#2

تعلمي اساسيات الرسم في opengl ..

انا لدي مثال بسيط.. جدا .. عن الرسم باستخدام opengl يمكن يفيد.. ساضيفه لاحقا.

لكن لاول مرة اعلم ان هناك جامعات تدرس opengl كمادة رئسية !!!!!

تم تعديل هذه المشاركة بواسطة الشـمري في 28 أبريل 2005 في 17:14

logo1.png تطبيق طمأنينة ، نسخة بيتا على أندرويد

عبدالله الشمّري - Al-Shammari

CodingAlone.com

twitter @abshammeri

abshammeri AT gmail.com

github : abshammeri

#3

الشمري ..

رأيت الكثير هنا في مصر في كليات الحاسبات في السنة الثالثة او الثانية

MisDot تريد OpenGL ان يرسم لك الخط ؟ ام يجهز لك الوصول لكارت العرض و من ثم تستخدمي خورازميات رسم الخط مثل برسناهم Bressenham ؟

كما درستي في مادة Computer Graphics رسم خط لها خورازم ... OpenGL فقط يرسم لك نقطه و من ثم تستطيعي ان ترسم عدة خطوات بعدة قفزات Steps للخط .. هذه طريقة Software

انما طريقة OpenGL " hardware " بيرسم الخط علي طول بدواله ...

BEng , Electronics and communications.

Embedded systems engineer.

Graphics Programmer

عالم الكومبيوتر هو من لديه المعرفة في علوم الكومبيوتر ، الرياضيات ، هندسة الالكترونيات -احمد صالح

#4

بالمناسبة ياأحمد صالح سابقا كنت أحاول محاكاة رسم منحنى ناعم كما في flash , لو جربت الأداءة pencile ستعرف قصدي , بأن ترسم رسم بالماوس بشكل عادي وعندما تفلت الماوس يتم تنعيم المنحنى وإزالة التكسرات وإضافة بعض ال Anti-Aliasing لنحصل على المظهر النهائي ,

سابقا توصلت لنظرية رياضية بعد جهد جهيد لتصميم هذه الخوارزمية , وفي نفس الوقت صديق كان في المنتدى أعطاني نظرية لفعل ذلك ولم أدقق في الكلام وقتها ووضح أنها مأخوذة من أحد كتب ال computer graphics ,

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

banner_60_468.gif

NOTHING IS IMPOSSIBLE

#5

بالنسبة للكتاب - لا يوجد سوي كتاب فان دام هو مرجع برمجة الروسومات Computer Graphics Principles : By Van Dam للاسف لا املك هذا الكتاب ...

او سلسلة Gems للكومبيوتر جرافسيكس Graphics Gems ممتاز هي الاخري .

في طرق رياضية كثيرة للتقريب مثل Interpolation- Curve Fitting اعتقد درستها في الرياضيات الهندسية HGB .

Curve Fitting يعني How To get A Curve That Best Fits The Data ... يعني بتعطي لك منحني بيبقي قريب من النقط المعطاه

Interpolation بيطلع لك كثيرة حدود " بتمر " بالنقط المعطاه " .

النقط المعطاة كيف نجلبها ؟

بعد ضغطة الماوس نقوم بحساب النقط التي مر بها الماوس و تعتبر هذه هي النقط المعطاه .

BEng , Electronics and communications.

Embedded systems engineer.

Graphics Programmer

عالم الكومبيوتر هو من لديه المعرفة في علوم الكومبيوتر ، الرياضيات ، هندسة الالكترونيات -احمد صالح

#6
اقتباس
في طرق رياضية كثيرة للتقريب مثل Interpolation- Curve Fitting اعتقد درستها في الرياضيات الهندسية HGB .

Curve Fitting يعني How To get A Curve That Best Fits The Data ... يعني بتعطي لك منحني بيبقي قريب من النقط المعطاه

Interpolation بيطلع لك كثيرة حدود " بتمر " بالنقط المعطاه " .

نعم هي طريقة المربعات الصغرى بالضبط :) Least Square Error , وعندما أجد الوقت سأعود للمشروع مرة أخرى بإذن الله وأجرب .

banner_60_468.gif

NOTHING IS IMPOSSIBLE

#7

اوه انت تقصد least square method ؟

انا لا اعرفها بالعربيه

نعم LSM هي جزء من Curve Fitting

BEng , Electronics and communications.

Embedded systems engineer.

Graphics Programmer

عالم الكومبيوتر هو من لديه المعرفة في علوم الكومبيوتر ، الرياضيات ، هندسة الالكترونيات -احمد صالح

#8

السلا1111111111م عليكم جميعاً

شكراً للجميع على الرد

ويا أخ أحمد صالح انا أريد من OpenGL ان يرسم لي الخط باستخدام دوال الرسم Functions و Calling Functions وليس باستخدام الخوارزميات :D

واللي ما فهم المطلوب هذا الشرح :

-----------------------------------

عملية الرسم تتم باستخدام النقر والإفلات Click & Drag ... يفتح البرنامج شاشة بخلفية بيضاء ... لا يستطيع المستخدم البدء بالرسم إلا إذا اختار لون للرسم من الـ submenu اللي تتفرع من Color وهي أربعة ألوان أحمر وأخضر وأزرق وأسود ... للمستخدم أحقية في اختيار عرض قلم الرسم من الـ submenu اللي تتفرع من Widthes وهي 1 و2 و3 و4 ... للمستخدم أحقية في اختيار شكل لقلم الرسم Patterns وهي أربعة أنواع Dash و Dot و Dot-Dash و Solid Line ... إذا اختار المستخدم اللون الأحمر ثم بدأ بالرسم وبعد ذلك اختار اللون الأزرق فإنه يرسم على الرسم الموجود سابقاً باللون الأحمر إلا إذا اختار أمر مسح Clear ... وأخيراً الخروج من البرنامج باستخدام أمر Quit ...

................ أرجو أن أكون قد أعطيت شرح مفصل للبرنامج

وشكراً للجميع على التفاعل :rolleyes:

Mis.Dot

#9

===

عليكم السلام

اذكر كان عندي بريمج رسم بopengl لكن للاسف بحثت عنه ولم اجده ..

لكن الموضوع سهل ..

اقتباس
لا يستطيع المستخدم البدء بالرسم إلا إذا اختار لون للرسم من الـ submenu اللي تتفرع من Color وهي أربعة ألوان أحمر وأخضر وأزرق وأسود .

ضع قائمة فيها الالوان التي تريد وتضع ثلاث متغيرات من نوع float

red,blue,green,balck

وتقول اذااختار المستخدم اللون الاحمر مثلا غير قيمة المتغيرات;كالتالي

red=1.0f

blue=green= 0.0f

وطبعا كما تعلم تستخد الدالة glcolor لتغيير اللون

glColor3f(red,green,blue);

وهكذا مع باقي الالوان

اقتباس
للمستخدم أحقية في اختيار عرض قلم الرسم من الـ submenu اللي تتفرع من Widthes وهي 1 و2 و3 و4 ...

تستطيع تغيير عرض الخط باستخدام الدالة glLineWidth(6.6f);

مثلا

glLineWidth(6.6f);
   glBegin(GL_LINES);
      glVertex3f(1.0f, -1.0f, -2.0f);
      glVertex3f(1.0f, 1.0f, -2.0f);
   glEnd();

والنقطة

void glPointSize(GLfloat size)

-

هذه فقط رؤوس اقلام وانت عليك الباقي .البرنامج سهل كل ماعليك معرفة طرق الرسم والتعامل معها

ويكون عندك اساسيات win api اذا اردت استعمالها لعمل الواجهة .

تم تعديل هذه المشاركة بواسطة الشـمري في 3 مايو 2005 في 14:55

logo1.png تطبيق طمأنينة ، نسخة بيتا على أندرويد

عبدالله الشمّري - Al-Shammari

CodingAlone.com

twitter @abshammeri

abshammeri AT gmail.com

github : abshammeri

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

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