![]() |
|
||||||||||
|
|||||
|
Приветствую. Подскажите в чем может быть причина.
Код, где срабатывает ошибка: trace(cW, cH, uint(col)); var bmdN = new BitmapData(cW, cH, false, uint(col)); var bmN = new Bitmap(bmdN); newCol.addChild(bmN); Цитата:
|
|
|||||
|
cW или cH случайно нуля не равны?
__________________
http://www.chessmax.ru |
|
|||||
|
Banned
[+1 05.11.11]
[+1 09.08.11] Регистрация: Jan 2010
Адрес: РФ. Кемеровская область
Сообщений: 3,243
|
Цитата:
Скорее всего ошибка где-то в другом месте |
|
|||||
|
ошибку точно вызывает создание именно этой BitmapData. Локализовал трейсами
Выше в коде еще две BitmapData и ниже одна. сделаны точно так же. на них ошибка еще ни разу не вылазила. Суть примерно следующая. пользователь тыкает по кнопке и создаются картинки. тыкает по другой кнопке - создаются другие картинки. Может проблема в том что слишком много создается, и не успевает очищаться?(хотя вроде не так много). |
|
|||||
|
Текущий вариант. Немного коряво. Кучу рас дописывал/переписывал.
//поступающие типы: объект, мовиклип, строка public function createMc(obj:*,contMc:*,col:*) { var startArr = sProp.start.split(','); //отрисовываем фон и вставляем var bmd = new BitmapData(obj.ldr.content.width, obj.ldr.content.height, true, 0x00ffffff); var bm = new Bitmap(bmd); bm.bitmapData.draw(obj.ldr.content); contMc.addChild(bm); //создаем клип с цветом и маской var mc = new MovieClip(); contMc.addChild(mc); //создаем маску var maskMc = new MovieClip(); var bmdM = new BitmapData(obj.ldr.content.width, obj.ldr.content.height, true, 0x00ffffff); var bmM = new Bitmap(bmdM); bmM.bitmapData.draw(obj.ldr.content); maskMc.addChild(bmM); mc.addChild(maskMc); maskMc.cacheAsBitmap = true; //создаем цвет var colorMc = new MovieClip(); bmd = new BitmapData(obj.ldr.content.width, obj.ldr.content.height, false, col); bm = new Bitmap(bmd); colorMc.addChild(bm); mc.addChildAt(colorMc,0); colorMc.cacheAsBitmap = true; colorMc.mask = maskMc; mc.blendMode = BlendMode.MULTIPLY; //если есть перекрытие то ставим if (obj.ldrO!=undefined) { bmd = new BitmapData(obj.ldrO.content.width, obj.ldrO.content.height, true, 0x00ffffff); bm = new Bitmap(bmd); bm.bitmapData.draw(obj.ldrO.content); contMc.addChild(bm); } } |
|
|||||
|
маюсь с этим куском кода. Как уже не вертел(
ldr - Loader - загружает картинки извне. в начале cW и cH, это аналоги текущим т.е. если сделать trace в текущем варианте, будет то же самое - размеры bitmapData получает. Кусок который показывал в начале соответствует куску который идет после комментария "создаем цвет". Последний раз редактировалось allanon85; 09.10.2011 в 23:03. |
|
|||||
|
Banned
[+1 05.11.11]
[+1 09.08.11] Регистрация: Jan 2010
Адрес: РФ. Кемеровская область
Сообщений: 3,243
|
Для начала неплохо бы типизировать переменные.
|
|
|||||
|
типизировал - не изменилось.
Установил размеры битмапы числами, а не из содержимого лоадера. Ошибка вроде бы пропала. Минут 20 тестировал, ни разу не вылезла. Хотя вылазила спонтанно по этому не 100%. |
![]() |
![]() |
Часовой пояс GMT +4, время: 19:18. |
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | |
| Опции просмотра | |
|
|