向量圖形

維基百科,自由的百科全書
(已重新導向自 向量圖)
跳到: 導覽搜尋
向量圖形的顯示效果範例:(a)原始向量圖;(b)向量圖放大8倍;(c)位圖放大8倍。位圖的放大質素較差,但是向量圖可以不降低質素地無限放大。

向量圖形電腦圖形學中用直線或者多邊形等基於數學方程的幾何圖元表示影像。向量圖形與使用像素表示影像的位圖不同。

綜述[編輯]

所有的現代電腦顯示器都要將向量圖形轉換成柵格影像的格式,包含螢幕上每個像質數值的柵格影像保存在記憶體中。

從電腦發展的最初1950年代一直到1980年代,曾經使用過一種不同類型的向量圖形系統顯示器。在這些系統中CRT顯示器的電子束直接逐段生成所需圖形,螢幕其它部分保持為黑的狀態。為了達到沒有閃爍或者接近沒有閃爍的效果,這個過程每秒要重複很多次。這種顯示系統可以生成解像度非常高的藝術線條,並且不需要柵格系統生成同樣解像度所需要的對於當時來說非常巨大的記憶體空間。這種基於向量的顯示器稱為X-Y顯示器

向量化是去除照片中多餘資訊的好方法。(為了在本頁顯示,影像轉成了JPEG格式。)
原始照片,JPEG柵格影像
向量化的Steam Locomotive 7646,最初是Windows Metafile格式。

向量圖形顯示器的最初應用之一是US SAGE防空系統。向量圖形系統只有在1999年美國的空管中出現過故障,現在依然在軍隊以及一些特殊系統中使用。另外,1963年,電腦圖形學先驅Ivan Sutherland在MIT Lincoln Laboratory的TX-2上使用向量系統執行他的Sketchpad程式。

後來的向量圖形系統包括Digital的GT40 [1]。有一個名為Vectrex的家庭遊戲系統使用了向量圖形,另外還有「Asteroids」以及「Space wars」這樣的遊樂中心遊戲也使用了向量圖形。另外值得一提的是Tektronix 4014,儘管它的顯示是靜態的。

如今向量圖形這個術語主要用於二維電腦圖形學領域。它是藝術家能夠在柵格顯示器上生成影像的幾種方式之一。另外幾種方式包括文字、多媒體以及三維渲染。實質上而言,所有當今的三維渲染都是二維向量圖形技術的擴充功能。工程製圖領域的繪圖儀仍然直接在圖紙上繪製向量圖形。

目的[編輯]

例如,程式繪製一個半徑r所需的主要資訊是:

  1. 半徑r
  2. 圓心坐標
  3. 輪廓樣式與顏色(可能是透明)
  4. 填充樣式與顏色(可能是透明)

這種繪製圖比位圖的優越之處有:

  • 保存最少的資訊,檔案大小比位圖要小,並且檔案大小與物體的大小無關
  • 在影像處理軟件中,任意放大向量圖形,不會遺失細節或影響清晰度,因為向量圖形是與解像度無關的。無限地放大這個圓,它仍然保持平滑;用多邊形表示的曲線將會顯現出不是真正的曲線
  • 在放大的時候,直線與曲線都不會成比例地變粗,它只會保持不變或者要小於縮放比例;為了看起來比較平滑,使用簡單幾何形狀表示的不規則曲線將會成比例地變粗,並且看起來不再像這些幾何形狀
  • 保存的物體參數可以在後面修改。這也就是說物體的運動縮放旋轉、填充等都不會降低繪製的精度。另外,可以用與裝置無關的單位表示,這樣更好地柵格裝置上進行柵格化
  • 從三維的視角來看,由於陰影可以抽象為形成它們的光線,所以向量圖形的陰影渲染更加真實。這樣就可以得到真實感的影像及渲染效果。
  • 當調整向量圖形的大小、將向量圖形打印到 PostScript 印表機、在 PDF 檔案中保存向量圖形或將向量圖形匯入到基於向量的圖形應用程式中時,向量圖形都將保持清晰的邊緣。因此,對於將在各種輸出媒體中按照不同大小使用的圖稿(如徽標),向量圖形是最佳選擇。[1]

典型的圖元物件[編輯]

這只是其中的一部分,另外還有各種各樣用於不同應用程式的曲線,如「Catmull-Rom樣條」非均勻有理B樣條等。

通常位圖影像也是一個元物件,從概念上來看它同矩形的表現類似。

向量運算[編輯]

向量圖形編輯器通常可以旋轉、平移、映像、拉伸、扭曲向量圖形,通常可以進行仿射變換,改變深度位置並且將圖元與複雜物體合併。 更加複雜的變換包括封閉形狀集合運算並集補集交集等)。

向量圖形非常適合於與裝置無關的簡單或者合成的製圖或者不需要實現真實感的場合。例如,「PostScript」以及PDF頁面描述語言就使用了向量圖形模型。

打印[編輯]

向量藝術線條是打印領域中的一項關鍵技術。因為藝術線條是從一系列數學點得到的,所以無論如何縮放藝術線條打印結果質量都非常高。例如,將同一個向量標識圖打印到名片上或者放大到廣告牌上,都可以得到同樣的影像質量。與此不同的是,如果位圖從名片大小放大到廣告版的尺寸,那麼影像細節將會變得非常模糊。

三維造型[編輯]

三維電腦圖形學中,向量表面表示非常常見,而位圖可以用作表面紋理、高度場數據以及凸凹紋理對映等特殊目的。在低端系統中,在應用程式中用簡單的多邊形網格表示幾何細節,在這些場合互動幀率或者簡單性都是非常重要的。在進階系統中,如果希望透過犧牲渲染時間的方法換取更好的影像質量及精度,那麼就可以使用貝塞爾曲面NURBS或者細分曲面等平滑表示方法。但是,我們也可以用「Phong shading」這樣的演算法從多邊形網格實現一個平滑曲面。

參見[編輯]