a亚洲精品_精品国产91乱码一区二区三区_亚洲精品在线免费观看视频_欧美日韩亚洲国产综合_久久久久久久久久久成人_在线区

首頁 > 辦公 > Flash > 正文

Flash動畫技巧 坐標的計算方法

2020-07-17 13:15:32
字體:
來源:轉載
供稿:網友
FLASH軟件編輯界面下舞臺上元件的坐標和實際在actionscript(以下簡稱“AS”)中測試中不一樣是初學者經常會碰到的問題。大家不免產生疑惑,為什么FLASH的坐標時而準確,時而不準確呢?其實這是大家不了解FLASH計算坐標方式的緣故,其實FLASH中軟件操作界面的舞臺上計算坐標和AS中計算坐標的的基準點并不一致。接下來我們先在試驗中求證,然后再推算出FLASH坐標的運算方式。

首先我們在場景里畫一個圓形,然后F8轉化為影片剪輯,轉化時有一個小的細節需要注意一下(一些使用者都忽視了他),在類型選擇旁邊更有一個“注冊”選項,其實這里也是能夠選擇的,并不是個只供“查看”的屬性,我們能夠試一下,九個小方格都是能夠點擊的,我們選擇左上角的小方格建立一個MC。這個時候我們會發現我們建立的MC十字架在MC左上角,圓圈在元件中央,這里的十字架,我們稱之為注冊點。也就是說我們建立了一個MC,他的注冊點是左上角。(也能夠嘗試選擇不同的方格,結果證實選中的方格即代表注冊點的位置,當然你也可以通過雙擊進入元件內部把元件把元件放在距離十字心更不規則的位置)。



讓我們再來觀察以下信息面板,你會發現它也有一個九宮格,但是只有中心和左上角可以選擇,其他點為灰色,這時候點擊九宮格的左上角的那個點。



然后給這個影片剪輯命名為a_mc,在屬性面板或者信息面板輸入他的坐標是0,0。然后你會發現a_mc的位置處于舞臺的左上角。如圖所示:



然后我們打開動作面板,在面板中輸入如下代碼:
trace("a_mc._x="+a_mc._x);
trace("a_mc._y="+a_mc._y)
我們成功在輸出面板中得到了

a_mc._x=0
a_mc._y=0



軟件操作界面中的結果和AS運算的結果是一樣的。
這時我們把信息面板中九宮格的中間的那個點點選上,你會發現中間選中的那個點變黑了,左上角的點又變成了白色,如圖所示:



這時候我們發現舞臺的坐標立馬就變成了(x:43.5y:43.5),那么圓的寬和高都是87,它的坐標正好等于圓的一半。由此可以看出如果我們把信息面板的九宮格選為中間的那個點的話,那軟件操作界面計算坐標的基準點我們可以暫時理解為元件的中心(不完全是,現在你先可以這么理解),
我們再用Ctrl+Enter測試查看它在AS中的坐標,發現得到的結果還是:
a_mc._x=0
a_mc._y=0





那么由此可見,FLASH軟件操作界面中的計算坐標的方式和AS并不一樣,但是起碼來說我們現在能找到一個共同點:也就是不管舞臺中信息面板中設置元件坐標計算的基準點是左上角還是元件的中心,AS計算坐標的基準點始終是元件的十字心。那讓他們的坐標一樣用很簡單的一個辦法就是把你建立的元件的注冊點都設置成左上角,然后再信息面板的九宮格也點選左上角,那么AS計算的十字注冊點和軟件操作界面計算的元件坐標的基準點為同一點,那么他們的結果就一樣。
我們重新把這個元件打散,然后摁F8轉換為元件,元件的十字注冊點設為中心,實例名稱為a_mc,如圖所示:



然后在屬性面板中輸入元件的坐標為(0,0),此時影片剪輯的位置如圖所示:



此時再測試影片得到
a_mc._x=0
a_mc._y=0



同理,如果你建立的影片剪輯的十字注冊點在元件的中心,那么信息面板的九宮格也點選中心點,那么AS計算的十字注冊點和軟件操作界面計算的元件的中心點為同一點,那么他們的結果就一樣。

