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

رسم مثلث ثلاثى الأبعاد

بدأه Trial140 في 15 مايو 2008 · 12 رد · 8,881 مشاهدة · في OpenGL
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

أن أستخدم opengl منذ بعض الوقت

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

وأتمنى شرح لكيفية رسم مكعب أو مثلث ثلاثى الأبعاد

#2

عليكم السلام

,.,.,.,.,.,.,.,.,.,.,.

فقط لتعديل مفهوم بسيط يساعد الآخرين على فهم سؤالك..هندسياً Geometrically ليس هناك مثلث ثلاث الأبعاد 3d Triangle على الأقل نموذجياً..لأن المثلث هو شكل Shape..انت قاصد بالضبط الهرم The Pyramid و هو ليس شكل Shape بل جسم Solid (جسم هندسي يعني)..وهو ذلك الجسم الذي له قاعدة ذات شكل منتظم(ربما تكون مربع, دائرة,..) او غير منتظم وله أوجه مسطحة surfaces من عدة مثلثات تلتقي عند رأس واحد فقط Common Vertex.

,.,.,.,.,.,..,,..,,.,..,

صحيح المكعب كأنه مربع ثلاثي الأبعاد ولكن هذا غير صحيح من ناحية Geometry الهندسة

,.,.,.,.,.,.,.,.,.,.,.,.

اطيب المُنى

تم تعديل هذه المشاركة بواسطة رغـــــــــد في 15 مايو 2008 في 04:11

[وسط]

♥ Countess ♥

57899411.gif

♥

[/وسط]

#4
hazzoom كتب:
وربما الـ Prism..

Maybe

,.,.,.,.,.,,.

للإضافة:

المخروط The Cone هو عبارة عن هرم Pyramid قاعدته دائرية او مقطوع دائرياً.

,.,.,.,.,..,.,,.

اطيب المُنى

تم تعديل هذه المشاركة بواسطة رغـــــــــد في 15 مايو 2008 في 06:26

[وسط]

♥ Countess ♥

57899411.gif

♥

[/وسط]

#5

مشكور إخوانى على هذا التصحيح

ولكن فين الشرح

علماً بأننى أستخدم المكتبة glut

#6

المساعدة إخوانى

#7

المساعدة

#8

الامر سهل ان شاء الله .. استفد من أحد دروس NEHE .. كل ما عليك أن تتصور العالم الثلاثي الابعاد بورقة خارجية .. وتحدد الاحداثيات وستخرج لك رسمة جملية .. هذا جزء من كود NEHE

glBegin(GL_TRIANGLES);

glColor3f(1.0f,0.0f,0.0f);			// Red
		glVertex3f( 0.0f, 1.0f, 0.0f);			// Top Of Triangle (Front)
		glColor3f(0.0f,1.0f,0.0f);			// Green
		glVertex3f(-1.0f,-1.0f, 1.0f);			// Left Of Triangle (Front)
		glColor3f(0.0f,0.0f,1.0f);			// Blue
		glVertex3f( 1.0f,-1.0f, 1.0f);			// Right Of Triangle (Front)

glColor3f(1.0f,0.0f,0.0f);			// Red
		glVertex3f( 0.0f, 1.0f, 0.0f);			// Top Of Triangle (Right)
		glColor3f(0.0f,0.0f,1.0f);			// Blue
		glVertex3f( 1.0f,-1.0f, 1.0f);			// Left Of Triangle (Right)
		glColor3f(0.0f,1.0f,0.0f);			// Green
		glVertex3f( 1.0f,-1.0f, -1.0f);			// Right Of Triangle (Right)

glColor3f(1.0f,0.0f,0.0f);			// Red
		glVertex3f( 0.0f, 1.0f, 0.0f);			// Top Of Triangle (Back)
		glColor3f(0.0f,1.0f,0.0f);			// Green
		glVertex3f( 1.0f,-1.0f, -1.0f);			// Left Of Triangle (Back)
		glColor3f(0.0f,0.0f,1.0f);			// Blue
		glVertex3f(-1.0f,-1.0f, -1.0f);			// Right Of Triangle (Back)


glColor3f(1.0f,0.0f,0.0f);			// Red
		glVertex3f( 0.0f, 1.0f, 0.0f);			// Top Of Triangle (Left)
		glColor3f(0.0f,0.0f,1.0f);			// Blue
		glVertex3f(-1.0f,-1.0f,-1.0f);			// Left Of Triangle (Left)
		glColor3f(0.0f,1.0f,0.0f);			// Green
		glVertex3f(-1.0f,-1.0f, 1.0f);			// Right Of Triangle (Left)
glEnd();						// Done Drawing The Pyramid

لاحظ ان هذا الهرم .. بدون قاعدة .. لذلك ارسم مربع ليكون قاعدة لهذا الرهم لو احببت ذلك .

شرح الكود هنا

http://nehe.gamedev.net/data/lessons/lesson.asp?lesson=05

glut

http://nehe.gamedev.net/data/lessons/gameglut/lesson05.zip

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

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

CodingAlone.com

twitter @abshammeri

abshammeri AT gmail.com

github : abshammeri

#9

شكرأ لك

#10

هل يمكن أن تقول لى ما معنى هذه

(0.0f,1.0f,0.0f)

ما معنى حرف f

#11

هذه من خصائص لغة السي .. يعني float ... لو حذفتها لا يوجد اشكال .

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

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

CodingAlone.com

twitter @abshammeri

abshammeri AT gmail.com

github : abshammeri

#12
الشمري كتب:
هذه من خصائص لغة السي .. يعني float ... لو حذفتها لا يوجد اشكال .

عندي زيادة بسيطة على كلام اخي الشمري.. في لغة ++C و لغة C ايضاً, إذا اضفنا حرف f فكأننا نقول للنظام(نظام المجمع او نظام التنفيذ بشكل عام) رجاءً عامل هذا الثابت معاملة الأعداد ذات الفاصلة العشرية العائمة Floating-point Numbers. و لو كتبنا حرف d فكأننا نقول له"عامِل هذا الثابت مُعاملة العدد المضاعف Double وهو ايضاً نوع آخر للـ Float و لكن بزيادة في دقة وجود ومكان الفاصلة العائمة العشرية The Decimal Point.

,..,.,.,.,,..,

هناك بعض الملحقات الحرفية الأخرى التي يمكننا إضافتها إلى الثوابت العددية. راجع(اقرأ) اي مصدر للغة C او ++C.

,.,.,.,.,.,.,.,

اطيب المُنى

[وسط]

♥ Countess ♥

57899411.gif

♥

[/وسط]

#13

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

السلام عليكم

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

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