Files
player/Project/Src/MyWin/MyWinCore/mywin_draw.h

171 lines
4.2 KiB
C
Raw Normal View History

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
void WIN_DrawPointSafe (int x,int y,int mode);
void WIN_DrawPointNormal (int x,int y,int mode);
void WIN_DrawPointColorSafe (int x,int y,u32 color);
void WIN_DrawPointColorNormal (int x,int y,u32 color);
void WIN_DrawPointSafeColorAlpha (int x,int y,u16 color,u8 alpha);
u32 WIN_SetLcdColor (u32 color);
u32 WIN_SetLcdBkColor (u32 color);
u16 WIN_GetLcdColor16 (void);
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
void WIN_DrawTxtAt (char *txt,int x,int y);
2025-07-05 19:47:28 +08:00
//<2F><>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><>ֻ<EFBFBD><D6BB>з<EFBFBD>\n
2025-06-27 00:32:57 +08:00
void WIN_DrawTxtAtRect (char *txt,int x,int y,int x_size,int y_size);
2025-07-05 19:47:28 +08:00
//<2F><>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD>ξ<EFBFBD><CEBE><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><>ֻ<EFBFBD><D6BB>з<EFBFBD>\n
2025-06-27 00:32:57 +08:00
void WIN_DrawTxtCenterAtRect (char *txt,int x,int y,int x_size,int y_size);
void WIN_DrawTxtHCenterAt (char *txt,int x,int y);
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
void WIN_DrawHLine (int x_s,int y,int x_e);
2025-07-05 19:47:28 +08:00
//<2F><>͸<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>
2025-06-27 00:32:57 +08:00
void WIN_DrawHLineAlpha (int x_s,int y,int x_e,u16 color,u8 dis);
void WIN_DrawVLine (int x,int y_s,int y_e);
2025-07-05 19:47:28 +08:00
//<2F><><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-05 19:47:28 +08:00
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߶<EFBFBD>
2025-06-27 00:32:57 +08:00
void WIN_DrawLines (POINT_Struct *Points, int PointCount);
2025-07-05 19:47:28 +08:00
//<2F><>ָ<EFBFBD><D6B8>λ<EFBFBD>û<EFBFBD>һ<EFBFBD><D2BB>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD>С<EFBFBD><D0A1>Բ (x,y):<3A><><EFBFBD>ĵ<EFBFBD> r :<3A>
2025-06-27 00:32:57 +08:00
void WIN_DrawCircle(int x0,int y0,int r);
2025-07-05 19:47:28 +08:00
//<2F><><EFBFBD>ƿ<EFBFBD><C6BF>ľ<EFBFBD><C4BE><EFBFBD>
2025-06-27 00:32:57 +08:00
void WIN_DrawRect (int x,int y,int x_size,int y_size);
2025-07-05 19:47:28 +08:00
//<2F><><EFBFBD>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD>
2025-06-27 00:32:57 +08:00
void WIN_DrawPolygon(POINT_Struct *Points, int PointCount);
2025-07-05 19:47:28 +08:00
//<2F>ô<EFBFBD>ɫ<EFBFBD><C9AB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
2025-06-27 00:32:57 +08:00
void WIN_FillRectByColor (int x,int y,int x_size,int y_size);
2025-07-05 19:47:28 +08:00
//<2F>ô<EFBFBD>ɫ<EFBFBD><C9AB>͸<EFBFBD><CDB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
2025-06-27 00:32:57 +08:00
void WIN_FillRectByColorAlpha (int x,int y,int x_size,int y_size,u8 alpha);
2025-07-05 19:47:28 +08:00
//<2F><><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-05 19:47:28 +08:00
//<2F><><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-05 19:47:28 +08:00
//<2F><><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݻ<EFBFBD>ͼƽ<CDBC><C6BD>
2025-06-27 00:32:57 +08:00
WIN_PlaneAAStruct *WIN_CreatPlaneAA(int x,int y,int x_size,int y_size,int accuracy);
2025-07-05 19:47:28 +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-05 19:47:28 +08:00
//<2F><>ƽ<EFBFBD><C6BD><EFBFBD>ڻ<EFBFBD><DABB>ƿ<EFBFBD><C6BF><EFBFBD><EFBFBD>ݵ<EFBFBD>
2025-06-27 00:32:57 +08:00
void WIN_DrawPointAA(WIN_PlaneAAStruct *p,int x,int y);
2025-07-05 19:47:28 +08:00
//<2F><><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݻ<EFBFBD>ͼƽ<CDBC><C6BD>
2025-06-27 00:32:57 +08:00
void WIN_DrawPlaneAA (WIN_PlaneAAStruct *p);
2025-07-05 19:47:28 +08:00
//<2F><><EFBFBD><EFBFBD><EFBFBD>ݻ<EFBFBD><DDBB><EFBFBD>
2025-06-27 00:32:57 +08:00
void WIN_DrawLineAA(int x1, int y1, int x2, int y2,int accuracy);
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-05 19:47:28 +08:00
//<2F>ñ<EFBFBD><C3B1><EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
2025-06-27 00:32:57 +08:00
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-07-05 19:47:28 +08:00
//<2F>ô<EFBFBD>͸<EFBFBD><CDB8><EFBFBD>ȵ<EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
2025-06-27 00:32:57 +08:00
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-07-05 19:47:28 +08:00
//<2F><><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>
2025-06-27 00:32:57 +08:00
void WIN_DrawImag (int x,int y,int xsize,int ysize,const u8 *buff);
2025-07-05 19:47:28 +08:00
//<2F><><EFBFBD><EFBFBD>ͼ<EFBFBD><EFBFBD><EAA3AC><EFBFBD>Dz<EFBFBD><C7B2><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD>ɫ
2025-06-27 00:32:57 +08:00
void WIN_DrawImagButColor (int x,int y,int xsize,int ysize,const u8 *buff,u16 color);
2025-07-05 19:47:28 +08:00
//<2F><><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC>,<2C><>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7><EFBFBD>ֻ<EFBFBD><D6BB><EFBFBD>Ϊָ<CEAA><D6B8><EFBFBD><EFBFBD>ɫ
2025-06-27 00:32:57 +08:00
void WIN_DrawImagByColor (int x,int y,int xsize,int ysize,const u8 *buff,u16 color);
2025-07-05 19:47:28 +08:00
//<2F><><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>
//<2F>˺<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>
2025-06-27 00:32:57 +08:00
void WIN_DrawImagByAlpha (int x,int y,int xsize,int ysize,const u8 *buff,u16 color);
2025-07-05 19:47:28 +08:00
//͸<><CDB8><EFBFBD>Ȼ<EFBFBD><C8BB><EFBFBD>ͼ<EFBFBD>񣬷<EFBFBD>ɫ<EFBFBD><C9AB><EFBFBD><EFBFBD>
2025-06-27 00:32:57 +08:00
void WIN_DrawImagByAlphaAnti (int x,int y,int xsize,int ysize,const u8 *buff,u16 color);
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-05 19:47:28 +08:00
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ
2025-06-27 00:32:57 +08:00
void WIN_Clear (void);
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-05 19:47:28 +08:00
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵľ<D6B5><C4BE>δ<EFBFBD>С
2025-06-27 00:32:57 +08:00
void WIN_GetTxtRectSize (char *txt,int *x_size,int *y_size);
2025-07-05 19:47:28 +08:00
//<2F><><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>
2025-06-27 00:32:57 +08:00
int WIN_GetImageSize (u8 *buff,int *xsize,int *ysize);
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