嚴(yán)大虎
摘 要:針對(duì)在PowerPoint中繪圖存在困難的問(wèn)題,本文提出在幻燈片中用MATLAB繪制與高中數(shù)學(xué)有關(guān)的函數(shù)圖像和幾何圖形的方法,從而為制作具有實(shí)時(shí)繪圖功能的數(shù)學(xué)課件提供一條有效的途徑。文中介紹了有關(guān)方法和關(guān)鍵技術(shù),并給出具體實(shí)例。
關(guān)鍵詞:PowerPoint;MATLAB;實(shí)時(shí)繪圖;高中數(shù)學(xué)課件
中圖分類(lèi)號(hào):G434 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1673-8454(2009)08-0070-02
一、引言
PowerPoint由于簡(jiǎn)單易用且兼容性好等優(yōu)點(diǎn)而成為廣大教師制作課件的首選工具,但它繪圖功能不強(qiáng),而高中數(shù)學(xué)大部分內(nèi)容如指數(shù)函數(shù)、三角函數(shù)、立體幾何及解析幾何等都需要用圖形表現(xiàn),因此制作關(guān)于這些內(nèi)容的課件多數(shù)靠公式、文字和圖片等來(lái)描述,學(xué)生僅憑這些信息很難達(dá)到理解透徹的目的。利用MATLAB強(qiáng)大的科學(xué)計(jì)算和繪圖功能,能夠解決在幻燈片中實(shí)時(shí)繪制函數(shù)圖像和幾何圖形的問(wèn)題。這種方法巧妙地將MATLAB和PowerPoint各自的優(yōu)點(diǎn)有機(jī)地結(jié)合起來(lái),制作出的課件簡(jiǎn)單實(shí)用,效果良好,現(xiàn)就有關(guān)制作方法和關(guān)鍵技術(shù)介紹如下,希望能對(duì)各位同仁有所啟發(fā)。
二、MATLAB介紹
MATLAB是美國(guó)Mathworks公司推出的目前使用最廣、功能最強(qiáng)的科學(xué)計(jì)算軟件。它有幾個(gè)特點(diǎn):一是強(qiáng)大的數(shù)值運(yùn)算能力和符號(hào)運(yùn)算能力,MATLAB中有超過(guò)600種的數(shù)學(xué)、統(tǒng)計(jì)及工程方面的函數(shù)可供使用,而且使用簡(jiǎn)單快捷,使之能夠進(jìn)行復(fù)雜的數(shù)學(xué)計(jì)算和符號(hào)運(yùn)算;二是強(qiáng)大的數(shù)據(jù)可視化功能,能夠方便迅速地畫(huà)出各種二維、三維圖形,并且可以通過(guò)對(duì)圖形線(xiàn)型、色彩、視角等特性的處理,把數(shù)據(jù)的特征表現(xiàn)得淋漓盡致;三是具有豐富的工具箱,這些工具箱提供了專(zhuān)門(mén)領(lǐng)域所需的函數(shù),節(jié)省了用戶(hù)編程序的時(shí)間;四是提供了和其它一些應(yīng)用程序進(jìn)行數(shù)據(jù)交換的接口,為利用不同應(yīng)用程序聯(lián)合編程提供了方便。MATLAB不但成為理工科學(xué)生必須掌握的工具,而且也成為課堂教學(xué)中的一個(gè)有效工具。
三、在PowerPoint中應(yīng)用MATLAB
在PowerPoint中利用VBA(Visual Basic for Application)雖然可以實(shí)現(xiàn)實(shí)時(shí)交互處理,但在具體實(shí)踐中,特別是在高中數(shù)學(xué)課件制作過(guò)程中,許多知識(shí)都涉及函數(shù)圖像和幾何圖形,完成這些需要很高的編程技巧,這對(duì)大多數(shù)老師來(lái)說(shuō)是難以勝任的。如果能在PowerPoint中充分利用MATLAB增加實(shí)時(shí)繪圖功能,不僅能減輕教師的編程難度和強(qiáng)度,而且還可以有效提高教學(xué)效果。
在PowerPoint中調(diào)用MATLAB必須借助于ActiveX技術(shù)。ActiveX是一門(mén)使用和集成組件的技術(shù),本文中用到的ActiveX組件包括自動(dòng)化服務(wù)器和自動(dòng)化控制器。自動(dòng)化服務(wù)器是一種由其它應(yīng)用程序編程驅(qū)動(dòng)的組件;自動(dòng)化控制器是指使用或操縱自動(dòng)化服務(wù)器的應(yīng)用程序。MATLAB和PowerPoint分別是自動(dòng)化服務(wù)器和自動(dòng)化控制器。
在VBA中創(chuàng)建MATLAB對(duì)象的語(yǔ)句為:
Dim matlab As Object
Set matlab = CreateObject("Matlab. Application")
執(zhí)行MATLAB命令的語(yǔ)句為matlab.execute(h),h是由MATLAB的命令和函數(shù)組成的字符串。
四、課件制作過(guò)程
下面以指數(shù)函數(shù)y=ax(a≠0且a≠1)為例說(shuō)明課件制作過(guò)程。
首先啟動(dòng)PowerPoint 2003,建立一個(gè)空白幻燈片,在菜單中選擇“視圖/工具欄/控件工具箱”,打開(kāi)控件工具箱懸浮窗口,在工具箱中選擇“其他控件”中的“Microsoft Forms 2.0 Image”控件,控件工具箱中出現(xiàn)“圖像”選項(xiàng),如圖1所示。選擇“圖像”選項(xiàng),按住鼠標(biāo)左鍵在編輯區(qū)的左側(cè)拖拉出一個(gè)圖像框,調(diào)整位置及大小,然后在其右側(cè)添加一個(gè)文本框和一個(gè)按鈕,按鈕名稱(chēng)設(shè)置為“輸出圖形”。
雙擊按鈕,出現(xiàn)VB編輯窗口并輸入如下代碼:
Private Sub cmd1_Click()
Dim h As String
Dim result As String
Dim matlab As Object
Set matlab = CreateObject("Matlab.Application")
result = matlab.Execute("set(gcf,'visible','off');")
h = TextBox1.Value
result = matlab.Execute(h)h為輸入的matlab程序
result = matlab.Execute
("print(gcf,'-dtiff','c:a.tif');")
result = matlab.Execute
("x = imread('c:a.tif');")
result = matlab.Execute
("imwrite(x,'c:a.bmp');")
Image1.Picture = LoadPicture("c:a.bmp") ‘把保存在文件中的圖像加載到幻燈片放映窗口
SlideShowWindows(1).View.GotoSlide 1
End Sub
然后放映幻燈片并在文本框內(nèi)輸入如下MATLAB程序(組合鍵“Ctrl+Enter”實(shí)現(xiàn)“回車(chē)換行”):
for a =[1/4 1/2 2 4]; //循環(huán)從a=1/4開(kāi)始,到a = 4結(jié)束
x = -30:.1:30; //x的取值范圍為[-30,30],步長(zhǎng)為0.1
y = a.^x;
y1 = 0*x;
plot(x, y1, ‘k, y1, x, ‘k, x, y),xlabel(‘x軸),ylabel(‘y軸);//畫(huà)出相應(yīng)的指數(shù)函數(shù)圖像
if a<1;
text(-1, (a)^(-1), [‘y=, num2Str(a),^x]); //標(biāo)識(shí)y=a^x
else;
text(1, (a)^(1), [‘y=, num2Str(a),^x]);
end;
grid on;
anix([-3 3 -2 6]);
title([‘指數(shù)函數(shù)y=a^x圖像]);
pause(1); //暫停1秒,生成動(dòng)畫(huà),便于觀察
hold on;
end
最后單擊“輸出圖形”按鈕,幻燈片顯示如圖2。圖中4條指數(shù)函數(shù)曲線(xiàn)是a取1∕4、1∕2、2、4時(shí)的最終結(jié)果,這些曲線(xiàn)逐一動(dòng)態(tài)生成,并可以通過(guò)改變a的值實(shí)現(xiàn)交互功能。學(xué)生通過(guò)觀察圖像的生成過(guò)程總結(jié)歸納出指數(shù)函數(shù)的性質(zhì),加深對(duì)概念的理解。
五、結(jié)束語(yǔ)
在PowerPoint使用MATLAB進(jìn)行實(shí)時(shí)繪圖,為制作適合高中數(shù)學(xué)特點(diǎn)的課件給出了一個(gè)簡(jiǎn)便快捷的方法,為利用信息技術(shù)改進(jìn)教學(xué)方法提高教學(xué)效果提供了一種新的嘗試。
參考文獻(xiàn):
[1]馬致明,陳惠敏等.PowerPoint中利用VBA制作交互式物理模擬課件[J].中國(guó)教育信息化(基礎(chǔ)教育),2008,(16).
[2]李吉吉,張宏立.PowerPoint與MATLAB接口實(shí)現(xiàn)[J].新疆大學(xué)學(xué)報(bào)(自然科學(xué)版),2005,(1):23.
[3]張志涌.精通MATLAB 6.5版教程[M].北京:北京航空航天大學(xué)出版社,2003.
[4]于堅(jiān).利用MATLAB軟件輔助高中數(shù)學(xué)教學(xué)[J].中小學(xué)信息技術(shù)教育,2006,(5).
(編輯:隗爽)