第09章圖形處理與多媒體應用2學時_第1頁
第09章圖形處理與多媒體應用2學時_第2頁
第09章圖形處理與多媒體應用2學時_第3頁
第09章圖形處理與多媒體應用2學時_第4頁
第09章圖形處理與多媒體應用2學時_第5頁
已閱讀5頁,還剩26頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

9.1圖形處理9.2多媒體應用

9.3示例第9章圖形處理及多媒體應用作業(yè)實驗掌握重點預習VisualBasic程序設計計算機的繪圖和動畫是一件奇妙且引人入勝的主題,VisualBasic下的圖象處理技術,包括繪圖,色彩,動畫,三維空間,虛擬現(xiàn)實,甚至計算機仿真的基礎。聽起來很誘人的東西往往需要大量不誘人的知識,本章是這些奇妙東西的入門。

VB可以利用繪圖方法在窗體或某容器類對象上畫圖。也可以用繪圖控件畫圖。其多媒體控件可以讓你感受動畫、聲音等。╳

9.1圖形處理9.1圖形處理1.VisualBasic的坐標系統(tǒng)系統(tǒng)坐標系原點位于屏幕左上角(0,0),從原點出發(fā),水平向右為X軸正方向,垂直向下為Y軸正方向。

(1)VisualBasic坐標系和笛卡爾平面坐標系不同容器坐標系是:╳

窗體的左上角是原點

X軸的正向水平向右

Y軸的正向垂直向下利用繪圖方法在窗體或某容器類對象上繪圖,均用容器坐標系。所以:窗體中控件的位置用Left,Top屬性描述。Left表示控件左上角到窗體左邊的距離,Top表示控件左上角到窗體上邊的距離。9.1圖形處理Twip是系統(tǒng)缺省的度量單位。通過使用窗體等容器類對象的ScaleMode屬性,可另行定義容器坐標系度量單位。但容器的left,top,width,height屬性值仍為Twip為單位

利用窗體的Scale方法如:Form1.Scale(-50,50)-(50,-50)

其中:前一個括號指定左上角坐標,后一個括號指定右下角坐標

1.VisualBasic的坐標系統(tǒng)

(2)建立自己的坐標系利用到窗體的Scale系列屬性9.1圖形處理

ScaleLeft屬性:確定對象左邊的水平坐標;

ScaleTop屬性:確定對象頂端的垂直坐標;

ScaleWidth屬性:確定對象內部水平的單元數(shù)目;

ScaleHeight屬性:確定對象內部垂直的單元數(shù)目。如:ScaleLeft=-50:ScaleTop=50

ScaleWidth=100:ScaleHeight=-100可讀系統(tǒng)由控件的ScaleMode屬性設置的。ScaleMode的值有:ScaleMode值意義0用戶自定義1

點素(Twip

即“特維”,缺省刻度)2

點(Point)3

象素(Pixel,這與屏幕分辨率有關)4字符(Character)5

英寸(Inch)6

毫米(Millimeter)7

厘米(Centimeter)

1.VisualBasic的坐標系統(tǒng)

(3)刻度系統(tǒng)9.1圖形處理1Inch=1440Twips;1Centimeter=567Twips1Inch=72Points;1字符寬(水平方向)=120Twips1字符高(垂直方向)=240Twips;1磅=20Twips。(磅即Point)(1)當前坐標?對象:窗體、圖形框、打印機?屬性:CurrentX、CurrentY,該屬性設計階段不可用?絕對坐標:(x,y)?相對坐標:step(x,y)(2)線寬?窗體、圖形框或打印機的DrawWidth屬性給出這些對象上所畫線的寬度或點的大小。DrawWidth屬性以像素為單位來度量,最小值為1。╳

2.

繪圖屬性9.1圖形處理(3)線型(DrawStyle)╳

2.

繪圖屬性9.1圖形處理(4)填充封閉圖形的填充方式由以下兩個屬性決定:

FillColor指定填充圖案的顏色,缺省值與ForeColor相同F(xiàn)illStyle屬性指定填充的圖案,共有8種內部圖案。DrawStyle設置值線型0實線1長劃線2點線3點劃線4點點劃線5透明線6內實線

