圆的角度DDA算法初试
摘要:
听老师讲到dx=-r*sini*di;dy=r*cosi*di(i表示角度),就关掉视频干别的了。早起猜了猜后续算法,核心思想应该是:不同半径的圆周长不同,为保证长为C的圆周描绘连续,保证有C个像素点,这样di=2PI/C=r,即圆心角每增加di,圆周长增加1像素.从公式看出,r越大,圆心角细分的越厉害,i的累加误差越小。我测了下r=10情形下,累加误差达到0.3,但r=100时,累加误差就只0.03了。 按照如下坐标系: 只需算出区域1的像素点,再对称出2区域,其余区域就可以由区域1,2做x/y对称得到。 流程图画的很丑:下面是代码:void drawCircle_dda(int x0,i. 阅读全文
posted @ 2013-03-12 16:20 weiweishuo 阅读(1120) 评论(0) 推荐(0) 编辑