|
|
« Предыдущая тема | Следующая тема » |
Опции темы | Опции просмотра |
|
|
|||||
Регистрация: May 2009
Адрес: Санкт-Петербург
Сообщений: 79
|
ArgumentError: Invalid BitmapData при корректных размерах объекта
Есть код:
const r:Rectangle = mc.getBounds(someSprite); try { var bmd:BitmapData = new BitmapData(r.width, r.height, true, 0); } catch (error:Error) { throw new ArgumentError("RasterizeFrame uncorrect bmd!!! rect= " + r); } ArgumentError: RasterizeFrame uncorrect bmd!!! rect= (x=1, y=-25, w=363.4, h=362) Подскажите, с чем она может быть связана, если размеры корректные. В документации написано: Выдает ArgumentError — ширина и/или высота превышает максимальное значение. (Т. е. если ширина объекта BitmapData составляет 8,191 пикселя, его высота не может быть больше 2 048 пикселей.) |
|
|||||
Lorem ipsum
|
Ошибок нет.
__________________
Поймай яблоко 2! |
|
|||||
Цитата:
Я вот этого не пойму: Что это за извращение? Почему не так? Логично же, что нужно получать размеры объекта относительно его собственной системы координат, а не какого-то другого, который, возможно, к нему вообще никакого отношения не имеет
__________________
Ко мне можно и нужно обращаться на ты) |
|
|||||
Lorem ipsum
|
Тоже думал сказать, но ведь "показания" говорят о нормальных ширине/высоте!
Это не извращение. Вполне возможно, что это продиктовано необходимостью растрировать объект не в его истинных размерах, а с соблюдением текущей трансформации относительно someSprite.
__________________
Поймай яблоко 2! |
|
|||||
Lorem ipsum
|
А это да ) смешно.
__________________
Поймай яблоко 2! |
|
|||||
Вообще хорошая практика, битмап не знает контекста, а теперь ошибка вполне очеловечена, я очень редко пользую трай кетч, но это помогало в древние времена когда не было стектрейсов в релизных плеерах понять что не так то. RasterizeFrame uncorrect bmd и сразу понятно где упало, выше уровнем её разок можно перехватить и добавить типа перса фигачили, упало.
Добавлено через 52 секунды А по теме, сделайте трейсы непосредственно там где передаёте значения, посмотрите что там, а не потом когда ошибку словили.
__________________
:) |
|
|||||
Регистрация: May 2009
Адрес: Санкт-Петербург
Сообщений: 79
|
try catсh это была вынужденная мера, так как в логи сыпались ошибки создания битмап даты. Поставил все возможные проверки, и на нулл и на максимальные размеры. Решил проверить что не так, поставил try catch с выводом размеров спрайта. При онлайне 10-15 тыс. Вылетает около 20 тыс. таких ошибок в день
Добавлено через 1 минуту Причем все размеры вполне реалистичные и ненулевые Добавлено через 6 минут При этом у меня эта ошибка не возникала ни разу Добавлено через 16 минут Может память кончается? |
Часовой пояс GMT +4, время: 15:44. |
|
« Предыдущая тема | Следующая тема » |
Опции темы | |
Опции просмотра | |
|
|