VB采用對象前景色(ForeColor)來繪圖?

RGB函數(shù)格式:RGB(紅,綠,藍)其中:紅、綠、藍三基色的成分使用0~255之間的整數(shù),共有256×256×256種顏色?

色彩常量Vbred╳

2.

繪圖屬性9.1圖形處理(5)色彩4.形狀控件Shape控件可以用來畫矩形、正方形、橢圓、圓、圓角矩形及圓角正方形。當Shape控件添加到窗體時顯示為一個矩形,可通過設置Shape屬性確定所需要的幾何形狀。

3.

畫線工具

Line控件可以用來畫線。步驟如下:(1)單擊工具箱中的Line圖標;(2)移動鼠標到要畫線的起始位置;(3)按下鼠標左鍵并拖曳鼠標到要畫線結束處,放開鼠標左鍵。9.1圖形處理(1)Line方法

Line方法用于畫直線或矩形格式:[對象.]Line[[Step](x1,y1)-(x2,y2)[,顏色][,B[F]]

其中:對象用于繪圖板的容器對象名(x1,y1):為起點坐標,單精度,省則為上個劃線方法劃線的終點為本次劃線起點 (x2,y2):為終點坐標,單精度

Step:指定由currentx,currenty屬性提供當前圖形起點坐標

B:表示畫矩形,使用時前面逗號不可省

F:表示用畫矩形的顏色來填充矩形。╳

5.圖形方法(使用繪圖方法也可繪圖)9.1使用繪圖方法主要有:Line方法,Circle方法,Pset方法,Point方法(2)Circle方法

Circle方法用于畫圓、橢圓、圓弧和扇形格式:[對象.]Circle[[Step](x,y),半徑[,顏色][,起始角][,終止角][,縱向比率]]]其中:(x,y)為圓心坐標;Step表示采用相對坐標。Radius:圓的半徑或橢圓的長軸半徑Start:畫圓弧時,用于設置圓弧的起始弧度值End:畫圓弧時,用于設置圓弧的結束弧度值Aspect:畫橢圓時,垂直長度和水平長度比的正浮點數(shù),小于1,radius指水平方向x半徑,大于或等于1,radius指垂直方向y半徑注:省略參數(shù)時,逗號是不可缺省的╳

5.

繪圖方法9.1圖形處理(3)Pset方法

Pset方法用于畫點格式:[對象.]Pset[Step](x,y)[,顏色]其中:(x,y)為點的坐標;Step表示采用相對坐標;采用背景顏色Forecolor可清除某個位置上的點。(4)Point方法

Point方法用于返回指定點的RGB顏色,格式:[對象.]Point(x,y)

其中:(x,y)為點的坐標。╳

5.

繪圖方法9.1圖形處理(5)清除圖形[object.]clsObject是繪制圖形所在的容器對象名(6)在圖形中加入文本可使用容器控件的Currentx,Currenty屬性指定文字輸出的位置。Currentx,Currenty屬性均為運行時屬性。例:Currentx=1000

Currenty=1000Print“輸出位置“╳

6.

使用圖片框9.1圖形處理在VisualBasic程序里加入圖片(1)圖片通??梢苑旁贔orm,PictureBox,ImageBox中1、使用picture屬性顯示圖片Autosize=true,則圖片框自動適應圖片大小2、用代碼加入圖片用LoadPicture函數(shù)如:Image1.Picture=LoadPicture(“c:\pic\demo.bmp”)

刪除圖片的方法:Image1.Picture=LoadPicture(“”)(3)

使用paintpicture方法[Object.]paintpicturepicture,dx,dy[,dw[,dh[,sx[,sy[,sw[,sh,op]]]]]]Object是目標窗體或圖片框對象名,缺省為當前窗體名Picture是要處理的圖片源Dx,dy指定目標對象中圖片的X,Y坐標值Dw,dh目標對象中圖片的寬度與高度,dw或dh使用負值時,可實現(xiàn)圖片對象的水平或垂直翻轉Sx,sy欲處理圖片進行剪裁時,剪裁圖片左上角坐標值Sw,sh欲處理圖片進行剪裁時,剪裁圖片寬度和高度op

