2011-09-03 79 views
0

如何使用动画片段而不是位图来创建图案背景图案?AS3 - 背景图案movieclip

var tile:BitmapData = new tileImg(0,0); 
var tileLayer:Sprite; 

function tileBgF(e:Event=null):void { 
    tileLayer = new Sprite(); 
    tileLayer.graphics.beginBitmapFill(tile); 
    tileLayer.graphics.drawRect(0, 0, stage.stageWidth, stage.stageHeight); 
    tileLayer.graphics.endFill(); 
    addChildAt(tileLayer,0); 
} 

谢谢。 乌利

回答

0
function tileBgF(e:Event=null):void { 
    tileLayer = new Sprite(); 

    var bgClip:MovieClip = new MyClip(); 
    var i:int = 0; 
    var j:int = 0; 
    while(bgClip.x < stage.stageWidth) { 
     bgClip = new MyClip(); 
     while (bgClip.y < stage.stageHeight) { 
      bgClip = new MyClip(); 
      tileLayer.addChild(bgClip); 
      bgClip.x = bgClip.width * i; 
      bgClip.y = bgClip.height * j; 

      j++; 
     } 

     j = 0; 
     i++; 
    } 

    addChildAt(tileLayer,0); 
} 

这是假设你有你想要的(在我的例子MyClip)使用一些自定义的影片剪辑,并假设你没有对这些影片剪辑其他数据和一个新的实例就足够了用作背景元素。

同样值得注意的是,这是假定无论是否影片剪辑被舞台边缘部分裁剪或者它们的大小完美适合舞台边界中的一个很好的偶数都无关紧要。

+0

我试过了,但舞台没有完全填满图案。我错过了什么? – Uli

+0

糟糕,我的循环方法中有几个逻辑错误。我已经用测试过的代码更新了这篇文章。 – HotN

+0

谢谢!现在它工作得很好。 – Uli