算法思想
直線的基本微分方程為:
。
設直線通過點
和
,則直線方程可表示為:
。
如果已知第
點的坐標,可用步長
和
得到第
點的坐標為:
或
如下圖:
將算得的直線上每個點的當前坐標,按四捨五入得到光柵點的位置。
算法描述
DDA算法的C語言描述如下。當
時,實現代碼:
當
時,實現代碼:
任意斜率代碼實現如下:(注意自己補上,此處n做分母可能為0)
DDA算法,是計算機圖形學中一種基於直線的微分方程來生成直線的方法,由於有浮點數運算與取整,該算法不利於硬體實現 。
直線的基本微分方程為:
。
設直線通過點
和
,則直線方程可表示為:
。
如果已知第
點的坐標,可用步長
和
得到第
點的坐標為:
或
如下圖:
將算得的直線上每個點的當前坐標,按四捨五入得到光柵點的位置。
DDA算法的C語言描述如下。當
時,實現代碼:
當
時,實現代碼:
任意斜率代碼實現如下:(注意自己補上,此處n做分母可能為0)