2025-06-27 00:32:57 +08:00
|
|
|
|
#ifndef MYWIN_DRAW_H__
|
|
|
|
|
#define MYWIN_DRAW_H__
|
|
|
|
|
#include "mywin_type.h"
|
|
|
|
|
|
2025-07-05 19:47:28 +08:00
|
|
|
|
/*****************************<2A>ӿں<D3BF><DABA><EFBFBD>******************************/
|
2025-06-27 00:32:57 +08:00
|
|
|
|
|
2025-07-06 18:46:13 +08:00
|
|
|
|
void WIN_DrawPointSafe(int x, int y, int mode);
|
2025-06-27 00:32:57 +08:00
|
|
|
|
|
2025-07-06 18:46:13 +08:00
|
|
|
|
void WIN_DrawPointNormal(int x, int y, int mode);
|
2025-06-27 00:32:57 +08:00
|
|
|
|
|
2025-07-06 18:46:13 +08:00
|
|
|
|
void WIN_DrawPointColorSafe(int x, int y, u32 color);
|
2025-06-27 00:32:57 +08:00
|
|
|
|
|
2025-07-06 18:46:13 +08:00
|
|
|
|
void WIN_DrawPointColorNormal(int x, int y, u32 color);
|
2025-06-27 00:32:57 +08:00
|
|
|
|
|
2025-07-06 18:46:13 +08:00
|
|
|
|
void WIN_DrawPointSafeColorAlpha(int x, int y, u16 color, u8 alpha);
|
2025-06-27 00:32:57 +08:00
|
|
|
|
|
2025-07-06 18:46:13 +08:00
|
|
|
|
u32 WIN_SetLcdColor(u32 color);
|
2025-06-27 00:32:57 +08:00
|
|
|
|
|
2025-07-06 18:46:13 +08:00
|
|
|
|
u32 WIN_SetLcdBkColor(u32 color);
|
2025-06-27 00:32:57 +08:00
|
|
|
|
|
2025-07-06 18:46:13 +08:00
|
|
|
|
u16 WIN_GetLcdColor16(void);
|
2025-06-27 00:32:57 +08:00
|
|
|
|
|
2025-07-05 19:47:28 +08:00
|
|
|
|
/****************************<2A>ӿں<D3BF><DABA><EFBFBD>End******************************/
|
2025-06-27 00:32:57 +08:00
|
|
|
|
|
2025-07-05 19:47:28 +08:00
|
|
|
|
/*****************************<2A>ַ<EFBFBD><D6B7><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>******************************/
|
2025-06-27 00:32:57 +08:00
|
|
|
|
|
2025-07-06 18:46:13 +08:00
|
|
|
|
void WIN_DrawTxtAt(char *txt, int x, int y);
|
2025-06-27 00:32:57 +08:00
|
|
|
|
|
2025-07-06 18:46:13 +08:00
|
|
|
|
// <20><>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD>ַ<EFBFBD><D6B7><EFBFBD>,֧<>ֻ<EFBFBD><D6BB>з<EFBFBD>\n
|
|
|
|
|
void WIN_DrawTxtAtRect(char *txt, int x, int y, int x_size, int y_size);
|
2025-06-27 00:32:57 +08:00
|
|
|
|
|
2025-07-06 18:46:13 +08:00
|
|
|
|
// <20><>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD>ξ<EFBFBD><CEBE><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD>ַ<EFBFBD><D6B7><EFBFBD>,֧<>ֻ<EFBFBD><D6BB>з<EFBFBD>\n
|
|
|
|
|
void WIN_DrawTxtCenterAtRect(char *txt, int x, int y, int x_size, int y_size);
|
2025-06-27 00:32:57 +08:00
|
|
|
|
|
2025-07-06 18:46:13 +08:00
|
|
|
|
void WIN_DrawTxtHCenterAt(char *txt, int x, int y);
|
2025-06-27 00:32:57 +08:00
|
|
|
|
|
2025-07-05 19:47:28 +08:00
|
|
|
|
/***************************<2A>ַ<EFBFBD><D6B7><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>End******************************/
|
2025-06-27 00:32:57 +08:00
|
|
|
|
|
2025-07-05 19:47:28 +08:00
|
|
|
|
/*****************************<2A><><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD>ͼ<EFBFBD><CDBC>******************************/
|
2025-06-27 00:32:57 +08:00
|
|
|
|
|
2025-07-06 18:46:13 +08:00
|
|
|
|
void WIN_DrawHLine(int x_s, int y, int x_e);
|
2025-06-27 00:32:57 +08:00
|
|
|
|
|
2025-07-06 18:46:13 +08:00
|
|
|
|
// <20><><EFBFBD><CDB8><EFBFBD>ȵĻ<C8B5><C4BB>ߣ<EFBFBD>dis=0<><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>dis=1<><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
void WIN_DrawHLineAlpha(int x_s, int y, int x_e, u16 color, u8 dis);
|
2025-06-27 00:32:57 +08:00
|
|
|
|
|
2025-07-06 18:46:13 +08:00
|
|
|
|
void WIN_DrawVLine(int x, int y_s, int y_e);
|
2025-06-27 00:32:57 +08:00
|
|
|
|
|
2025-07-06 18:46:13 +08:00
|
|
|
|
// <20><><EFBFBD><EFBFBD> x1,y1:<3A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> x2,y2:<3A>յ<EFBFBD><D5B5><EFBFBD><EFBFBD><EFBFBD>
|
2025-06-27 00:32:57 +08:00
|
|
|
|
void WIN_DrawLine(int x1, int y1, int x2, int y2);
|
|
|
|
|
|
2025-07-06 18:46:13 +08:00
|
|
|
|
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߶<EFBFBD>
|
|
|
|
|
void WIN_DrawLines(POINT_Struct *Points, int PointCount);
|
2025-06-27 00:32:57 +08:00
|
|
|
|
|
2025-07-06 18:46:13 +08:00
|
|
|
|
// <20><>ָ<EFBFBD><D6B8>λ<EFBFBD>û<EFBFBD>һ<EFBFBD><D2BB>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD>С<EFBFBD><D0A1>Բ (x,y):<3A><><EFBFBD>ĵ<EFBFBD> r :<3A>뾶
|
|
|
|
|
void WIN_DrawCircle(int x0, int y0, int r);
|
2025-06-27 00:32:57 +08:00
|
|
|
|
|
2025-07-06 18:46:13 +08:00
|
|
|
|
// <20><><EFBFBD>ƿ<EFBFBD><C6BF>ľ<EFBFBD><C4BE><EFBFBD>
|
|
|
|
|
void WIN_DrawRect(int x, int y, int x_size, int y_size);
|
2025-06-27 00:32:57 +08:00
|
|
|
|
|
2025-07-06 18:46:13 +08:00
|
|
|
|
// <20><><EFBFBD>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD>
|
2025-06-27 00:32:57 +08:00
|
|
|
|
void WIN_DrawPolygon(POINT_Struct *Points, int PointCount);
|
|
|
|
|
|
2025-07-06 18:46:13 +08:00
|
|
|
|
// <20>ô<EFBFBD>ɫ<EFBFBD><C9AB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
void WIN_FillRectByColor(int x, int y, int x_size, int y_size);
|
2025-06-27 00:32:57 +08:00
|
|
|
|
|
2025-07-06 18:46:13 +08:00
|
|
|
|
// <20>ô<EFBFBD>ɫ<EFBFBD><C9AB><EFBFBD><CDB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
void WIN_FillRectByColorAlpha(int x, int y, int x_size, int y_size, u8 alpha);
|
2025-06-27 00:32:57 +08:00
|
|
|
|
|
2025-07-06 18:46:13 +08:00
|
|
|
|
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
2025-06-27 00:32:57 +08:00
|
|
|
|
void WIN_FillTriangle(int x1, int x2, int x3, int y1, int y2, int y3);
|
|
|
|
|
|
2025-07-06 18:46:13 +08:00
|
|
|
|
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
2025-06-27 00:32:57 +08:00
|
|
|
|
void WIN_FillPolygon(POINT_Struct *Points, int PointCount);
|
|
|
|
|
|
2025-07-06 18:46:13 +08:00
|
|
|
|
// <20><><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݻ<EFBFBD>ͼƽ<CDBC><C6BD>
|
|
|
|
|
WIN_PlaneAAStruct *WIN_CreatPlaneAA(int x, int y, int x_size, int y_size,
|
|
|
|
|
int accuracy);
|
2025-06-27 00:32:57 +08:00
|
|
|
|
|
2025-07-06 18:46:13 +08:00
|
|
|
|
// ɾ<><C9BE>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƽ<EFBFBD><C6BD>
|
2025-06-27 00:32:57 +08:00
|
|
|
|
void WIN_DeletePlaneAA(WIN_PlaneAAStruct *p);
|
|
|
|
|
|
2025-07-06 18:46:13 +08:00
|
|
|
|
// <20><>ƽ<EFBFBD><C6BD><EFBFBD>ڻ<EFBFBD><DABB>ƿ<EFBFBD><C6BF><EFBFBD><EFBFBD>ݵ<EFBFBD>
|
|
|
|
|
void WIN_DrawPointAA(WIN_PlaneAAStruct *p, int x, int y);
|
2025-06-27 00:32:57 +08:00
|
|
|
|
|
2025-07-06 18:46:13 +08:00
|
|
|
|
// <20><><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݻ<EFBFBD>ͼƽ<CDBC><C6BD>
|
|
|
|
|
void WIN_DrawPlaneAA(WIN_PlaneAAStruct *p);
|
2025-06-27 00:32:57 +08:00
|
|
|
|
|
2025-07-06 18:46:13 +08:00
|
|
|
|
// <20><><EFBFBD><EFBFBD><EFBFBD>ݻ<EFBFBD><DDBB><EFBFBD>
|
|
|
|
|
void WIN_DrawLineAA(int x1, int y1, int x2, int y2, int accuracy);
|
2025-06-27 00:32:57 +08:00
|
|
|
|
|
2025-07-05 19:47:28 +08:00
|
|
|
|
/***************************<2A><><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD>ͼ<EFBFBD><CDBC>End******************************/
|
2025-06-27 00:32:57 +08:00
|
|
|
|
|
2025-07-05 19:47:28 +08:00
|
|
|
|
/*******************************<2A><><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC>********************************/
|
2025-06-27 00:32:57 +08:00
|
|
|
|
|
2025-07-06 18:46:13 +08:00
|
|
|
|
// <20>ñ<EFBFBD><C3B1><EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
void WIN_FillRect(int x, int y, int x_size, int y_size, u16 *buff, u16 pic_x,
|
|
|
|
|
u16 pic_y, u16 pic_xsize, u16 pic_ysize);
|
2025-06-27 00:32:57 +08:00
|
|
|
|
|
2025-07-06 18:46:13 +08:00
|
|
|
|
// <20>ô<EFBFBD><EFBFBD><CDB8><EFBFBD>ȵ<EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
void WIN_FillRectAlpha(int x, int y, int x_size, int y_size, void *buff,
|
|
|
|
|
u16 pic_x, u16 pic_y, u16 pic_xsize, u16 pic_ysize);
|
2025-06-27 00:32:57 +08:00
|
|
|
|
|
2025-07-06 18:46:13 +08:00
|
|
|
|
// <20><><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC>,ͼ<><CDBC>ʹ<EFBFBD><CAB9>const<73><74><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڳ<EFBFBD><DAB3><EFBFBD><EFBFBD><EFBFBD>䱾<EFBFBD><E4B1BE><EFBFBD>Ѿ<EFBFBD><D1BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˴<EFBFBD>С<EFBFBD>Ȳ<EFBFBD><C8B2><EFBFBD>
|
|
|
|
|
void WIN_DrawImag(int x, int y, int xsize, int ysize, const u8 *buff);
|
2025-06-27 00:32:57 +08:00
|
|
|
|
|
2025-07-06 18:46:13 +08:00
|
|
|
|
// <20><><EFBFBD><EFBFBD>ͼ<EFBFBD>꣬<EFBFBD><EAA3AC><EFBFBD>Dz<EFBFBD><C7B2><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD>ɫ
|
|
|
|
|
void WIN_DrawImagButColor(int x, int y, int xsize, int ysize, const u8 *buff,
|
|
|
|
|
u16 color);
|
2025-06-27 00:32:57 +08:00
|
|
|
|
|
2025-07-06 18:46:13 +08:00
|
|
|
|
// <20><><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC>,<2C><>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7><EFBFBD>ֻ<EFBFBD><D6BB><EFBFBD>Ϊָ<CEAA><D6B8><EFBFBD><EFBFBD>ɫ
|
|
|
|
|
void WIN_DrawImagByColor(int x, int y, int xsize, int ysize, const u8 *buff,
|
|
|
|
|
u16 color);
|
2025-06-27 00:32:57 +08:00
|
|
|
|
|
2025-07-06 18:46:13 +08:00
|
|
|
|
// <20><><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC>,<2C><>ԭͼ<D4AD><CDBC>ת<EFBFBD><D7AA>Ϊ<CEAA><CDB8><EFBFBD>ȣ<EFBFBD><C8A3><EFBFBD>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD>ɫ<EFBFBD><C9AB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
// <20>˺<EFBFBD><CBBA><EFBFBD>Ч<EFBFBD>ʱȽϵͣ<CFB5>ֻ<EFBFBD><D6BB><EFBFBD>ڻ<EFBFBD><DABB><EFBFBD>Сͼ<D0A1>꣬<EFBFBD><EAA3AC><EFBFBD><EFBFBD>ͼƬʹ<C6AC>þ<EFBFBD><C3BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>亯<EFBFBD><E4BAAF>
|
|
|
|
|
void WIN_DrawImagByAlpha(int x, int y, int xsize, int ysize, const u8 *buff,
|
|
|
|
|
u16 color);
|
2025-06-27 00:32:57 +08:00
|
|
|
|
|
2025-07-06 18:46:13 +08:00
|
|
|
|
// <><CDB8><EFBFBD>Ȼ<EFBFBD><C8BB><EFBFBD>ͼ<EFBFBD><EFBFBD>ɫ<EFBFBD><C9AB><EFBFBD><EFBFBD>
|
|
|
|
|
void WIN_DrawImagByAlphaAnti(int x, int y, int xsize, int ysize, const u8 *buff,
|
|
|
|
|
u16 color);
|
2025-06-27 00:32:57 +08:00
|
|
|
|
|
2025-07-05 19:47:28 +08:00
|
|
|
|
/*******************************<2A><><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC>End********************************/
|
2025-06-27 00:32:57 +08:00
|
|
|
|
|
2025-07-05 19:47:28 +08:00
|
|
|
|
/********************************<2A><><EFBFBD><EFBFBD>********************************/
|
2025-06-27 00:32:57 +08:00
|
|
|
|
|
2025-07-06 18:46:13 +08:00
|
|
|
|
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ
|
|
|
|
|
void WIN_Clear(void);
|
2025-06-27 00:32:57 +08:00
|
|
|
|
|
2025-07-05 19:47:28 +08:00
|
|
|
|
/*******************************<2A><><EFBFBD><EFBFBD>End********************************/
|
2025-06-27 00:32:57 +08:00
|
|
|
|
|
2025-07-05 19:47:28 +08:00
|
|
|
|
/*******************************<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դ********************************/
|
2025-06-27 00:32:57 +08:00
|
|
|
|
|
2025-07-06 18:46:13 +08:00
|
|
|
|
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵľ<D6B5><C4BE>δ<EFBFBD>С
|
|
|
|
|
void WIN_GetTxtRectSize(char *txt, int *x_size, int *y_size);
|
2025-06-27 00:32:57 +08:00
|
|
|
|
|
2025-07-06 18:46:13 +08:00
|
|
|
|
// <20><><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD><EFBFBD>ݵijߴ<C4B3>,<2C><><EFBFBD><EFBFBD>0<EFBFBD><30><EFBFBD>ɹ<EFBFBD><C9B9><EFBFBD><EFBFBD><EFBFBD>0<EFBFBD><30>ʧ<EFBFBD><CAA7>
|
|
|
|
|
int WIN_GetImageSize(u8 *buff, int *xsize, int *ysize);
|
2025-06-27 00:32:57 +08:00
|
|
|
|
|
2025-07-05 19:47:28 +08:00
|
|
|
|
/******************************<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ԴEnd********************************/
|
2025-06-27 00:32:57 +08:00
|
|
|
|
|
|
|
|
|
#endif
|