Цитата:
Сообщение от Котяра
...от чистокрасного FF00FF...
|
FF00FF это не красный
Добавлено через 43 минуты
например, красно-зеленый градиент 100х100

Код AS3:
var shape:Shape = new Shape();
shape.graphics.beginGradientFill('linear', [0xff0000, 0x00ff00, 0x00ff00], [1, 1, 1], [140, 250, 255]);
shape.graphics.drawRect(0, 0, 100, 100);
shape.graphics.endFill();
var bmd:BitmapData = new BitmapData(shape.width, shape.height)
bmd.draw(shape);
function getColorPercent(bmd:BitmapData, sColor:uint):Number
{
var w:int = bmd.width;
var h:int = bmd.height;
var totalPixels:int = w * h;
var count:int;
for(var i:int = 0; i < w; i++){
for(var j:int = 0; j < h; j++){
var col:uint = bmd.getPixel(i, j);
if(col == sColor)count++;
}
}
return count * 100 / totalPixels;
}
var redPercent:Number = getColorPercent(bmd, 0xff0000);
trace("содержание чистого красного = " + redPercent + " %"); // 11%
var greenPercent:Number = getColorPercent(bmd, 0x00ff00);
trace("содержание чистого зеленого = " + greenPercent + " %"); // 4%