По сути, я использую метод заливки, чтобы закрасить участки растрового изображения. Эта часть достаточно проста, но проблема заключается в том, как я добавляю эффект в процедуру заливки цвета.
Чтобы добавить эффект, сначала создается копия данных растрового изображения, и вместо нее используется заливка вместо исходного растрового изображения. Затем метод bitmapdata.compare используется для установки значения альфа всего, кроме заполненного раздела, равным 0, и результат сохраняется в другом растровом изображении. После этого на сцену добавляется спрайт с радиусом в 1 пиксель, который пересекается с размерами изображения, а его маска устанавливается на спрайт, который содержит результат операции сравнения.
Это работает отлично, за исключением того факта, что спрайт-заполнитель необходимо адаптировать к полному размеру изображения, независимо от того, насколько мала область окрашивания, поскольку я не могу найти способ получить размеры заливки. площадь. Я делаю обновление растрового изображения в конце анимации, и мне нужно отключить взаимодействие с пользователем до тех пор, пока анимация не будет завершена, чтобы избежать ошибок, которые возникают, если перед обновлением базового изображения запускается другая операция заполнения. Если бы я мог как-то получить размеры области заполнения, тогда время, в течение которого я должен отключить взаимодействие с пользователем, значительно уменьшилось бы.
Есть идеи?