دوران شكل، رسم اشكال 3D مركز تحصيلات تكميلي در علوم پايه زنجان بخش فن‌آوري اطلاعات گرافيك كامپيوتري قسمت پنجم سري آموزش هاي OpenGL.

Slides:



Advertisements
Similar presentations
مهدی آذرنوش مبحث ششم : آرایه ها و رشته ها حسابگری الگوریتمی.
Advertisements

Logic Block Architectures. 2 Crosspoint Solution  Requires the use of large amounts of programmable interconnect −  suffer from area-inefficiency 
در جامعه، افرادي که موقعيت و مسؤليت خود را مي‌دانند از راحتي و امنيت بيشتري برخوردارند هر کلاس از جامعه، مجموعه‌اي از امکانات و تواناييهاي مجاز برخوردار.
برنامه سازي پيشرفته 5 Inheritance. وراثت Inheritance allows a software developer to derive a new class from an existing one The existing class is called.
سازگاري فرايندهاي يادگيري Consistency of Learning Processes ارائه دهنده : الهام باوفای حقیقی استاد درس : آقای دکتر شيري دانشگاه امير كبير دانشكده ‌ مهندسي.
دستور العمل نحوه محاسبه امتیاز مقالات ISI اعضای هیأت علمی دانشگاه صنعتی اصفهان بر اساس تعداد استنادات در پايگاه اسكاپوس شهریور ماه 1388 نفیسه دهقان.
1 آزمايشگاه سيستم های هوشمند ( Domain-specific Architecture.
ارائه روشي براي شناسايي کاراکترهاي دستنويس، برپايه شبکه LVQ.
ارائه درس روباتيکز Extended Kalman Filter فريد ملازم استاد مربوطه دکتر شيري دانشگاه امير کبير – دانشکده کامپيوتر و فناوري اطلاعات.
نام و نام خانوادگي : فريد ملازم 1 آزمايشکاه سيستم هاي هوشمند ( موضوع ارائه Process and Deployment Design.
مقسم هاي حجمي Volume metering devices سويا، بادام زميني، پنبه و غلات به صورت حجمي سنجش مي شوند تا دانه دانه بر اساس متوسط سطح هر بذر سنجش صورت مي گيرد.
شهرهاي اينترنتي و مراكز داده (Data Center) دكترمحسن كاهانيمحسن كاهاني دانشگاه فردوسي مشهد
تعميم در يادگيري مبتني بر نمونه ها
Telephone English Series 2 Tip 2 Material Providers: Pooneh Tajali, Mehdi Khodaparast Text & PowerPoint Specialist: Zhaleh Kazemi Project Supervisor:
به نام خدا. Search articles ايندكسهاي معروف ISI ، (Index Medicus)،‌ Medline ‌،‌ Pubmed Biological Abstract ،‌ Embase،‌ ‍Chemical Abstract، Scopus ساير.
ساختارهاي تقسيم كار پروژه
 Hassan jamali In the name of God Grade: three CD شامل : مكالمه لغات جديد درس نقاط گرامري و تمرين است.
Narges S. Bathaeian طراحي و پیاده سازی زبانها کنترل زیربرنامه.
رسم یک کره Opengl در رسم کره ناتوان است لذا باید از توابع یکی از کتابخانه های کمکی آن یعنی glu32 استفاده کنیم. برای استفاده از توابع glu32 باید header.
آرايه Array آرايه مجموعه اى از متغيرهاى از يك نوع است كه با يك نام مشترك تحت استفاده قرار مى گيرند. يك عنصر بخصوص در يك آرايه با يك index (انديس ) مورد.
روابط مجموعه ها سلیمی. دکتر سلیمانی. نظریه فازی در سال 1965 بوسیله یک دانشمند ایرانی بنام پروفسور لطفی زاده معرفی گردید. گرچه این نظریه در ابتدا با.
اسامي شناسه ها (Identifier names) اسامي متغيرها ، توابع ، برچسب ها (labels) وبقيه اشياء تعريف شده توسط كاربر در C ، شناسه ( identifier ) ناميده مي شود.
1 فصل دوم تبديلات. 2 فصل دوم سرفصل مطالب مقدمه ضرب بردارها دستگاه ‌ هاي مختصات دوران ‌ ها مختصات همگن دوران ‌ ها و انتقال ‌ ها تبديلات تركيبي همگن تبديل.
محقق : پوريا محمدي دبير مربوطه : جناب آقاي نعمتي منبع : سايت.
شرط و تصميم اصول كامپيوتر 1. 2 الگوريتم اقليدس E1: [find remainder] Divide m by n and let r be the remainder. Clearly, 0
1/19 Informed search algorithms Chapter 4 Modified by Vali Derhami.
Department of Computer Eng. & IT Amirkabir University of Technology (Tehran Polytechnic) Data Structures Lecturer: Abbas Sarraf Order.
Modeling in Rangeland Ecosystems By: Dr. Hossein Bashari 2010.
پشته Stack ساختمان داده ها و الگوريتمها. 2 آشنايي مجموعه پويا (Dynamic Set ): مجموعه اي است كه تركيب و تعداد عناصر آن ممكن است در طول زمان اجراي برنامه.
1 فصل سوم سينماتيك مستقيم. 2 محتواي فصل   تعريف مجموعه فازي   تابع عضويت   نمايش مجموعه هاي فازي   برش آلفا   متغيرهاي زباني   ساخت مجموعه.
الف) تابع y = f(x) = X >= 0x -2 < x < 0 x3x3 X
به نام خدا.
مدارهای منطقی فصل چهارم و پنجم - مدارهاي منطقي تركيبي ماجولي
اتوماسیون در نقشه برداری
ساختمان داده ها و الگوريتمها
1 قانون تشابه. 2 مشخصه هاي يك پمپ سانتريفوژ شامل هد، دبي، راندمان و توان با رابطه زير به هم مربوطند : كه در اين رابطه H هد پمپ، Q دبي، g شتاب جاذبه و.
به نام خدا POWER SYSTEM ANALYSIS Ali Karimpour Associate Professor
آرايه ها و ساختارها.
آرايه ها.
ANOVA: Analysis Of Variance
ANOVA: Analysis Of Variance
نمايش معادلات فضاي حالت توسط فرمهاي كانوليكال
آشنايي با برنامه نويسي به زبان C++
پرتال جامع دانشجویان و مهندسین عمران
PPPOE NAT in Windows Server
مباني كامپيوتر و برنامه سازي Basics of Computer and Programming
دکتر حسين بلندي/ دکتر سید مجید اسماعیل زاده / دکتر بهمن قربانی واقعی
تبدیل فوریه (Fourier Transform)
نمايش اعداد در کامپيوتر چهار عمل اصلي
Similarity transformation
ادامه فصل سوم ....
كنترل وعده هاي غذايي براي كاهش وزن
گزگز و خواب رفتگي انگشتان دست
سيستمهاي اطلاعات مديريت
مدلسازي تجربي – تخمين پارامتر
هیدرولیک جریان در کانالهای باز
فيلتر كالمن معرفي : فيلتر كالمن تخمين بهينه حالت‌ها است كه براي سيستم‌هاي ديناميكي با اختلال تصادفي در سال 1960 بزاي سيستم‌هاي گسسته و در سال 1961 براي.
Linear Control Hossein Moeinkhah Assistant Professor
چگونگي نحوه ثبت داده های ايمنسازي در پرتال
تحليل عملكرد يك سيستم تصويربرداري ديجيتال
هدف كلي ساماندهي آمار و ايجاد بانك اطلاعاتي از مراجعين اورژانس هاي بيمارستاني سراسر كشور.
آمار توصيفي ارائه: سيد عماد احمدي.
اشياء و کلاس ها.
به نام خدا اين فايل راهنما جهت آشنايی کاربران گرامی با پايگاه اطلاعاتی Sciencedirect و نحوه جستجوی اطلاعات در آن تهيه شده است لطفاً اسلايدهای بعد را مشاهده.
مثال : فلوچارتي رسم كنيد كه دو عدد از ورودي دريافت كرده بزرگترين عدد
بسم الله الرحمن الرحیم.
گروه كارشناسي ارشد مديريت فنآوري اطلاعات(واحد الكترونيكي تهران)
تمريناتي براي پيشگيري از درد پايين کمر
به خداوند بخشنده مهربان
تخمين پارامترها - ادامه
Presentation transcript:

دوران شكل، رسم اشكال 3D مركز تحصيلات تكميلي در علوم پايه زنجان بخش فن‌آوري اطلاعات گرافيك كامپيوتري قسمت پنجم سري آموزش هاي OpenGL

تعريف دو متغير جديد  براي دوران يك شكل بايد در هر لحظه موقعيت چرخش شكل در صفحه را در جايي ذخيره كنيم.  در اينجا ما يك مثل و مربع داريم و مي خواهيم آنها را حول دو محور دوران دهيم.  GLfloat rtri;  GLfloat rquad;

تابع دوران  glRotatef(Angle,Xvector,Yvector,Zvecto r)  اين تابع با گرفتن 4 آرگمان دوران به شكل اعمال مي نمايد.  Angle: ميزان زاويه گردش شكل  Xvector: ميزان دوران در راستاي محور X  Yvector: ميزان دوران در راستاي محور Y  Zvector: ميزان دوران در راستاي محور Z

محل قرار گيري تابع دوران int DrawGLScene(GLvoid){ glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); glLoadIdentity(); glTranslatef(-1.5f,0.0f,-6.0f); glRotatef(rtri,0.0f,1.0f,0.0f); glBegin(GL_TRIANGLES); glEnd(); rtri+=0.2f; rquad-=0.15f; return TRUE; }

