پروژه سه بعدی حرکت ماشین های سواری پشت چراغ سبز با زبان سی پلاس پلاس و با استفاده از کتابخانه گرافیک کامپیوتری opengl و تحت کامپایلر ویژوال استدیو طراحی و برنامه نویسی شده است.
در این پروژه سه ماشین آبی، صورتی و زرد را مشاهده می کنید که در یک خیابان دو طرفه در حال حرکت هستند. در پس زمینه 6 آپارتمان بلند با طبقات مختلف (5 و 7 طبقه) به صورت سه بعدی طراحی شده است. یک چراغ راهنما با سه حالت سبز، قرمز و زرد نیز در گوشه سمت چپ تصویر ایجاد شده است.
دو ماشین سواری آبی و صورتی در یک سمت خیابان (از چپ به راست) که حرکت می کنند به محض رسیدن به پشت چراغ راهنما، اگر چراغ قرمز بود می ایستند و اگر سبز و یا زرد بود به حرکت خود ادامه می دهند. ماشین زرد که در جهت مخالف دو اتومبیل ذکر شده در حال حرکت است (از سمت راست به چپ صحنه)، بدون توجه به حالت چراغ راهنما به حرکت خود ادامه می دهد (چراغ راهنما فقط مربوط به دو ماشین آبی و صورتی می باشد). این ماشین ها پس از خروج از یک سمت دوباره بعد ار مدتی از سمت دیگر صفحه وارد می شوند و این کار را به صورت متوالی تکرار می کنند.
کاربر با فشردن کلید R و G و Y می تواند حالت چراغ راهنمای رانندگی را تغییر دهد و آن را از حالت قرمز به سبز و یا زرد و برعکس عوض کند.
برنامه شامل منو کلیک راست می باشد که دو حالت شب و روز در آن قرار داده شده است که با انتخاب هر کدام از آنها وضعیت روز یا شب بودن (ستاره های چشمک زن و ماه در آسمان) پس زمینه تغییر می کند.
توابع پر کاربرد در این پروژه گرافیک سه بعدی opengl
-
glTranslatef جابه جایی اشیاء و عناصر
-
gluDisk رسم دایره و دیسک
-
glBegin(GL_LINE_STRIP) رسم خطوط به هم پیوسته
-
glBegin(GL_LINES) رس خطوط معمولی
-
glLineWidth ضخامت خطوط
-
glBegin(GL_QUADS) رسم چهار ضلعی
-
glBegin(GL_POLYGON) رسم چند ضلعی
-
glColor3f رنگ آمیزی اشکال و عناصر
-
GLUT_KEY_UP کنترل کلید جهت بالا
-
GLUT_KEY_DOWN کنترل کلید جهت پایین
-
glutAddMenuEntry ایجاد منو
لازم به ذکر است که پروژه دارای توضیحاتی در قالب کامنت داخل برنامه برای خوانایی بیشر کد می باشد.