У меня есть приложение для ввода камеры во флеш-памяти (AS3), и я рисую поверх него графику. Я хочу сделать снимок видимой области сцены, но только видео и графику, которую я рисую поверх видео. Я хочу исключить элементы управления из снимка изображения. Макет моего экранного объекта находится в следующем соотношении:
-stage
--canvas (Sprite)
---video (Video)
---overlayed graphics (Sprites, MCs, Shapes)
--controls (Buttons)
Размер рабочей области фиксирован, и я хочу сделать снимок изображения всего, что является дочерним элементом моего элемента холста (видео с камеры и наложенная графика, но исключая элементы управления). Я могу сделать этот снимок изображения, когда наложенная графика находится в пределах размера рабочей области. Я так делаю:
var bmpd:BitmapData = new BitmapData(canvas.width, canvas.height);
bmpd.draw(canvas, new Matrix(1, 0, 0, 1, canvas.x, canvas.y));
Но это дает мне нежелательный результат, когда графика, которую я рисую поверх видео на холсте, выходит за пределы области отображения сцены. Как ограничить снимок изображения только в пределах видимой области внутри сцены?
Спасибо