正点原子stm32F407 lcd.c 增加 画实心圆 函数

修改自 正点原子F407探索者 TFTLCD 代码

请与正点原子配套库lcd.c使用,并与lcd.h里添加声明函数

//在指定位置画一个实心圆
//(x,y):坐标
//r    :半径
void LCD_Draw_ALLCircle(u16 x0,u16 y0,u8 r)
{
	int a,b;
	int di;
	a=0;b=r;	  
	di=3-(r<<1);             //判断下个点位置的标志
	while(a<=b)
	{
		int i = a,p = b;
		while(i>0){		
			LCD_DrawPoint(x0+b,y0-i);
			LCD_DrawPoint(x0-i,y0+b);
			i--;
	}		
		while(p>0){		
			LCD_DrawPoint(x0-a,y0-p);
			LCD_DrawPoint(x0-p,y0-a);
			LCD_DrawPoint(x0+a,y0-p);
			LCD_DrawPoint(x0-p,y0+a);
			LCD_DrawPoint(x0+a,y0+p);
			LCD_DrawPoint(x0+p,y0+a);
			p--;
	}
		a++;
		//Bresenham算法画圆    
		if(di<0)di +=4*a+6;	  
		else
		{
			di+=10+4*(a-b);   
			b--;
		} 						    
	}
	LCD_DrawPoint(x0,y0); //圆心坐标
}
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值