تغيير متغيرها  در هر بار تازه سازي صفحه ميزان متغيرزاويه اگر تغيير كند شكل مي گردد.  براي نمونه در قطعه كد قبل دو مقدار متغير در هر بار تازه سازي صفحه اضافه مي شود.  rtri+=0.2f;  rquad-=0.15f;

خروجي

رسم اشكال 3D  براي رسم اشكال سه بعدي تنها كافي است كه چند نتقطه جديد را براي بعد هاي ديگر شكل خود را اضافه نماييد.  در اينجا يك نمونه كد آورده مي شود كه به مثلث و مربع مثال قبل يك بعد ديگر اضافه مي كند.  هر گوشه آنها را به رنگ خاصي در مي آورد

رسم مثلث سه بعدي 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)

رسم مثلث سه بعدي - 2 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();

رسم مربع سه بعدي glBegin(GL_QUADS); glColor3f(0.0f,1.0f,0.0f); // Set The Color To Green glVertex3f( 1.0f, 1.0f,-1.0f); // Top Right Of The Quad (Top) glVertex3f(-1.0f, 1.0f,-1.0f); // Top Left Of The Quad (Top) glVertex3f(-1.0f, 1.0f, 1.0f); // Bottom Left Of The Quad (Top) glVertex3f( 1.0f, 1.0f, 1.0f); // Bottom Right Of The Quad (Top) glColor3f(1.0f,0.5f,0.0f); // Set The Color To Orange glVertex3f( 1.0f,-1.0f, 1.0f); // Top Right Of The Quad (Bottom) glVertex3f(-1.0f,-1.0f, 1.0f); // Top Left Of The Quad (Bottom) glVertex3f(-1.0f,-1.0f,-1.0f); // Bottom Left Of The Quad (Bottom) glVertex3f( 1.0f,-1.0f,-1.0f); // Bottom Right Of The Quad (Bottom)

