Вход

Просмотр полной версии : Цвет под курсором мыши


Revolter
01.12.2007, 20:36
Как при нажатии мышки на кнопку (в роли кнопки выступает радуга) считать цвет под курсором мыши? Есть ли такая функция/свойство?

iNils
01.12.2007, 20:47
import flash.display.BitmapData;
this.onMouseDown = function () {
var bmp:BitmapData = new BitmapData (Stage.width, Stage.height);
bmp.draw (_root);
var rgb:String = bmp.getPixel (_root._xmouse, _root._ymouse).toString (16);
bmp.dispose ();
trace ("0x" + ("00000").substr (0, 6 - rgb.length) + rgb);
};

etc
01.12.2007, 20:52
import flash.display.BitmapData;
import flash.geom.Matrix;
this.onMouseDown = function() {
var x = _root._xmouse;
var y = _root._ymouse;
var bmp = new BitmapData(1,1);
var mtx = new Matrix();
mtx.translate(-x,-y);
bmp.draw(_root, mtx);
var pixel = bmp.getPixel(0,0).toString(16);
bmp.dispose();
trace("0x"+("00000").substr (0,6-pixel.length)+pixel);
}

Molecula
01.12.2007, 21:14
__etc, интересное решение. А в чем глобальное преимущество кода коллеги? Тем, что сама битмапа всегда один пиксель, и тем самым код кушает меньше ресурсов и времени или нет? Пробовал и тот и тот код - вроде одинаково срабатывает по времени.

etc
01.12.2007, 23:46
Мой жрет значительно меньше памяти. И, соответсвенно, времени.
Достаточно на onEnterFrame поставить, чтобы сравнить.

Molecula
02.12.2007, 03:21
Понял.