سورس رسم دایره های متحدالمرکز با OpenGL
در این بخش سورس رسم دایره های متحدالمرکز با OpenGL را برای شما آماده کرده ایم که در نرم افزار برنامه نویسی DevCpp به زبان C++ ایجاد شده است. در ادامه می توانید توضیحات مربوط به پروژه را مشاهده کنید. همچنین فیلم و تصاویری از قسمت های مختلف پروژه نیز در انتها این بخش قرار داده ایم.
OpenGL چیست ؟
OpenGL مخفف شده عبارت “Open source Graphic Library” به معنای کتابخانه گرافیکی متن باز می باشد و یک رابط برنامه نویسی نرم افزار چند سکویی به منظور رندرینگ دو بعدی و سه بعدی است. OpenGL محصولی پر استفاده و موفق از شرکت Silicon Graphic می باشد که به منظور شبیه سازی کارهای گرافیکی در سیستم های ویندوزی توسعه یافته است. از OpenGL برای ساخت بازی ها، نرم افزار های دو بعدی و سه بعدی و غیره استفاده می شود.
توضیحات پروژه
در این پروژه که به زبان C++ در نرم افزار DevC++ نوشته شده است، بعد از اجرا شدن، نرم افزار از کاربر یک عدد می گیرد و با توجه به آن عدد، دایره های متحدالمرکز در صفحه نمایش رسم می نماید. به طور مثال اگر کاربر عدد 7 را وارد کند، نرم افزار 7 دایره متحدالمرکز را در صفحه نمایش رسم خواهد کرد. برای درک بهتر عملکرد پروژه می توانید تصاویر و فیلمی که در انتهای این بخش قرار داده شده است را مشاهده کنید.
شما با مشاهده سورس کد این پروژه می توانید با چگونگی رسم دایره، تغییر رنگ قلم، تغییر مقیاس بوم و غیره در OpenGL آشنا شوید.
قست های از کد پروژه (فایل main.cpp)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 | #include <iostream> #include <cmath> #include <GlGLUT.h> using namespace std; // Constant Variables #define WIN_WIDTH 600 #define WIN_HEIGHT 600 #define WIN_POS_X 300 #define WIN_POS_Y 100 #define WIN_BACKGROUND 0.0, 0.0, 0.0, 0.0 // black #define WIN_FOREGROUND 1.0, 1.0, 1.0 // white #define PI 3.14 // Global Variables int circleCount = 0; float radius = 0.2; // Functions Prototype void OpenGlInitializer(); void Display(); void Resize(int , int ); void DrawCircle(); // Program entry point int main(int argc, char ** argv) { cout<<"Enter circle count >>> "; cin>>circleCount; glutInit(&argc, argv); OpenGlInitializer(); glutMainLoop(); return 0; } //////////////////////////////////// void DrawCircle() { int points = 360; float d = 2 * PI / points; float angle; for (int i = 0; i < circleCount; i++) { glBegin(GL_LINE_LOOP); glColor3f(WIN_FOREGROUND); angle = 0.0; glEnd(); radius += 0.2; } } |
سلام می خوام به کمک Qt و زبان c++ یه دایره بکشم، میشه کمکم کنید ؟
تو سایت خود QT آموزشش هست. رسم دایره با QT