رسم مربع سه بعدي - 2 glColor3f(1.0f,0.0f,0.0f); // Set The Color To Red glVertex3f( 1.0f, 1.0f, 1.0f); // Top Right Of The Quad (Front) glVertex3f(-1.0f, 1.0f, 1.0f); // Top Left Of The Quad (Front) glVertex3f(-1.0f,-1.0f, 1.0f); // Bottom Left Of The Quad (Front) glVertex3f( 1.0f,-1.0f, 1.0f); // Bottom Right Of The Quad (Front) glColor3f(1.0f,1.0f,0.0f); // Set The Color To Yellow glVertex3f( 1.0f,-1.0f,-1.0f); // Bottom Left Of The Quad (Back) glVertex3f(-1.0f,-1.0f,-1.0f); // Bottom Right Of The Quad (Back) glVertex3f(-1.0f, 1.0f,-1.0f); // Top Right Of The Quad (Back) glVertex3f( 1.0f, 1.0f,-1.0f); // Top Left Of The Quad (Back)

رسم مربع سه بعدي - 3 glColor3f(0.0f,0.0f,1.0f); // Set The Color To Blue glVertex3f(-1.0f, 1.0f, 1.0f); // Top Right Of The Quad (Left) glVertex3f(-1.0f, 1.0f,-1.0f); // Top Left Of The Quad (Left) glVertex3f(-1.0f,-1.0f,-1.0f); // Bottom Left Of The Quad (Left) glVertex3f(-1.0f,-1.0f, 1.0f); // Bottom Right Of The Quad (Left) glColor3f(1.0f,0.0f,1.0f); // Set The Color To Violet glVertex3f( 1.0f, 1.0f,-1.0f); // Top Right Of The Quad (Right) glVertex3f( 1.0f, 1.0f, 1.0f); // Top Left Of The Quad (Right) glVertex3f( 1.0f,-1.0f, 1.0f); // Bottom Left Of The Quad (Right) glVertex3f( 1.0f,-1.0f,-1.0f); // Bottom Right Of The Quad (Right) glEnd();

خروجي

پايان قسمت پنجم  فايل هاي آماده اين قسمت:  opengl_rotat.cpp  opengl_3d.cpp  باتشكر  پدارم حياتي –  محمد رضا خلقتي –  خرداد 1385