Как проверить значение цвета в пикселях и использовать его для обнаружения нажатия мыши - PullRequest
0 голосов
/ 05 октября 2011

У меня есть растровое изображение со многими цветами внутри.Я хочу, чтобы каждый цвет при щелчке, чтобы предварительно сформировать свой метод.Как определить значение цвета пикселя и использовать его для события мыши?Я обнаружил обнаружение попадания растрового изображения, но не могу понять, как его использовать (поскольку у меня много цветов внутри растрового изображения).Любая помощь очень ценится, потому что я официально поставлен в тупик.

Ответы [ 2 ]

3 голосов
/ 05 октября 2011

Вы можете использовать этот метод Bitmapdata.getPixel() or BitmapData.getPixel32()

import flash.display.BitmapData;

var bmd:BitmapData = new BitmapData(80, 40, false, 0xFF0000);

var pixelValue:uint = bmd.getPixel(1, 1);
trace(pixelValue.toString(16)); // ff0000;
1 голос
/ 05 октября 2011

BitmapClass - это DisplayObject. если вы хотите добавить Mouse или KeyboardEvent, это должно быть. sthClass это InteractiveObject Class.

Итак, один невидимый Контейнер должен Создавать ... потому что Sprite является InteractiveObject.

import flash.display.BitmapData;
import flash.display.Bitmap;
import flash.events.MouseEvent;
import flash.display.Sprite;

var container:Sprite = new Sprite();
var bmd:BitmapData = new BitmapData(400, 400, false, 0xFFFFFF * Math.random());
var bmp:Bitmap = new Bitmap(bmd);

this.addChild(container);
container.addChild(bmp);

container.addEventListener(MouseEvent.CLICK, onClick);

function onClick(e:MouseEvent):void
{
    var obj:Sprite = e.currentTarget as Sprite;

    var bmp:Bitmap = Bitmap(obj.getChildAt(0));

    var pixelValue:uint = bmp.bitmapData.getPixel(mouseX,mouseY);

    trace(pixelValue.toString(16));
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...