Доброго времени суток!
Прошу помочь разобраться с проблемкой:
Хочу нарисовать на экземпляре Shape'а произвольные линии, далее эти линии загнать в BitmapData и выполнить поиск по цвету с определением координат. Привожу ниже состряпаный мною код. Линии рисует, но вот поиск не осуществляется... Думаю проблема в моем не умении загонять данные Shape'а в BitmapData.

Код AS3:
import flash.display.Bitmap;
import flash.display.BitmapData;
import flash.display.MovieClip;
import flash.display.Shape;
import flash.events.Event;
import flash.events.MouseEvent;
import flash.geom.Point;
public class PaintBall extends MovieClip
{
var child:Shape = new Shape();
var bmd:BitmapData = new BitmapData (200, 200);
public function PaintBall()
{
addChild(child);
stage.addEventListener(MouseEvent.MOUSE_DOWN, onMD);
stage.addEventListener(MouseEvent.MOUSE_UP, onMU);
}
public function onMD (e:MouseEvent):void{
var to_x = e.localX;
var to_y = e.localY;
child.graphics.lineStyle(2, 0x000000, 100, true, "normal", "none");
child.graphics.moveTo(to_x,to_y)
stage.addEventListener(Event.ENTER_FRAME, enterFrameHandler);
}
function enterFrameHandler(event:Event):void {
var m_x:Number = stage.mouseX;
var m_y:Number = stage.mouseY;
if((m_x>5 && m_x<200) && (m_y>5 && m_y<200)){
child.graphics.lineTo(child.mouseX, child.mouseY);
}
}
function onMU(event:MouseEvent):void {
stage.removeEventListener("enterFrame", enterFrameHandler);
bmd.draw(child);
var coords:Point = null;
for (var i:uint; i<bm.height; i++){
for (var j:uint; j<bm.width; j++){
if (bmd.getPixel(i,j) == 0x000000){
coords = new Point(i, j);
trace('черный цвет найден по адресу:' + coords)
}
}
}
}
}
}