直線的生成與顯示
一、基本概念
1.1 畫直線的引入
- 在計算機產生的圖形中,用到大量的直線,畫好直線是非常有意義的。
1.2 繪製直線的要求
- 線條應該顯得筆直:由連續點組成的直線要顯示在離散網格的平面上,一定會有不經過網格的點。在這種情況下,必須選擇靠近直線的網格點來逼近這條直線。若選擇的好,線就顯得較直;否則就會較彎曲。
- 直線端點位置應該準確:畫出的線段如果不準確,往往會使兩條線之間不能很好的鑲接,如下圖。
- 直線濃度應該均勻:線段的濃度與單位線段中所顯示的點數成正比。要保持線段的濃度均勻端點應該等距分佈。要取得均勻的線段濃度,應該保持每單位長度的點數是個常數。
- 顯示線段的速度應快:生成直線可用軟件和硬件來實現,一般情況下,硬件要比軟件實現得快。
二、直線的生成算法
- 直線的掃描轉換: 確定最佳逼近於該直線的一組像素,並且按掃描線順序,對這些像素進行寫操作。
- 三個常用算法:數值微分法(DDA)、中點畫線法、Bresenham算法。