AS3 bitmapdata не обновляется - PullRequest
0 голосов
/ 29 марта 2011

В моем классе я создал растровое изображение с соответствующим объектом BitmapData:

Члены класса

private var _bitmapData:BitmapData;
private var _bitmap:Bitmap;
private var _history:Array;

Конструктор:

_history = new Array();
_bitmapData = new BitmapData(50, 50, true, 0x00FFFFFF);
_bitmap = new Bitmap(_bitmapData);
this.addChild(_bitmap);

В моей функции "modifyImage" я хочу изменить _bitmapData. Однако это не сработает, если я не включу закомментированные строки:

//removeChild(this._bitmap);
_history.push(_bitmapData.clone());
_bitmapData.draw(item); // "item" passed by value
//this.addChild(_bitmap);

Чтобы отменить изменения, я использую следующее (опять же, мне нужно удалить и добавить _bitmap к сцене):

//removeChild(this._bitmap);
_bitmapData = _history.pop();
_bitmap = new Bitmap(_bitmapData); // [EDIT]: out-commented this by mistake
//this.addChild(_bitmap);

Это обходной путь удаления и добавления _bitmap снова и снова?

Помощь высоко ценится. Заранее спасибо!

1 Ответ

5 голосов
/ 29 марта 2011

вам просто нужно установить bitmapData на растровое изображение.Например:

_bitmapData = _history.pop();  
_bitmap.bitmapData = _bitmapData;

Надеюсь, это поможет!

...