Esempio n. 1
0
void drawCircle(int x0, int y0, int radius) 
{
	int x = 0;
	int y = radius;
	int delta = 1 - 2 * (radius);
	int error = 0;

	while(y >= 0) 
		{
		
		gdiPoint(0,x0 + x, y0 + y,0);
		gdiPoint(0,x0 + x, y0 - y,0);
		gdiPoint(0,x0 - x, y0 + y,0);
		gdiPoint(0,x0 - x, y0 - y,0);
		
		error = 2 * (delta + y) - 1;
		
			if(delta < 0 && error <= 0) 
				{
				++x;
				delta += 2 * x + 1;
				continue;
			  }
				
		error = 2 * (delta - x) - 1;
				
			if(delta > 0 && error > 0) 
				{
				--y;
				delta += 1 - 2 * y;
				continue;
			  }
				
		++x;
		delta += 2 * (x - y);
		--y;			
	  }
}
Esempio n. 2
0
void CRT_Draw_Ring(u16 r, u16 xpos, u16 ypos, u8 fill, float tt)
    {       
			u32 s = 0;
      static double phi = 0;
        if (1)
          {
            for(;r>0;r--)
            {
              float a = 0;
								u16 x =0, y = 0;  
								for(s = 0 ;s<((2*3.1415)/tt); s++, a+=tt)
									{     
										x=xpos+(r*sin(a+phi));
										y=ypos+(r*cos(a+phi));
										gdiPoint(0,x, y,fill); 
//phi +=0.000001;										
										
									}
            }
          } 
					
					//phi += 0.3;
//          else
//          {
//            float a = 0;
//      u16 x =0, y = 0;
//      
//      for(s = 0 ;s<(200*2*3.14); s++, a+=9)
//        {     
//          x=xpos+(r*sin(a));
//          y=ypos+(r*cos(a));
//          gdiPoint(0,x, y,1);     
//        }
//          }
   
         return;
     }
Esempio n. 3
0
void demoInit(void) {

i16		x, y, x1, y1, i, flip;


//	Demo Point

	vidClearScreen();
	gdiRectangle(0,0,(VID_PIXELS_X - 1),VID_VSIZE - 1,0);
	gdiDrawTextEx(180, 40, "ARTEKIT", GDI_ROP_COPY);
	gdiDrawTextEx(161, 55, "AK-STM32-LKIT", GDI_ROP_COPY);
	gdiDrawTextEx(172, 70, "POINT DEMO", GDI_ROP_COPY);
	sysDelayMs(3000);
	srand(sysTicks);
	for (i = 0; i < 5000; i++) {
		sysDelayMs(1);
		x = rand();	x = x % (VID_PIXELS_X - 1);
		y = rand();	y = y % VID_VSIZE - 1;
		gdiPoint(NULL,x,y,GDI_ROP_COPY);
	}
	sysDelayMs(3000);

//	Demo Line

	vidClearScreen();
	gdiRectangle(0,0,(VID_PIXELS_X - 1),VID_VSIZE - 1,0);
	gdiDrawTextEx(180, 40, "ARTEKIT", GDI_ROP_COPY);
	gdiDrawTextEx(161, 55, "AK-STM32-LKIT", GDI_ROP_COPY);
	gdiDrawTextEx(175, 70, "LINE DEMO", GDI_ROP_COPY);
	sysDelayMs(3000);
	srand(sysTicks);
	for (i = 0; i < 100; i++) {
		sysDelayMs(50);
		x = rand();	x = x % (VID_PIXELS_X - 1);
		y = rand();	y = y % VID_VSIZE - 1;
		x1 = rand();	x1 = x1 % (VID_PIXELS_X - 1);
		y1 = rand();	y1 = y1 % VID_VSIZE - 1;
		gdiLine(NULL,x,y,x1,y1,GDI_ROP_COPY);
	}
	sysDelayMs(3000);

//	Demo Square

	vidClearScreen();
	gdiRectangle(0,0,(VID_PIXELS_X - 1),VID_VSIZE - 1,0);
	gdiDrawTextEx(180, 40, "ARTEKIT", GDI_ROP_COPY);
	gdiDrawTextEx(161, 55, "AK-STM32-LKIT", GDI_ROP_COPY);
	gdiDrawTextEx(157, 70, "RECTANGLE DEMO", GDI_ROP_COPY);
	sysDelayMs(3000);
	srand(sysTicks);
	for (i = 0; i < 100; i++) {
		sysDelayMs(50);
		x = rand();	x = x % (VID_PIXELS_X - 1);
		y = rand();	y = y % VID_VSIZE - 1;
		x1 = rand();	x1 = x1 % 100;
		y1 = rand();	y1 = y1 % 100;
		gdiRectangle(x,y,x1,y1,GDI_ROP_COPY);
	}
	sysDelayMs(3000);

//	Demo Circle

	vidClearScreen();
	gdiRectangle(0,0,(VID_PIXELS_X - 1),VID_VSIZE - 1,0);
	gdiDrawTextEx(180, 40, "ARTEKIT", GDI_ROP_COPY);
	gdiDrawTextEx(161, 55, "AK-STM32-LKIT", GDI_ROP_COPY);
	gdiDrawTextEx(165, 70, "CIRCLE DEMO", GDI_ROP_COPY);
	sysDelayMs(3000);
	srand(sysTicks);
	for (i = 0; i < 200; i++) {
		sysDelayMs(20);
		x = rand();	x = x % (VID_PIXELS_X - 1);
		y = rand();	y = y % VID_VSIZE - 1;
		x1 = rand(); x1 = x1 % 80;
		gdiCircle(x,y,x1,GDI_ROP_COPY);
	}
	sysDelayMs(3000);

//	Demo Bitmap

	vidClearScreen();
	gdiRectangle(0,0,(VID_PIXELS_X - 1),VID_VSIZE - 1,0);
	gdiDrawTextEx(180, 40, "ARTEKIT", GDI_ROP_COPY);
	gdiDrawTextEx(161, 55, "AK-STM32-LKIT", GDI_ROP_COPY);
	gdiDrawTextEx(165, 70, "BITMAP DEMO", GDI_ROP_COPY);
	sysDelayMs(3000);

	x = 100;
	y = 130;
	flip = 0;
	for (i = 0; i < 100; i++) {
		sysDelayMs(150);
		if (flip) {
			flip = 0;
			gdiBitBlt(NULL,x,y,15,12,(pu8) deBadBoys1,GDI_ROP_COPY);
		} else {
			flip = 1;
			gdiBitBlt(NULL,x,y,15,12,(pu8) deBadBoys2,GDI_ROP_COPY);
		}
		x += 2;
	}
	sysDelayMs(3000);

	vidClearScreen();
	gdiRectangle(0,0,(VID_PIXELS_X - 1),VID_VSIZE - 1,0);
	gdiDrawTextEx(180, 40, "ARTEKIT", GDI_ROP_COPY);
	gdiDrawTextEx(161, 55, "AK-STM32-LKIT", GDI_ROP_COPY);
	gdiDrawTextEx(115, 75, "ARM CORTEX DEVELOPMENT BOARDS", GDI_ROP_COPY);

	gdiDrawTextEx(156, 90, "WWW.ARTEKIT.EU", GDI_ROP_COPY);
	gdiDrawTextEx(141, 120, "FREE GRAPHIC ENGINE", GDI_ROP_COPY);
	gdiDrawTextEx(165, 130, "SOURCE CODE", GDI_ROP_COPY);

	while (1) {};


}