Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   BitmapData.copyPixels копируются одни и те же данные (http://www.flasher.ru/forum/showthread.php?t=159137)

MXPain 27.06.2011 22:36

BitmapData.copyPixels копируются одни и те же данные
 
разбиваю картинку на тайлы, копирую в цикле нужные области но почему-то в битмапе всегда одна картинка из первой области, в чем может быть дело? вроде все правильно делаю

Код AS3:

private function tilesLoadInit (e:Event):void {
 
                                tilesBitmapData = Bitmap(loader.content).bitmapData;
                                screenBitmapData=new BitmapData(tileSize, tileSize, false, 0x22ffff);               
                                var rect:Rectangle = new Rectangle(0,0,tileSize,tileSize);
                                        for (var spriteForX:uint = 0; spriteForX < spriteWidth; spriteForX++) {
                                                for (var spriteForY:uint = 0; spriteForY < spriteHeight; spriteForY++) {
 
                                                        rect.x = spriteForX * tileSize;
                                                        rect.y = spriteForY * tileSize;
                                                        var destY:int=spriteForY * tileSize;
                                                        var destX:int = spriteForX * tileSize
                                                        trace(destX, destY, rect.x, rect.y);
 
                                                        screenBitmapData.copyPixels(tilesBitmapData, rect, new Point());
                                                        var screenBitmap:Bitmap = new Bitmap(screenBitmapData);
                                                        screenBitmap.x =  destX;
                                                        screenBitmap.y =  destY;
                                                        addChild(screenBitmap);
                                                        tiles.push(screenBitmap);                                                       
                                                }
                                        }                       
 
                        }


zuxul 27.06.2011 22:53

Вы еще не разобрались? Тогда я иду к Вам.
Для каждого созданного битмапы нужен новый битмапдата, он же у Вас одни на всех.

MXPain 27.06.2011 23:03

zuxul огромное спасибо! заработало!


Часовой пояс GMT +4, время: 14:36.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.