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

مثال : رسم شكل اسطواني .. بدون استخدام دوال مساعدة :)

بدأه Abdullah.Alshammeri في 6 فبراير 2008 · 2 رد · 4,877 مشاهدة · في OpenGL
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم .

هذا مثال عملته لرسم .. " شكل اسطواني بدون دوال مساعدة"

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

عموما الكود اللي عملته يعتمد على فكرة رسم دائرة باستخدام الاحداثيات القطبية . ورسم دائرة اخرى مقابلة لها .. ثم وصل الدائرتين ..

الحميل في الموضوع ان الرسم يعتمد على المثلثات وبالتحديد Triangle Strip .. يعني لرسم 6 مثلثات نحتاج لست نقاط فقط .. وليس 18 نقطة !!

الكود بالمرفقات ..

اي اقتراحات ؟؟

post-42837-1202306979_thumb.jpg

3DShapeCreator.zip

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

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

CodingAlone.com

twitter @abshammeri

abshammeri AT gmail.com

github : abshammeri

#2
الشمري كتب:
السلام عليكم .

هذا مثال عملته لرسم .. " شكل اسطواني بدون دوال مساعدة"

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

عموما الكود اللي عملته يعتمد على فكرة رسم دائرة باستخدام الاحداثيات القطبية . ورسم دائرة اخرى مقابلة لها .. ثم وصل الدائرتين ..

الحميل في الموضوع ان الرسم يعتمد على المثلثات وبالتحديد Triangle Strip .. يعني لرسم 6 مثلثات نحتاج لست نقاط فقط .. وليس 18 نقطة !!

الكود بالمرفقات ..

اي اقتراحات ؟؟

بصراحة جميل جدا ورائع أتمنى أنك

تضع أمثله كثيره حتى نستفيد منها

جميعا

#3

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

مشكور علي الطريقة الجميلة دي

triangle strips  طريقة حلوة جدًا و مختصرة

بس هوا فيه دوال بترسم علي الجاهز أشكال ثلاثية الأبعاد اسمها

"QUADRATICS"

quadratic=gluNewQuadric(); // Create A Pointer To The Quadric Object ( NEW )

gluQuadricNormals(quadratic, GLU_SMOOTH); // Create Smooth Normals ( NEW )

gluQuadricTexture(quadratic, GL_TRUE); // Create Texture Coords ( NEW )

و الدوال نفسها كالتالي

glDrawCube(); 

gluCylinder(quadratic,1.0f,1.0f,3.0f,32,32); // Draw Our Cylinder

gluDisk(quadratic,0.5f,1.5f,32,32); // Draw A Disc (CD Shape)

gluSphere(quadratic,1.3f,32,32); // Draw A Sphere

gluPartialDisk(quadratic,0.5f,1.5f,32,32,15,5); // A Disk Like The One Before

و طبعًا حط الدوال في الكومبايلر عشان تعرف وظيفة كل رقم

جزاك الله خيرًا

تم تعديل هذه المشاركة بواسطة sherif maher eaid في 26 أكتوبر 2008 في 02:35

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

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

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

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

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