2011-01-10 36 views
0

我在0,0處繪製了一個矩形,線條樣式厚度爲4px。它有100%的高度和50%的寬度。右邊緣寬4px,但所有其他3邊僅2px,表明邊緣的中點被分類爲邊界。爲什麼不是在矩形內部繪製邊緣?在AS3中繪製一個矩形,邊框部分偏離屏幕

+0

您的矩形是圓形像素嗎?寬度是一個四捨五入的值嗎?僅供參考,線條從邊緣的中心繪製。 – robertp 2011-01-10 18:04:22

回答

4

因爲畫一條線,你只能指定兩點:開始和結束。該線將在它們之間居中,使得左右兩側「脫穎而出」。

如果您想要在指定座標中包含一個框架的矩形,請考慮從兩個矩形(內部的一個將從外部的矩形中減去)中創建一個填充形狀,而不使用lineStyle。

var sprite : Sprite = new Sprite(); 
var g : Graphics = sprite.graphics; 
g.lineStyle(null); 
g.beginFill(0, 1); 
g.drawRect(0, 0, 200, 100); 
g.drawRect(2, 2, 194, 96); 
g.endFill(); 
addChild (sprite); 
+0

雖然不會有性能問題,因爲99%以上的像素都在? – 2011-01-10 18:14:22