完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
|
在tft上画圆。。用的是Bresenham算法。可是画出的圆失真严重,请问要怎么才能画出比较圆的圆?
Bresenham算法代码如下 void CirclePoint(uint16 x,uint16 y,uint16 x0,uint16 y0,uint16 color) { PutPixel(x,y,color); PutPixel(y,x,color); PutPixel(x,2*y0-y,color); PutPixel(y,2*y0-x,color); PutPixel(2*x0-y,2*y0-x,color); PutPixel(2*x0-x,2*y0-y,color); PutPixel(2*x0-x,y,color); PutPixel(2*x0-y,x,color); } void MidBresenhamcircle(uint16 x0,uint16 y0,uint16 R) { int16 x,y; int16 d; x=x0; y=y0+R; d=3-2*R;/* 计算初始值 */ while(x<(x0+R/1.4)) { CirclePoint(x,y,x0,y0,2); /*绘制点(x,y)及其在八分圆中的另外7个对称点*/ if(d<0) d+=4*x+6; /*根据误差项d的判断,决定非最大位移方向上是走还是不走*/ else { d+=4*(x-y)+10; y--; } x++; } } |
|
相关推荐
1个回答
|
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
265 浏览 0 评论
【原创】【RA4M2-SENSOR开发板评测】低功耗+USB综合测试
789 浏览 0 评论
1306 浏览 2 评论
787 浏览 0 评论
【RA4M2-SENSOR开发板评测】Analogue+Timers综合测试
1587 浏览 0 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
16901 浏览 31 评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-2 05:20 , Processed in 0.576061 second(s), Total 72, Slave 55 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
669