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

سؤال : رسم مضلعات متعددة الأوجه N-side Polygon

بدأه ENGINEER IN RAK في 14 ديسمبر 2009 · 3 رد · 2,048 مشاهدة · في OpenGL
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

بسم الله الرحمن الرحيم ..

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

أول موضوع لي فالمنتدى ..

وبصراحة أكثر وعشان أكون واضحة ..

ما لقيت فجميع الصفحات الإلكترونية شرح وافي وكافي لجميع مساقات الهندسة =)

وخصوصاً الجرافك اللي نستخدم فيه برنامج openGL

دكتورنا ما يعطي الماده حقها .. مع انه ذكي وعبقري بس في ناس سبحان الله ما يعرفون يوصلون المعلومة بأي طريقة كانت !

طالب منا برنامج غريب عجيب ..

احنا نعرف نرسم الأشكال الأساسية .. مربع -مستطيل-دائرة - مثلث

بس هو طالب برنامج واحد بالأوبن جي نرسم فيه ( 1- Hexagon

2- Pentagon

3- Octagon

4- Square

5- Circle

)

االمصيبة العظمى انه طالب منا كل هالأشكال ببرنامج واحد .. وفانكشن واحد ع كلامه .. ونغير الباراميتر بس

قصده انه برنامج واحد ويحتوي على واحد فانكشن ونقوم بتغيير الباراميتر ليتغير كل شكل ونقوم بتغيير الفيرتكس أيضا ونستخدم 6 لوب .

كيف ماعرفت ..

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

أصحاب الشأن .. والحرفة .. لا يبخلون عليّ ..

ابي فزعتكم ..

#2

الأخ الكريم/الأخت الكريمة

نود تنبيهك أن العنوان غير مناسب.

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

وفي حال التكرار سيتعرض موضوعك للإغلاق والحذف!!!

قواعد المشاركة

/index.php?showtopic=29343

الجواب على الموضوع :

يمكن استخدام دوال جاهزة ،

http://www.opengl.org/resources/libraries/glut/spec3/node80.html#SECTION000120000000000000000

ويمكن استغلالها لرسم المطلوب ، لكن وحسب السؤال ، طلب عمل كل ما سبق في دالة واحدة ،

اذكر اني عملت برنامج مشابه ، ( لا أعرف ان كان نفس المطلوب أو لا ) ...

على العموم ، الفكرة تتلخص بالاعتماد على خوارزمية معينة - معروفة - ، يمكن رسم الكثير من الاشكال من خلالها بمجرد تغيير " معاملات" معينة في الخوارزمية .

لكن لست متأكد من نوعية الأشكال المرسومة .

يمكن الاطلاع على كتاب مثل : Computer Graphics Using OpenGL ، اذا أمكن ذلك ، فهو يحوي على شرح لهذه الخوارزميات .

سأحاول أن أضيف مثال ان وجدته .

تم تعديل هذه المشاركة بواسطة الشمري في 15 ديسمبر 2009 في 07:20

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

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

CodingAlone.com

twitter @abshammeri

abshammeri AT gmail.com

github : abshammeri

#3

أخي الشمري .. أعذرني حقاً .. ف لم أقرأ القوانين ..

لازلت أحاول في التفتيش عن دالة لأضم بها كل الأشكال المطلوبة ..

الصعوبة لدي كيف أكتب داله وأستغلها لجميع الأشكال ف لم يسبق لي رؤية مثال كهذا .

كلامك أوضح لي الصورة أكثر ..

أطال الله في عمرك .. أخي ..

شكراً على المتابعة ..

#4

عليك أن تنشئ دالة تقوم برسم الأشكال متعددة الأضلاع،

كما تلاحظ فإن الأشكال المطلوبه منك هي متعددة الأضلاع ولكن الإختلاف بينها في عدد الأضلاع

Hexagon : ستة عشر ضلع

Pentagon عشرة أضلاع أظن

Octagon ثمانية أضلاع

Square أربعة أضلاع

Circle ثلاث مائة وستون ضلع 360

طبعا نفس الدالة سوف يكون بإمكانها رسم مثلث

إذا الدالة التي سوف تقوم بإنشاءها سوف تستقبل رقم يمثل عدد الأضلاع التي سوف يتم رسمها

ما تبحث عنه يسمى N-side Polygon

حيث تستقبل عدد الأوجه و تقوم بحساب الزاوية التي يجب أن تكون بين الاضلاع

بمعنى أن في حال لو كان عدد الأوجه (الحواف) =3 فإن الزاوية يجب أن تكون 360\3= 120 إذن عليك أن ترسم خطوط بينها زاوية 120

و إذا كان عدد الأوجه = 4 فإن الزاوية بين الأوجه يجب أن يكون 360\4 =90 (مربع)

و بنفس الطريقة لباقي الأوجه..

أرجو منك محاولة حل المسأله بنفسك (قد تجد بعض الكود الجاهز، ولكن حاول أن تحل المسأله بنفسك)

بالتوفيق

1

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

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

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

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

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