48 uint8_t *pFrame, Mask;
51 Mask = 0x01 << (Y % 8);
52 pFrame = pCanvas->
pFrame + pCanvas->
Width*nLine + X;
75 int x,y, acc=0, inc, x_delta, y_delta;
85 for(y=Y_Start;y<Y_End;y++)
95 for(x=X_Start;x<X_End;x++){
98 }
else if (abs(X1-X2) >= abs(Y1-Y2)){
111 x_delta = X_End - X_Start;
112 y_delta = Y_End - Y_Start;
113 inc = (y_delta >= 0)?1:-1;
114 y_delta = abs(y_delta);
118 for(x=X_Start;x<X_End;x++){
139 y_delta = Y_End - Y_Start;
140 x_delta = X_End - X_Start;
141 inc = (x_delta >= 0)?1:-1;
142 x_delta = abs(x_delta);
146 for(y=Y_Start;y<Y_End;y++){
161 DRAW_Line(pCanvas, X1, Y1, X2, Y1, Color);
162 DRAW_Line(pCanvas, X2, Y1, X2, Y2, Color);
163 DRAW_Line(pCanvas, X2, Y2, X1, Y2, Color);
164 DRAW_Line(pCanvas, X1, Y2, X1, Y1, Color);
168 int x = Radius, y = 0;
169 int radiusError = 1-x;
188 radiusError+=2*(y-x)+1;
197 for(y=0;y<pCanvas->
Height;y++){
198 for(x=0;x<pCanvas->
Width;x++){
204 uint8_t *pFrame, Mask;
208 memset(pFrame, 0x00, pCanvas->
FrameSize);
209 for(y=0;y<pCanvas->
Height;y++){
211 for(x=0;x<pCanvas->
Width;x++){
229#ifdef SUPPORT_LCD_FONT
235 unsigned char *pFont;
242 pFont = font_table->
pBitmap[(
unsigned char)Text][y];
262 nLen = strlen(pText);
void LCD_FrameCopy(uint8_t *Data)
void DRAW_Circle(LCD_CANVAS *pCanvas, int x0, int y0, int Radius, int Color)
void DRAW_PrintString(LCD_CANVAS *pCanvas, int X0, int Y0, char *pText, int Color, FONT_TABLE *font_table)
void DRAW_Rect(LCD_CANVAS *pCanvas, int X1, int Y1, int X2, int Y2, int Color)
void DRAW_Clear(LCD_CANVAS *pCanvas, int nValue)
void DRAW_PrintChar(LCD_CANVAS *pCanvas, int X0, int Y0, char Text, int Color, FONT_TABLE *font_table)
FONT API ///////////////////////////////////.
void DRAW_Pixel(LCD_CANVAS *pCanvas, int X, int Y, int Color)
void DRAW_Line(LCD_CANVAS *pCanvas, int X1, int Y1, int X2, int Y2, int Color)
void DRAW_Refresh(LCD_CANVAS *pCanvas)