|
|
|||||
Регистрация: Jul 2004
Сообщений: 430
|
Определение цвета под мувиком
Народ, привет!
Подскажите метод определения цвета под мувиком. Я "таскаю" мувик (круг) по картине - рядом в окошке выводиться цвет по ргб. такое вообще возможно? |
|
|||||
|
|
|||||
Регистрация: Jul 2004
Сообщений: 430
|
На сколько я понимаю, где-то так:
import flash.display.BitmapData; var linkageId:String = "myBitmap"; var myBitmapData:BitmapData = BitmapData.loadBitmap(linkageId); var mc:MovieClip = this.createEmptyMovieClip("mc", this.getNextHighestDepth()); mc.attachBitmap(myBitmapData, this.getNextHighestDepth()); mc.onMouseMove = function() { var alpha:String = (myBitmapData.getPixel32(_xmouse, _ymouse) >> 24 & 0xFF).toString(16); trace(">> alpha: " + alpha); var red:String = (myBitmapData.getPixel32(_xmouse, _ymouse) >> 16 & 0xFF).toString(16); trace(">> red: " + red); var green:String = (myBitmapData.getPixel32(_xmouse, _ymouse) >> 8 & 0xFF).toString(16); trace(">> green: " + green); var blue:String = (myBitmapData.getPixel32(_xmouse, _ymouse) & 0xFF).toString(16); trace(">> blue: " + blue); } |
|
|||||
Я так понимаю, это код из оффициального хелпа. Если уж так, то:
и т.д Возвращаемые значения будут 0 - 255. А отслеживать клип, удобнее так: import flash.display.BitmapData; var linkageId:String = "myBitmap"; var myBitmapData:BitmapData = BitmapData.loadBitmap(linkageId); var mc:MovieClip = this.createEmptyMovieClip("mc", this.getNextHighestDepth()); mc.attachBitmap(myBitmapData,this.getNextHighestDepth()); this.attachMovie("Clip", "clip_mc", this.getNextHighestDepth()); clip_mc.onMouseDown = function() { this.startDrag(true); mc.onMouseMove = function() { var alpha:Number = (myBitmapData.getPixel32(clip_mc._x, clip_mc._y) >> 24 & 0xFF); trace(">> alpha: " + alpha); var red:Number = (myBitmapData.getPixel32(clip_mc._x, clip_mc._y) >> 16 & 0xFF); trace(">> red: " + red); var green:Number = (myBitmapData.getPixel32(clip_mc._x, clip_mc._y) >> 8 & 0xFF); trace(">> green: " + green); var blue:Number = (myBitmapData.getPixel32(clip_mc._x, clip_mc._y) & 0xFF); trace(">> blue: " + blue); }; }; clip_mc.onMouseUp = function() { this.stopDrag(); delete mc.onMouseMove; }; |
Часовой пояс GMT +4, время: 12:18. |
|
« Предыдущая тема | Следующая тема » |
|
|