首页 > 其他 > 详细

RGB 转化 HSV代码

时间:2014-05-21 14:50:22      阅读:409      评论:0      收藏:0      [点我收藏+]
public void toHSV3( int red , int green , int blue ){
		double 	maxRGB	=	FqMath.max( red , green , blue );// 
		double	minRGB	=	FqMath.min( red , green , blue );
		double	itemp	=	maxRGB;            //v‘=itemp
		double	temp	=	maxRGB	-	minRGB;//
		
		if( maxRGB == minRGB ){
			this.hHSV	=	0;
			this.sHSV	=	0;
			this.vHSV	=	maxRGB / 255;
			return;
		}
		double	rtemp	=	( itemp - red )	/ temp;//r‘=rtemp
		double	gtemp	=	( itemp - green ) / temp;//g‘=gtemp
		double	btemp	=	( itemp - blue ) / temp;//b‘=btemp
		this.vHSV	=	itemp / 255;//v=this.vHSV
		this.sHSV	=	temp / itemp;//s‘=this.sHSV
		if( red == maxRGB ){
			if( green == minRGB )
				this.hHSV	=	5 + btemp;
			else
				this.hHSV	=	1 - gtemp;
		}
		else if( green == maxRGB ){
			if( blue == minRGB )
				this.hHSV	=	1 + rtemp;
			else
				this.hHSV	=	3 - btemp;
		}
		else if( blue == maxRGB ){
			if( red == minRGB )
				this.hHSV	=	3 + gtemp;
			else
				this.hHSV	=	5 - rtemp;
		}
		this.hHSV	*=	60;	
	}

RGB 转化 HSV代码,布布扣,bubuko.com

RGB 转化 HSV代码

原文:http://blog.csdn.net/guanjungao/article/details/26362035

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!