计算机图形学基础-第二章 VB.NET 绘图基础
GDI+( Graphics Device Interface Plus)是 Windows操作系統用來執行繪畫及其他相關圖形操作的一套子系統,是由. Net Framework中的System.Drawing命名空間提供的一組通過C++類實現的應用程序編程接口,主要負責顯示屏幕和打印設備輸出的有關信息,它使開發人員可以利用 Windows內置的圖形功能輕松地創建圖形應用程序。
作為圖形設備接口的GDI+使得應用開發人員在輸出屏幕和打印機信息時無需考慮具體顯示設備的細節,只需調用GDI+庫輸出的類的一些方法即可完成圖形操作,真正的繪圖工作由這些方法交給特定的設備驅動程序來完成,GDI+使得圖形硬件和應用程序相互隔離從而使開發人員編寫與設備無關的應用程序變得非常容易。本教程將以 VB.Net中的GDI+的技術來實現各種繪圖功能。
GDI+繪圖的流程
刨建 Graphics對象
在VB.NET中用GDI+創建繪圖,必須先創建 Graphics對象。 Graphices對象表示GDI+的繪圖表面,是用來繪制圖形圖像的容器。創建 Graphics對象后,才可以使用GDI+的畫筆、
畫刷等結合Color、Font等對象進行繪制線條形狀、填充區域、顯示文本圖像等操作。
VB. NET中的窗體和所有具有Text屬性的控件都可以作為繪制圖形的表面。創建Graphics對象有以下3種方法。
1.使用 Create Graphics方法創建
通過使用某控件或窗體的 CreateGraphics方法來靈活獲取對Graphics對象的引用,該對象表示該控件或窗體的繪圖表面。這是一種常見的創建方法,其格式為
Dim 對象名 As Graphics 對象名=窗體名(或控件名).CreateGraphics2.利用PaintEventArgs參數傳遞 Graphics對象
通過窗體或控件的Pait事件可以直接完成圖形繪制,在編寫Pant事件處理程序時,利用參數 PaintEventArgs提供的窗體圖形對象。格式為
Dim 對象名 As Graphics 對象名=e.Graphics3.從 Image對象創建
創建 Graphics對象還可以由Image對象或者lmage類派生的任何對象來創建。調用Graphics.Fromlmage,提供要從其中創建 Graphics對象的Imge變量的名稱,如下面代碼所示:
Dim myBitmap as New Bitmap("C:\myPic") Dim g as Graphics =Graphics.Fromlmage( myBitmap)創建畫筆和畫刷
在獲得一個 Graphics對象之后,接下來就要決定在表面上如何進行繪制。可能需要以
下對象中的一個或幾個畫筆、畫刷。在GDI+中,Pen類和Brush類分別表示畫筆和畫刷。
在需要繪制直線、矩形和曲線的邊界時使用畫筆在需要填充圖形對象時使用畫刷。
1.畫筆Pen
在Graphics畫布上處理圖形的輪廓部分需要使用的工具是畫筆Pen。通過使用Pen類可以設置所畫線條的顏色、線寬和樣式,在使用前需要引用System.Drawing.Drawing2D名稱空間。創建畫筆的格式為:
Dim pen As New Pen(Color.Brown, 5)2.畫刷Brush
畫刷Brush主要用于封閉圖形的填充.
圖形繪制
1. 繪制直線的格式為:g.DrawLine(pen, 10, 10, 250, 10) 或者 g.DrawLine(pen, New Point(10, 10), New Point(250, 10))
2. 繪制矩形的格式為:g.DrawRectangle(pen, 10, 10, 250, 10)
2.5 繪制圓 g.DrawEllipse(pen, 10, 10, 50, 50)
3. 繪制橢圓的格式為:g.DrawEllipse(pen, New Rectangle(10, 10, 50, 10))
參數pen為畫筆,參數rect為Rectangle結構,指定圓的外切矩形區域。
4. 繪制弧線的格式為:
5. 繪制扇形
6. 繪制非閉合曲線
7. 填充圖形填充矩形的格式與對應繪制圖形的方法相似,區別是方法名由“繪制”改為“填充”,對應參數pen換成brush。
8. Clear方法使用Clear方法可以清除整個畫布并以指定的背景色填充。
使用 Graphics對象
在創建 Graphics對象、畫筆或畫刷之后,就可以繪制直線、邊框、曲線或圖像了。 Graphis類為繪制和填充圖形、曲線或圖像提供了相應的方法。例如, DrawEllipse使用特定的畫
筆來繪制橢圓的邊界,而FillEllipse將使用一種填充顏色來繪制橢圓。繪制方法使用畫筆作為參數,而填充方法則使用畫刷作為參數。
釋放 Graphics對象
在 Graphics對象使用完畢后,必須將其釋放。在VB.NET中提供了一個 Dispose方法,此方法可以用來釋放Graphics對象、畫筆對象等所占用的全部資源。
例如創建g為 Graphics對象,使用完后用g.Dispose()釋放。
總結
以上是生活随笔為你收集整理的计算机图形学基础-第二章 VB.NET 绘图基础的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 用小白鼠试验毒水问题
- 下一篇: 小白鼠喝毒水的问题。