我在這裏有一個相當大的代碼......但幸運的是,根本不需要提及。它歸結爲什麼......失敗了?所以,最終這應該繪製兩個三角形(使用AS3圖形)。它適用於一個,但是當我在那裏放一秒時,它看起來很奇怪。我痕量調試它,我認爲是錯誤的圖形 - 這是我得出的實際點輸出:圖形 - 重疊的錯誤還是什麼?
DRAW
- POINT (50 , -50)
- POINT (-50 , 50)
- POINT (50 , 50)
DRAW
- POINT (-50 , -50)
- POINT (50 , -50)
- POINT (-50 , 50)
(X,Y),兩個三角形。這將導致一種顏色的正方形(這些三角形是一種顏色),或者如果我要改變顏色,則可能是正方形的一半。
會......不。
相反,我得到這個:
OR(這是奇怪),當我切換,其中三角形繪製的順序:
...
有什麼想法發生了什麼? 我已經閱讀過另一個論壇,其函數beginFill和endFill應該在繪製每一個形狀之前和之後被調用 - 顯然這就是我在查看之前所做的 - 顏色不會有別於其他的方式。那麼 - 有什麼想法?
編輯:
的圖形調用這個樣子:
for (var vi:int = 0; vi < triangles.length; vi++){
gfx.beginFill(0xFF0000, 0.5 + (0.5 * vi));
trace("DRAW");
trace("- POINT (" + triangles[vi].points[0].x + " , " + triangles[vi].points[0].y + ")");
trace("- POINT (" + triangles[vi].points[1].x + " , " + triangles[vi].points[1].y + ")");
trace("- POINT (" + triangles[vi].points[2].x + " , " + triangles[vi].points[2].y + ")");
gfx.lineTo(triangles[vi].points[0].x, triangles[vi].points[0].y);
gfx.lineTo(triangles[vi].points[1].x, triangles[vi].points[1].y);
gfx.lineTo(triangles[vi].points[2].x, triangles[vi].points[2].y);
gfx.lineTo(triangles[vi].points[0].x, triangles[vi].points[0].y);
gfx.endFill();
}
對Graphics對象的實際調用會很有幫助。 – Aaron 2010-09-18 01:22:19
增加了他們...這是一個實際的錯誤還是? – 2010-09-18 09:44:44