但是我們的操作并非一成不變的,我們轉換元件的時候的注冊點放在左上角和中心點不可能滿足所有的情況。普通的Motion動畫也許對注冊點不敏感,但如果是比較常用的引導線動畫,那么元件會把自己的十字注冊點鎖在引導線上。AS中的_xscale _yscale的縮放軸心也是基于十字注冊點的,比如我們做FLASH播放器的時候波表效果就必須放在元件底部如圖所示。



諸如一些鐘擺的FLASH效果元件的十字注冊點還要放在更無規則的地方。那么此類的物理效果對FLASH的坐標就比較敏感了。好,讓我們接著進行試驗。
我們摁下Q鍵切換到自由變形工具,然后當把我們把光標移動到a_mc的中心點的位置并拖動中心點的小圓圈,我們發現當我們的小圓圈改變位置的時候,軟件操作界面下的X,Y坐標發生了變化:



而Ctrl+Enter測試AS,得到的結果還是:
a_mc._x=0
a_mc._y=0



此時我們發現如果信息面板的九宮格中間的那個點選中,軟件操作界面下的X,Y坐標計算實際上是以元件的小圓圈為準的,我們接著實驗,
我們在繪制一個長方矩形,然后摁F8轉化為元件,在對話框中設置注冊點為中間最下面的那個點



然后打開信息面板,把信息面板的九宮格移到中間:



點擊Q變形工具把元件上的圓圈標記移動在十字心上如圖所示,



此時這個矩形在軟件的操作界面下的坐標是:



把它的實例名稱設置為b_mc,最后寫下如下代碼:
trace("b_mc._x="+b_mc._x);
trace("b_mc._y="+b_mc._y)

然后測試,你會發現得到和輸出面板得到和屬性面板完全一樣的結果:
b_mc._x=145.5
b_mc._y=352



由此可以得出結論:
當信息面板的九宮格上選擇中心那個點為基準點,那么軟件操作界面下的X,Y坐標顯示會以舞臺上元件的那個小圓球為準,而無論舞臺上信息面板中九宮格怎么設置,AS始終會以元件的十字注冊點為準。普通情況下如果我們習慣吧元件的十字注冊點放在左上角,那么請你把信息面板的九宮格也點選為左上角。如果你習慣把元件放在十字注冊點的中心點,那么請你把信息面板的九宮格也點選為中心點。如果你是做波表,或者鐘擺等特殊效果需要元件的十字注冊點處在不規則的位置,那么你可以點擊Q用變形工具把元件上的圓圈標記移動在十字心上,信息面板的九宮格也點選為中心點。就能保證在任何情況下FLASH軟件操作界面下的坐標和AS運算的坐標一樣。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 欧美日韩国产精品一区 | 在线观看理论电影 | 日本久久久久久久久久 | 国产自产才c区 | 欧美与黑人午夜性猛交久久久 | 国产精品亚洲一区二区三区 | 色婷婷综合久久久久中文一区二区 | aⅴ色国产 欧美 | 女同理伦片在线观看禁男之园 | 日韩在线一区二区 | 国产精品亚洲成在人线 | 毛片毛片毛片毛片毛片 | 亚洲午夜视频在线观看 | 国产午夜精品美女视频明星a级 | 9999亚洲 | 亚洲精品中文字幕 | 欧美一区二区三区久久精品 | 欧美一区二区三 | 精品乱码一区二区 | 色综合久 | 日本二区| 成人黄网在线观看 | 四虎国产精品成人免费影视 | 亚洲综合无码一区二区 | 亚洲欧美一区二区三区在线 | 久久精品国产亚洲一区二区三区 | 在线观看免费av网 | 国产精品国产三级国产专业不 | 亚洲视频免费在线 | 91高清免费看 | 国产电影一区二区三区图片 | 日本天堂在线 | 中文字幕一区二区三区四区五区 | 免费www xxx | 欧美精品一区二区三区视频 | 欧美成人久久久免费播放 | 久久久久亚洲一区二区三区 | 日韩欧美成人影院 | 欧美成人午夜精品久久久 | 欧美日韩国产一区二区三区不卡 | 97精品国产97久久久久久免费 |