![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Jun 2009
Сообщений: 461
|
Собственно по сабжу... есть Sprite, я в него добавляю тонну детей, которые являются тоже Sprite'ами, в которые вставлены картинки. И хотел бы главный Sprite превратить в битмапу и удалить всех детей, чтобы не засорять.
Ну как битмапу нарисовать это понятно, сетПикселем, но как пиксель получить из спрайта? |
|
|||||
|
Не надо setPixel, просто
Вообще для превращения клипа в растр, я использую такую функцию, не знаю на сколько правильно так, но работает. function rasterClip(obj) { var matrix:Matrix=new Matrix(); var rect:Rectangle=obj.getRect(obj); matrix.translate(-rect.x,-rect.y); var bmd:BitmapData=new BitmapData(obj.width,obj.height,true,0x00000000); bmd.draw(obj,matrix); var bm:Bitmap=new Bitmap(bmd); bm.x=rect.x; bm.y=rect.y; //bm.smoothing=true; //по желанию while (obj.numChildren) { obj.removeChildAt(0); } obj.addChild(bm); } rasterClip(clip) Последний раз редактировалось samana; 30.08.2010 в 15:32. |
|
|||||
|
Если там что нарисовано динамически - почистит, иначе просто ничего не произойдёт.
Типизировать желательно параметр obj (DisplayObject), ну и функции обычно присваивается void, правда последнее вроде только оглядка на С++. Как бы принято так писать . Но может имеет и какой то практический смысл.
__________________
ranga |
|
|||||
|
Регистрация: Aug 2010
Адрес: 55.1° с.ш. 82.56° в.д.
Сообщений: 25
|
Как превратить в битмап вроде понятно, попробовал у себя в коде заменить один такой спрайт, но у меня не получается сделать его прозрачность, какая была раньше в Sprite. Наверно надо что-то с матрицей делать? Подскажите.
Добавлено через 7 минут Разобрался. ..Точнее не с матрицей а colorTransform |
|
|||||
|
Регистрация: Jun 2009
Сообщений: 461
|
Можешь описать подробней как альфу из спрайта сохранить.
|
|
|||||
|
.
|
Не могли бы Вы рассказать что такое "динамически созданный Спрайт"?
Очень интересует, вдруг мне тоже пригодится данная техника. |
![]() |
![]() |
Часовой пояс GMT +4, время: 21:14. |
|
|
« Предыдущая тема | Следующая тема » |
|
|