计算机图形学作业( 二):使用Bresenham算法画直线和圆,并使用光栅化算法填充三角形
Bresenham算法画直线
原理
首先,观察下图:
设一条直线为 y = m x + B \ y=mx+B y=mx+B,那么上图图中的参数为:
然后观察下图:
在图中,红色点为当前的点,我们要计算出下一个点是取高位的黄色点,还是低位的黄色点,就要比较这两个点谁距离直线最近,结合之前的图,可得 d u p p e r \ d_{upper} dupper和 d l o w e r \ d_{lower} dlower的大小 。
如果