200 likes | 341 Views
תרגול בגרפיקה ממוחשבת. מבוסס ע"פ מצגת מאת משה חדד. הקדמה. מטרות הקורס הבנת התאוריה המתמטית הכרות עם מודלים,טכניקות ואלגוריתמים גראפיים הכרות עם הספריה openGL תרגילים 4 תרגילים ופרוייקט חלוקת הציון 50% מבחן 50% תרגילים. הקדמה. תרגילים יכתבו ב java הגשה בזוגות שבועיים מקבלת בתרגיל
E N D
תרגול בגרפיקה ממוחשבת מבוסס ע"פ מצגת מאת משה חדד
הקדמה • מטרות הקורס • הבנת התאוריה המתמטית • הכרות עם מודלים,טכניקות ואלגוריתמים גראפיים • הכרות עם הספריהopenGL • תרגילים • 4 תרגילים ופרוייקט • חלוקת הציון 50% מבחן 50% תרגילים
הקדמה • תרגילים יכתבו ב java • הגשה בזוגות שבועיים מקבלת בתרגיל • חייבים לעבור את המבחן כדי לעבור את הקורס • חייבים לעשות את כל התרגילים כדי לעבור את הקורס
היום • תכנות מונחה אירועים • ישור קו :מושגים בסיסים בגרפיקה • הצגה גרפית • שיטות שונות למידול • שמירת פוליגון
תכנות מונחה אירועים • תכנות מונחה אירועים מגיב על ארועים בתכנית • התכנית רצה בלולאה אינסופית • אם מתרחש אירוע בתכנית • מערכת ההפעלה שולחת message המכיל בתוכו מידע רלוונטי על האירוע שהתבצע אל התכנית • סוגי אירועים • אירוע ישיר (לחיצת עכבר הקשה על המקלדת) • אירוע עקיף (הזזת מיקוד הקטנה והגדלת חלון) • אירוע פנימי (רענון מסך החלפת buffers) • פונקציות שמטפלות באירועים נקראות פונקציות callback • בג'אוה נטפל בארועים דרך Event Handler
מושגים • פיקסל • יחידה מידע הקטנה ביותר המתארת נקודה על המסך (או בתמונה) • רזולוציה • חלוקת המסך לפיקסלים • רזולוציות נפוצות: • 640 x 480 ,800 x 600 ,1280 x 1024 , 1600 x 1280 • Vertex קודקוד • קודקוד של מצולע • Edge צלע • קו המחבר בין שני vertex
מושגים • פוליגון polygon • הגדרה: צורה דו-ממדית סגורה החסומה ע"י קווים ישרים • פוליגון מורכב מצלעות • פוליגון קמור • פוליגון קעור • פוליגון מורכב Convex polygon Concave polygon
מושגים • convex polygon • הגדרה: כל קו ישר המחבר שתי נקודות בפוליגון, מוכל בתוך הפוליגון
מושגים • complex polygon
מושגים • polyhedron פאון • גוף תלת מימדי החסום ע"י פוליגונים • כמו בפוליגונים יש פאון קמור ופאון קעור
הצגת גרפיקה • המסך מוחלק לפיקסלים • הרזולוציה נקבעת לפי כמות החלוקה • RGB • בכל פיקסל יש אפשרות לווסת את כמות האדום ,הירוק והכחול שמוצגת בו • ה-frame buffer מכיל בתוכו את מצב המסך (כל פיקסל ופיקסל)
הצגת גרפיקה • מרציף לבדיד • דוגמים את העולם הרציף ע"מ לקבל ערכים בדידים • שתי פרדיגמות גראפיות עיקריות • הצגה מבוססת רשת (גרפיקה רשתית) • שומרים את האובייקט כ-buffer המכיל בתוכו דגימה של פיקסלי התמונה • הצגה פשוטה ע"מ לצייר את האובייקט פשוט מציגים את ה bufferFrame למסך • הצגה מבוססת גיאומטריה (גרפיקה וקטורית) • ממדלים את האובייקט ע"י פרימיטיבים גיאומטריים (קווים , עקומות,משטחיים וכן') בתהליך נקרא modelling • דוגמים את המודל ע"מ למלא את frame buffer תהליך הנקרא rendering
מידול • שיטות שונות ל Modeling • Constructive Solid Geometry) CSG • שימוש באובייקטים פשוטים ופעולות בינהם ע"מ ליצור אובייקטים חדשים • שימוש בפוליגונים • האובייקט בנוי מפוליגונים היוצרים גוף • שימוש בגאומטריה • חישוב הצורה של האובייקט ע"י משואות
מידול • CSG
מידול • פוליגונים
מידול • גאומטריה
פוליגון • הגדרת פוליגון • נגדיר פוליגון בצורה הבאה • מספר הקודקודים (Vertexes) • קורדינטות הקודקודים • מספר הצלעות • הגדרת הצלעות מאיזה קודקוד לאיזה קודקוד
y x פוליגון • דוגמאות 5 0,0 80,0 80,40 40,80 0,40 5 1 2 2 3 3 4 4 5 5 1 4(40,80) 5(0,40) 3(80,40) 1(0,0) 2(80,0)
y x פוליגון 4(45,5) • דוגמאות 5 25,65 65,65 75,25 45,5 15,25 5 1 3 3 5 5 2 2 4 4 1 5(15,25) 3(75,25) 2(65,65) 1(25,65)