کتابخانه گرافیکی دوبعدی در emWin

رنگ ها در emwin
رنگ ها در emwin
ژوئن 22, 2016
کتابخانه گرافیکی دوبعدی در emWin جلسه ی دوم
ژوئن 27, 2016

کتابخانه گرافیکی دوبعدی در emWin

رابط گرافیکی emWin دارای یک کتابخانه ی گرافیکی کامل که برای اکثر برنامه های کاربردی کافی می باشد ، را شامل می شود.

روال عرضه شده با EmWin را میتوان به همراه خلاصه سازی یا بدون آن استفاده کرد .(اشاره به قسمت ویندوز منیجر) و اسال الگوریتم های آن سریع و کار آمد می باشند.

در حال حاضر تنها تابع () GUI_DrawArc نیاز به محاسبات اعشاری دارد.

حال هدف از آموزش این قسمت از emwin استفاده از توابع گرافیکی دو بعدی می باشد.

 

تابع های گرافیکی :

این کتابخانه دارای توابع متعددی است که شامل بر ۱۰۵ تابع می باشد. ابتدا هفت تابع اول در این جلسه بررسی شده و در جلسات بعد توابع هر گروه به طور مجزا بررسی می شوند.

۱:

void GUI_GetClientRect(GUI_RECT * pRect);

مستطیل سرویس گیرنده جاری به استفاده از ویندوز منیجر یا استفاده نکردن از آن بستگی دارد.

اگر از ویندوز منیجر استفاده شود ، تابع از  برای بازسازی مستطیل استفاده میکند و اگر استفاده نشود ، مستطیل سرویس گیرنده برابر با کل صفحه نمایش خواهد بود.

۲:

GUI_DRAWMODE GUI_GetDrawMode(void);

مد ترسیم جاری را بر میگرداند.

۳:

U8 GUI_GetPenSize(void);

سایز قلم جاری را بر میگرداند.

۴:

unsigned GUI_GetPixelIndex(int x, int y);

از یک موقعیت داده شده شاخص رنگ را برمی گرداند.

۵:

void GUI_SetClipRect(const GUI_RECT * pRect);

مستطیل قطع را برای محدود کردن خروجی تنظیم می کند.

۶:

GUI_DRAWMODE GUI_SetDrawMode(GUI_DRAWMODE dm);

حالت ترسیم خاصی را انتخاب می کند. حالت ها به شرح زیر می باشند.

GUI_DM_NORMAL پیش فرض

این حالت ، محتوای صفحه نمایش توسط گرافیک ترسیم می شود.

GUI_DM_XOR این حالت ، زمانی که ترسیم می کنیم محتوای صفحه نمایش را معکوس می کند.

dm: حالت ترسیم

این تابع تنظیم ترسیم قبلی را نیز بر می گرداند.

۷:

U8 GUI_SetPenSize(U8 PenSize);

اندازه ی قلم را که برای طراحی توسط توابع دیگر مورد استفاده قرار می گیرد را بر می گرداند.

PenSize : اندازه ی سایز قلم به پیکسل

مقدار PenSize بایستی بزرگتر یا مساوی ۱ باشد. چون مقدار کوچکتر از یک برای سبک های تابع ها امکان پذیر نیست.

توابع زیر از مقدار سایز قلم تحت تاثیر قرار میگیرند :

GUI_DrawPoint()
GUI_DrawLine()
GUI_DrawLineRel()
GUI_DrawLineTo()
GUI_DrawPolyLine()
GUI_DrawPolygon()
GUI_DrawEllipse()
GUI_DrawArc()

 

حسین
حسین
من 28 سال سن دارم و رشته ی تحصیلی ام مهندسی برق قدرت بوده علاوه بر برق علاقمند به دنیای الکترونیک ، برنامه نویسی و طراحی وب هستم . این سایت رو برای آموزش رابط گرافیکی emWin راه اندازی کردم که بدون کمک شما جلو رفتن غیر ممکنه پس اگه آموزش یا مطالب مرتبطی دارید برام ایمیل کنید تا به اسم خودتون توی سایت منتشر بشه. hosseintomari@gmail.com
اشتراک
اطلاع از
guest

0 نظرات
بازخورد داخلی
مشاهده همه نظرات
0
برای بهبود مطالب، لطفاً نظر بدهید.x