(ΘωΘ) 絶望した、actionscriptのgraphic bugに絶望した

這是今天作flash的時候因為一直無法debug ,所以特地把as代碼複製下來,開一個空白flash檔,在frame上面直接測試……


import flash.display.MovieClip;
import flash.display.*;
import flash.display.Graphics;


var drawRect:Shape = new Shape();


drawRect
.graphics.moveTo(100,100);
drawRect
.graphics.lineTo(33,44);
drawRect
.graphics.lineTo(120, 50);
drawRect
.graphics.lineTo(200, 50);
drawRect
.graphics.lineTo(220, 100);
drawRect
.graphics.lineTo(100, 100);

drawRect
.graphics.lineStyle(10, 0x4B0082, 1, false, LineScaleMode.VERTICAL,
CapsStyle.NONE, JointStyle.MITER, 10);

this.addChild(drawRect);

var trapezoid:Shape = new Shape();

trapezoid
.graphics.lineStyle(10, 0xFFD700, 1, false, LineScaleMode.VERTICAL,
CapsStyle.NONE, JointStyle.MITER, 10);

trapezoid
.graphics.moveTo(100, 100);
trapezoid
.graphics.lineTo(33,44);
trapezoid
.graphics.lineTo(120, 50);
trapezoid
.graphics.lineTo(200, 50);
trapezoid
.graphics.lineTo(220, 100);
trapezoid
.graphics.lineTo(100, 100);

this.addChild(trapezoid);


有興趣的可以藉著將下列兩行代碼其中一樣註解化……
  1. this.addChild(drawRect);
  2. this.addChild(trapezoid);

你就會發現,第一條代碼(drawRect)不會顯示出來!
drawRect理論上會出現紫色的圖案,trapezoid則是黃色。
至於原因……經過一兩個小時的研究後……
這原因……實在是讓我很無言……
純・粹・就・只・是・因・為・lineStyle・的・位・置・錯・誤・而・已!!!
(正確的位置,請看trapezoid是怎麼放得)

如果沒有對比根本就沒發現……
這也算是actionscript的一個bug吧……

沒有留言:

張貼留言

小提示:留言時,可以使用粗體(<b>)、斜體(<i>)、超連結(<a href="網址"> </a>)。另外,以「名稱/網址」留言時,網址可以留空的。