圆的特性
- 对于任意的圆点(x,y),这个距离关系可用笛卡尔坐标系中的勾股定理定义为:
- 我们可以在圆斜率的绝对值大于1后,交换x和y来调整间距,但是这种方法增加了算法所需的计算量和处理过程。
- 一种消除不等间距的方法是使用极坐标r和
来计算沿着圆周的点。以参数极坐标形式表示圆方程,可以得到方程组:
- 通过设定在每一取样步骤中寻找最接近圆周像素的决策参数,可以将光栅系统的Bresenham画线算法移植为画圆算法。然而,画圆方程是非线性的,计算像素与圆的距离必须进行平方根运算。Bresenham画圆算法则通过比较像素与圆的距离的平方而避免了平方根运算。
中点圆算法
- 为了能够应用中点画圆算法,而我们定义了一个圆函数: