|
发表于 2021-11-19 22:28:57
|
显示全部楼层
本帖最后由 XIE2099 于 2021-11-20 11:32 编辑
我来当个搬运工,这是B站的
这个算法本论坛也有,需要找一下https://blog.csdn.net/hookie1990/article/details/45024049
也可以参照使用Bresenham算法画圆
/*-----------------------------------------------------------------------
LCD12864_DrawCircle : LCD12864画圆
输入参数 :(x,y) : 圆点坐标
编写日期 :2019年1月29日
最后修改日期 :2019年1月29日
-----------------------------------------------------------------------*/
void LCD12864_DrawCircle(int x,int y,int r)
{
int xc=0;
int yc,p;
yc=r;
p=3-(r<<1);
while(xc <= yc)
{
LCD12864_DrawPoint(x+xc,y+yc);
LCD12864_DrawPoint(x+xc,y-yc);
LCD12864_DrawPoint(x-xc,y+yc);
LCD12864_DrawPoint(x-xc,y-yc);
LCD12864_DrawPoint(x+yc,y+xc);
LCD12864_DrawPoint(x+yc,y-xc);
LCD12864_DrawPoint(x-yc,y+xc);
LCD12864_DrawPoint(x-yc,y-xc);
if(p<0)
{
p += (xc++ << 2) + 6;
}
else
p += ((xc++ - yc--)<<2) + 10;
}
} |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
|