于萬國
(河北民族師范學(xué)院 數(shù)學(xué)與計算機系,河北 承德 067000)
立體視覺坐標(biāo)系向Authorware窗口坐標(biāo)系的轉(zhuǎn)換
于萬國
(河北民族師范學(xué)院 數(shù)學(xué)與計算機系,河北 承德 067000)
利用Authorware腳本語言可以繪制立體函數(shù)圖形,但由于Authorware窗口坐標(biāo)系的特點,如果將函數(shù)公式直接運用到圖形的繪制上,會發(fā)現(xiàn)在演示窗口上繪制的圖形并未按照直角坐標(biāo)系中的規(guī)律繪制。要想使用Authorware腳本語言使繪制的立體圖形準(zhǔn)確無誤,需要將立體視覺坐標(biāo)系向Authorware演示窗口坐標(biāo)系轉(zhuǎn)換。
Authorware;窗口坐標(biāo)系;立體坐標(biāo)系;轉(zhuǎn)換
立體視覺坐標(biāo)系是顯示立體圖形的重要輔助方式,它需要從窗口坐標(biāo)系經(jīng)過平移、旋轉(zhuǎn)、翻轉(zhuǎn)、扭切變換和縮放變換而獲得。這種窗口上的坐標(biāo)系變換與數(shù)學(xué)中的坐標(biāo)系變換有所區(qū)別,它在屏幕上的顯示要符合人的立體視覺習(xí)慣,并且具有三維坐標(biāo),但在視圖定位的數(shù)值計算上又要紿終基于窗口坐標(biāo)系的二維坐標(biāo)。
設(shè)窗口坐標(biāo)系的坐標(biāo)變量為x、y;立體視覺坐標(biāo)系的原點在窗口坐標(biāo)系中的坐標(biāo)為x0、y0,其三維坐標(biāo)變量分別為xd、yd、zd,其中xd坐標(biāo)軸的視覺角度為45°,坐標(biāo)系如圖1所示。

首先進行坐標(biāo)系的平移。設(shè)x1、y1為平移后的窗口坐標(biāo)系坐標(biāo)變量,那么:

將坐標(biāo)系順時針旋轉(zhuǎn)90°(立體三維坐標(biāo)的需要)。設(shè)x2、y2為旋轉(zhuǎn)后的坐標(biāo)系坐標(biāo)變量,那么:

將坐標(biāo)系的y2軸翻轉(zhuǎn)。設(shè)x3、y3為翻轉(zhuǎn)后的坐標(biāo)系坐標(biāo)變量,那么:

最后將坐標(biāo)系進行立體視覺扭切變換及縮放變換。扭切變換,即將x3軸順時針旋轉(zhuǎn)45°。縮放變換,即考慮立體視覺情況下,三維坐標(biāo)中的x軸坐標(biāo)變量縮放程度總是小于y軸或z軸的坐標(biāo)變量縮放程度,因而,設(shè)x軸縮放程序為kx,y軸和z軸縮放程序為kyz,設(shè)xd、yd、zd為變換后的立體視覺坐標(biāo)系的坐標(biāo)變量,那么:

加入豎直向上的zd軸,那么最終的結(jié)果為:

顯然,立體視坐標(biāo)的xd、yd、zd坐標(biāo)值都是窗口坐標(biāo)系坐標(biāo)值的函數(shù),其中kx和kyz值是使用者根據(jù)需要確定的坐標(biāo)單位變換系數(shù)。
如果在立體視坐標(biāo)系中函數(shù)公式為:

那么,在窗口坐標(biāo)系下函數(shù)公式為:

這是立體視覺坐標(biāo)系中最簡單的情況,編程者應(yīng)根據(jù)公式(2)來編制程序,繪制出Authorware窗口絕對坐標(biāo)系下的實際函數(shù)圖像,但觀察者感受到的是立體視覺坐標(biāo)系函數(shù)公式(1)的圖像。
[1]于萬國.兩種常見坐標(biāo)系向Authorware窗口坐標(biāo)系的轉(zhuǎn)化[J].河北北方學(xué)院學(xué)報(自然科學(xué)版),2010,26(06):24-27
[2]牟奇春,普敏.多媒體軟件開發(fā)[M].西安:西安電子科技大學(xué)出版社,2007:60-62
[3]朱仁成,于秋平.Authorware 7多媒體制作課堂實訓(xùn)[M].西安:西安電子科技大學(xué)出版社,2006:45-47
TP3
A
2095-3763(2012)02-0079-01
2011-09-15
于萬國(1976-),男,蒙古族,河北承德人,河北民族師范學(xué)院數(shù)學(xué)與計算機系講師,碩士。