2012-02-08 7 views
0

Я бег через несколько петель для построения блока 32 х 32 В моем реальном примере цвета варьируется, но в тестировании, даже упрощен я не подвожу нигдеПочему это делает пустой битмап?

var tempWidth:int = currentTileSel.width; 
      var tempHeight:int = currentTileSel.height; 
      var newbit:Bitmap = null; 
      var myBitmapData:BitmapData = new BitmapData(tempWidth, tempHeight,true,0x000000); 
      var drawCount:int = 0; 

      for(var i:int = 0; i< tempHeight; i++) 
      {      
       for(var j:int = 0; j < tempWidth; j++) 
       { 
        var setColor:uint = pixelArray[drawCount].colorfill; 
        myBitmapData.setPixel32(j,i,0x000000); 

        drawCount++; 
       } 
      } 
      ///* 
      currentTileSel.graphics.clear(); 
      currentTileSel.graphics.lineStyle(.25,0xCCCCCC,.5,false); 
      currentTileSel.graphics.beginBitmapFill(myBitmapData); 
      currentTileSel.graphics.drawRect(0,0,tempWidth,tempHeight); 
      currentTileSel.graphics.endFill(); 
      currentTileSel.bitmapHolder = myBitmapData; 
      //*/ 
      newbit = new Bitmap(myBitmapData); 
      gridLoader.addChild(newbit); 

Я думаю, что это будет производить черную растровое пиксель за пикселем, но я ничего не получаю на bitmapFill и ничего, когда добавляю его на экран в виде растрового изображения.

Что я делаю неправильно? Заранее большое спасибо!

ответ

2

Ваша проблема эта линия:

myBitmapData.setPixel32(j,i,0x000000); 

Здесь вы настраиваете прозрачность 0. Try:

myBitmapData.setPixel32(j,i,0xFF000000); 
+0

Большое спасибо! Это помогло! – ThinkNewDev

1

Вы рисовании прозрачных черных пикселей. Вместо 0x000000 оно должно быть 0xff000000.

myBitmapData.setPixel32(j,i,0xff000000); 

или использовать setPixel (x, y, color);

Смежные вопросы