как создать инструмент заполнения ведра в приложении?

как я могу реализовать инструмент заливки ведра в приложении для рисования в flex?

case FILL:
        var b:BitmapData = new BitmapData(width, height);
        b.draw(this);
        b.lock();
        var from:uint = b.getPixel(x,y);

        var q:Array = [];

    var xx:int;
    var yy:int;
            var w:int = b.width;
        var h:int = b.height;
        q.push(y*w + x);
        while (q.length != 0) {
               var xy:int = q.shift();
        xx = xy % w;
            yy = (xy - xx) / w;
            if (b.getPixel(xx,yy) == from) { 
                b.setPixel(xx,yy,SolidColorStroke(stroke).color);
                if (xx != 0) q.push(xy-1);
                    if (xx != w-1) q.push(xy+1);
                if (yy != 0) q.push(xy-w);
                if (yy != h-1) q.push(xy+w);
                }
            }
            b.unlock(null);
            break;

Абдул Халик


person Abdul Khaliq    schedule 02.03.2011    source источник
comment
возможный дубликат stackoverflow.com/questions/2552335/   -  person Igor Milla    schedule 02.03.2011
comment
да, я пробовал, но ничего не происходит, я вставил свой код   -  person Abdul Khaliq    schedule 02.03.2011
comment
есть что-то, чего мне не хватает?   -  person Abdul Khaliq    schedule 02.03.2011


Ответы (1)