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