DOI:10.16661/j.cnki.1672-3791.2010-5042-7375
摘? 要:Authorware由于具有強大的交互功能而廣泛應(yīng)用于教學和商業(yè)領(lǐng)域。作為一種多媒體開發(fā)工具,Authorwar自帶系統(tǒng)變量和函數(shù),并允許使用自定義變量和函數(shù),因此拓展了其功能。該文介紹Authorware中的幾個基本繪圖函數(shù),然后以模擬進度條、扇形展開圓、變大的圓及圓環(huán)為例闡述了創(chuàng)建動態(tài)圖形的基本步驟,為在Authorware中實現(xiàn)動態(tài)圖形繪制提供了一個普適的解決思路。
關(guān)鍵詞:Authorware? 函數(shù)繪圖? 進度條? 動態(tài)圖形
中圖分類號:TP312? ? ? ? ? ? ? ? ? ? ? ? ? ?文獻標識碼:A文章編號:1672-3791(2021)03(b)-0001-03
Basic Operation of Authorware Function Drawing
MA Zhijun
(College of Chemical and Chemical Engineering, Hubei University, Wuhan, Hubei Province, 430062? China)
Abstract: Authorware is widely used in teaching and business fields because of its powerful interactive function. As a multimedia development tool, Authorware has its own system variables and functions, and allows the use of custom variables and functions, so it expands its functions. This paper introduces several basic drawing functions in Authorware, and then takes the simulation progress bar, sector expanding circle, enlarged circle and ring as an example to illustrate the basic steps of creating dynamic graphics, which provides a general solution for the realization of dynamic graphics drawing in Authorware.
Key Words: Authorware; Function drawing; Progress bar; Dynamic graph
Authorware是Macromedia公司開發(fā)的一個基于流程線和圖標的多媒體制作工具,其優(yōu)勢在于具有強大的交互能力。在Authorware中除了可以用繪圖工具箱繪制基本圖形外,還可繪圖函數(shù)來實現(xiàn)。但是,一般的參考書與教學中很少涉及到函數(shù)繪圖。該文作者根據(jù)在高校Authorware選修課中的教學經(jīng)驗介紹Authorware中的幾個基本繪圖函數(shù),以及用繪圖函數(shù)與條件語句實現(xiàn)動態(tài)圖形的基本建模方法。
1? 基本繪圖函數(shù)
1.1 Line: 繪制直線
語法:Line(pensize,x1,y1,x2,y2)。
說明:在(x1,y1)與(x2,y2)兩點間畫直線,線寬由pensize指定。
1.2 Box: 繪制矩形
語法:Box(pensize,x1,y1,x2,y2)。
說明:繪制由對角頂點(x1,y1)與(x2,y2)確定的矩形,線寬由pensize指定。
1.3 Circle: 繪制橢圓
語法:Circle(pensize,x1,y1,x2,y2)。
說明:繪制由Box(pensize,x1,y1,x2,y2)確定的矩形的內(nèi)切橢圓,線寬由pensize指定。
1.4 RGB:配置顏色
語法:RGB(R,G,B)。
說明:由紅、綠、藍(R,G,B)3種顏色混合一種顏色,R、G、B的取值范圍0~255。設(shè)置顏色時需與Setframe和Setfill配合使用。
1.5 Setframe:設(shè)置線條和邊框顏色;Setfill:設(shè)置填充色
兩者語法相同。
語法:Setframe(true,RGB(R,G,B));Setfill(true,RGB(R,G,B))。
如在計算窗口輸入如下代碼:
Line(3, 50, 150, 500, 400)
SetFrame(TRUE,RGB(255,0,0))
Box(1, 50, 150, 500, 400)
SetFill(TRUE,RGB(0,0,255))
Circle(2, 50, 150, 500, 400)
則程序運行結(jié)果如圖1所示(演示窗口默認大小640×480)。
2? 動態(tài)圖形繪制
利用條件語句不斷執(zhí)行繪圖命令,可以實現(xiàn)動態(tài)圖形的繪制。下面以模擬進度條效果為例。
2.1 建模思路
可視為一個自左往右不斷畫短豎線的過程,直至填滿矩形框。建模示意圖如圖2所示。
2.2 程序設(shè)計
(1)拖動一個計算圖標到流程線上,命名為“畫方框”,代碼如下:
SetFrame(TRUE,RGB(0,0,255))
Box(1,300,290,600,310)
i:=0 --變量初始化
(2)在“畫方框”計算圖標下方加一個計算圖標,命名為“畫進度條”,其代碼如下:
SetFrame(1,RGB(255,0,0))
Line(5,300+i,292,300+i,307)—根據(jù)模型寫出繪圖函數(shù)
運行程序,觀察效果。
(3)繼續(xù)在流程線上加入一個計算圖標“循壞”,輸入如下代碼:
i:=i+0.3
if i<300 then
GoTo(IconID@"畫進度條")
end if
運行程序,觀察效果。
(4)加入進度顯示。在“畫方框”與“畫進度條”之間加入一顯示圖標,命名為“顯示進度”。雙擊顯示圖標打開演示窗口,用文本工具輸入“數(shù)據(jù)加載中,請稍后…”及“{i/3}%”。
(5)運行程序,拖動文本“{i/3}%”到矩形框中間,并將其模式設(shè)置為“反轉(zhuǎn)”。
流程線與圖標見圖3。運行程序,中間效果情況見圖4。
由上可知,實現(xiàn)動態(tài)圖形的基本思路為:①設(shè)計合理的模型;②變量初始化;③根據(jù)模型寫出繪圖函數(shù);④循環(huán)。
2.3 擴展設(shè)計
基于上述思路,我們可以對代碼進行簡單的修改就可以實現(xiàn)扇形圓的展開、逐漸變大或變小的圓等。
對于扇形圓展開,模型是在定點圓心和圓周上的動點之間不斷畫線。因此,在演示窗口中心實現(xiàn)這個動畫效果的步驟可以設(shè)計如下。
(1)拖動一個計算圖標到流程線上,命名為“變量初始化”,代碼如下:
x0:=windowwidth/2 --圓心橫坐標
y0:=windowheight/2 --圓心縱坐標
r:=100 --圓半徑設(shè)為100
i:=0 --變量初始化
(2)繼續(xù)拖一個計算圖標,命名為“按模型畫線”,其代碼如下:
SetFrame(1,RGB(255,0,0))
Line(2,x0,y0,x0+r*cos(i*pi/180), y0+r*sin(i*pi/180)) --按模型寫出繪圖函數(shù)
(3)繼續(xù)在流程線上加入一個計算圖標“循環(huán)”,輸入如下代碼:
i:=i+0.01
if i<360 then
GoTo(IconID@“按模型畫線”)
end if
運行程序,觀察效果。
畫一個半徑逐漸變大到100的圓球,上述“變量初始化”圖標中不需修改代碼。在第二個計算圖標“按模型畫線”中l(wèi)ine函數(shù)改為:
circle(2,x0-i,y0-i,x0+i, y0+i) --按模型寫出繪圖函數(shù)
第三個圖標“循壞”中數(shù)字360改為r即可。
如果要畫一個逐漸變大的圓環(huán),則在“循環(huán)”中i:=i+0.01前插入一行EraseIcon(IconID@“2”);而在end if 后再插入一行Circle(2,x0-i,y0-i,x0+i, y0+i)。
照此思路可以實現(xiàn)一個逐漸縮小的圓球或圓環(huán),相應(yīng)地修改“變量初始化”圖標中circle函數(shù)的參數(shù)即可,在此不再贅述。
3? 結(jié)語
該文介紹了Authorware中的基本繪圖函數(shù),總結(jié)了用繪圖函數(shù)和條件語句實現(xiàn)動態(tài)圖形的3個基本步驟,即變量初始化,按模型寫出繪圖函數(shù)與循環(huán)。其中,最關(guān)鍵的是建立合適的模型。有了模型,按照上述步驟即可輕松地實現(xiàn)動態(tài)圖形的繪制。
參考文獻
[1] 王晶.基于繪圖函數(shù)庫與C++的圖形界面考試系統(tǒng)設(shè)計[J].信息與電腦:理論版,2019(11):62-65.
[2] 喬思源.基于Matlab軟件的函數(shù)運算在實踐中的應(yīng)用[J].信息技術(shù)與信息化,2017(8):70-74.
[3] 馬俊,劉院.CAD繪圖與Excel函數(shù)應(yīng)用有機結(jié)合,快速處理煤礦供電系統(tǒng)圖電纜數(shù)據(jù)[J].中外企業(yè)家,2014(23):111-112.
[4] 郭強友.MATLAB可視化方法在高中物理教學中的應(yīng)用與實踐研究[D].上海師范大學,2020.
[5] 陳英蓉,馬志軍.在Authorware中實現(xiàn)動態(tài)圖形效果[J].科技視界,2015(4):27,96.
[6] 姚紅星,肖文雅.“Authorware7.0媒體教程”設(shè)計與制作[J].新鄉(xiāng)學院學報,2014,31(6):19-20.
[7] 白蓮芬.基于Authorware的多媒體課件自動生成系統(tǒng)的研究與實現(xiàn)[D].華中師范大學,2015.
[8] 曹艷華.Authorware軟件在多媒體課件制作中的實用研究[J].計算機產(chǎn)品與流通,2020(2):18.