ColorUtil.

git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4480 542714f4-19e9-0310-aa3c-eee0fc999fb1
This commit is contained in:
Ray Greenwell
2006-12-12 23:09:38 +00:00
parent ba4987e679
commit c0b89ae7a5
+31
View File
@@ -0,0 +1,31 @@
//
// $Id$
package com.threerings.util {
/**
* Color utility methods.
*
* See also mx.utils.ColorUtil.
*/
public class ColorUtil
{
/**
* Blend the two colors, either 50-50 or according to the ratio specified.
*/
public static function blend (
first :uint, second :uint, firstPerc :Number = 0.5) :uint
{
var secondPerc :Number = 1 - firstPerc;
var result :uint = 0;
for (var shift :int = 0; shift <= 16; shift += 8) {
var c1 :uint = (first >> shift) & 0xFF;
var c2 :uint = (second >> shift) & 0xFF;
result |= uint(Math.max(0, Math.min(255,
(c1 * firstPerc) + (c2 * secondPerc)))) << shift;
}
return result;
}
}
}