Click就是一個鼠標事件,它可以發(fā)生在許多對象上。同時鼠標事件還有DblClick,MouseDown,MouseUp,MouseMove以及拖曳后放下的事件。在VisualBasic所附的示例程序里,有一個介紹鼠標事件的例子,它的通常的路徑及文件名是:

c:\vb\samples\mouse\mouse.vbp

7.VisualBasic的鼠標事件9.1圖形處理(1)MouseDown,MouseUp,Mousemove事件

MouseDown,MouseUp事件分別發(fā)生在按下鼠標按鍵和松開鼠標按鍵或鼠標在對象范圍內移動時,窗體的空的MouseDown,MouseUp事件是這樣的:

PrivateSubForm_MouseDown(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)EndSubPrivateSubForm_MouseUp(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)EndSubButton:返回一個表示按鼠標鍵狀況的整數(shù),左鍵返回1,右鍵返回2,中間返回4Shift:返回一個表示按控制鍵狀況的整數(shù),按shift返回1,按ctrl返回2,按Alt返回4X,y:返回鼠標當前位置x,y坐標值

(2)MouseDown,MouseUp事件與Click事件的不同Click事件不能檢測到是哪一個按鍵按下了,也不能檢測到按下鼠標的同時鍵盤上是否按著Shift,Ctrl,Alt鍵,而且Click事件還不能確定按鼠標時鼠標指針的位置。而這些在MouseDown,MouseUp事件里都可以知道.這也是這兩個事件過程發(fā)生時后面四個參數(shù)的意義。在需要上面所說的參數(shù)時,可以用MouseDown事件或MouseUp事件代替Click事件。

9.1圖形處理7.VisualBasic的鼠標事件╳

1.使用動畫控件(Animation)

(1)功能用于播放無聲的“.avi”的數(shù)字電影文件。

(2)添加部件部件——MicrosoftWindowsCommonControls-26.0

(3)常用屬性Center:設為True,可確保播放的畫面位于動畫控件的中間位置。Autoplay:用于設定已打開的動畫文件的自動播放。9.2多媒體應用

VB中與多媒體有關的控件有兩個,都是ActiveX控件。一個是動畫控件,另一個是媒體控制控件。(4)常用方法Open---打開播放文件格式:Object.OpenfnamePlay----用于進行播放格式:Object.Play[repeat][,start][,end]其中:repeat:重復播放的次數(shù)

start:起始播放的楨(畫面);end:停止播放的楨例如:animat1.play5,9,24╳

1.使用動畫控件(Animation)

9.2多媒體應用表示:使用名為animat1的動畫控件要把已打開的“.avi”文件的第10幅畫到第25幅畫面重復播放5遍。

Stop-----停止播放一般形式:Object.stop

Close-----關閉文件2.多媒體控件(1)多媒體控件(MultimediaMCI)

用于管理,控制各種MCI(MediaContolInterface)設備的控件。它提供了一組控制按鈕,可以通過這些按鈕控制和管理聲卡、CD-ROM、VCD播放器等設備。(2)添加部件第一步:工程/部件第二步:部件第三步:在“控件”列表框中選定

MicrosoftMultimediaControl6.0╳

9.2多媒體應用(3)主要屬性:

Enabled:使該控件有效

Visible:使該控件可見

DeviceType:設置多媒體控件所要管理的設備類型

AutoEnable:為True時,自動激活DeviceType所指定的設備。

FileName:指定MCI所要使用的文件名稱

Command:在運行時使用,指定需要執(zhí)行的MCI命令(4)MCI命令

它是通過一套高層的與設備無關的命令來控制多媒體設備的。主要命令如表9-7所示(p223)。

格式:Mmcontrol1.Command=“commandname”

例如:Mmcontrol1.Command=“Open”╳

2.多媒體控件9.2多媒體應用示例:交叉火力請演示<圖形示例文件夾>中的程序需要定時器:PrivateSubTimer1_Timer()IfmnuCtlMoveDemo.CheckedAndDoFlag=TrueThenCtlMoveDemoElseIfmnuLineDemo.CheckedAndDoFlag=TrueThenLin

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論