سورس کد شبیه سازی منظومه شمسی در #C با OPENGL

سورس کد شبیه سازی منظومه شمسی در سی شارپ عنوان محصولی است که در این پست به آن پرداخته ایم. منظومه شمسی از تمام سیاراتی که به دور خورشید گردش می کنند، تشکیل شده است. افزون بر سیارات، در این منظومه قمرها، ستاره های دنباله دار، سیارک ها، خرد سیارات و گرد و غبار و گاز نیز حضور دارند.

منظومه شمسی دارای 9 سیاره با نام های عطارد، زهره، زمین، مریخ، مشتری، زحل، اورانوس، نپتون، پلتون است که در مداراتی حول خورشید در چرخش هستند. برای شبیه سازی منظومه شمسی در سی شارپ از کتابخانه گرافیکی اپن جی ال OpenGL استفاده شده است. این کتابخانه در قالب چارچوب Tao.OpenGl به Microsoft Virtual Studio افزوده می شود تا بتوان از قابلیت های گرافیکی OpenGL در سی شارپ استفاده کرد.

سورس کد شبیه سازی منظومه شمسی در سی شارپ در 7 کلاس و یک فرم اصلی نوشته شده است که دارای توضیحات زیر می باشد.

شبیه سازی منظومه شمسی در سی شارپ

توضیحات برنامه

  • کلاس Camara.cs

این کلاس مربوط به دید شخص از فضای موجو می باشد و دارای خصوصیات زیر است:

    • مختصات ماوس از وسط صفحه شروع می شود.
    • هنگامی که کاربر ماوس را حرکت می دهد، دلتا X و Delta Y از نقطه شروع محاسبه می شوند.
    •  Delta X و Delta Y به چگونگی تغییر دوربین و زوایای دید تنظیم می شود.
    •  هنگامی که شما مایل به حرکت به عقب یا جلو هستید، دوربین در جهت زاویه اشاره  حرکت می کند.
  • کلاس Satellite.cs

این کلاس حاوی همه چیزهایی است که یک سیاره دارد. تنها تفاوت این است که نقطه چرخش آن خورشید نیست بلکه سیاره ای است که حاوی آن است. بنابراین هر زمان که آن را صدا می کنید باید موقعیت سیاره حاوی آن را بدست آورید.

  • کلاس SolarSystem.cs

این کلاس  حاوی لیستی از سیارات، ستاره ها و ماهواره ها است برای ایجاد و رسم آنها.

  • کلاس Star.cs

این کلاس  ستاره ها را ترسیم می کند. ستاره ها GL_POINTS هستند که در موقعیت های تصادفی تولید می شوند. این تابع است که آنها را تولید می کند:

  • کلاس Sun.cs

کلاس خورشید ساده ترین کلاس است بر خلاف کلاس سیاره تنها یک چرخش دارد و آن فقط یک چرخش در اطراف محور خود است.

  • کلاس  Planet.cs
    • موقعیت
    • بافت
    • مدار (فاصله جاری از خورشید)
    • زاویه چرخش کنونی
    • سرعت مدار فعلی

این کلاس خصوصیات یک سیاره را طبق 5 بند گفته شده بالا ارائه می کند. بعنوان مثال برای رسم مدار از کد زیر استفاده شده است:

تمامی این کلاس ها از داخل فرم اصلی MainForm.cs ایجاد و صدا زده می شوند. این فرم  شکل پروژه است که شامل فراخوانی برای بارگذاری بافت، تنظیم اولیه مفاهیم 3D، نقاشی محتوای سه بعدی و غیره می باشد. همچنین کلید کاربر و ورودی ماوس را مدیریت می کند. از آنجا که محتوای سه بعدی نیاز به حداقل 30 فریم در ثانیه دارد،  از یک تایمر  استفاده شده است و تمام کد داخل آن را قرار داده می شود.

تصویر خروجی

شبیه سازی منظومه شمسی

ویدئوی معرفی محصول

محصول

این پروژه بااستفاده از زبان برنامه نویسی سی شارپ در microsoft visual studio 2013 نوشته شده است. پروژه توسط کارشناسان پی استور تست و بررسی شده است و مورد تایید پی استور می باشد. این محصول دارای نشان تضمین کیفیت پی استور می باشد. برای دانلود پروژه آن را خریداری کنید. به محض خریداری لینک دانلود در دسترس خواهد بود.

1 دیدگاه برای سورس کد شبیه سازی منظومه شمسی در #C با OPENGL

  1. امین جلیل زاده

    نظرات و پیشنهادات خود را با ما در میان بگذارید.

دیدگاه خود را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *