AS3中ARGB、RGB相互转换,获取ARGB中的Alpha值等方法


参考资料:http://blog.csdn.net/zeng622peng/article/details/6931485


package chen.color
{
	/**
	 * 颜色相关的工具包
	 * @author	ragged
	 * @qq		284950276
	 */	
	public class ColorTools
	{
		private static var colorTools:ColorTools;
		
		
		/**颜色相关的工具包*/
		public function ColorTools($single:SINGLE)
		{
		}
		/**获取颜色工具包单列*/
		public static function getInstance():ColorTools
		{
			if(colorTools == null)
			{
				colorTools = new ColorTools(new SINGLE);
			}
			return colorTools;
		}
		/**ARGB转10进制*/
		public function argbToNumber(a:Number, r:Number, g:Number, b:Number):uint
		{
			return a<<24 | r<<16 | g<<8 | b;
		}
		/**RGB转10进制*/
		public function rgbToNumber(r:Number, g:Number, b:Number):uint
		{
			return r<<16 | g<<8 | b;
		}
		/**10进制转ARGB*/
		public function numberToArgb(val:Number):Object
		{
			var col:Object = {};
			col.alpha = (val >> 24) & 0xFF;
			col.red = (val >> 16) & 0xFF;
			col.green = (val >> 8) & 0xFF;
			col.blue = val & 0xFF;
			return col;
		}
		/**10进制转RGB*/
		public function numberToRgb(val:Number):Object
		{
			var col:Object = {};
			col.red = (val >> 16) & 0xFF;
			col.green = (val >> 8) & 0xFF;
			col.blue = val & 0xFF;
			return col;
		}
		
		
		
		
	}
}
class SINGLE{};