在“计算机中的颜色XI——从色相值到纯色的快速计算(新的公式)”中提到了色相值到纯色的快速计算。
反过来如何快速的计算纯色的色相值?在“计算机中的颜色V——快速计算颜色的色相值”中曾经提到过计算公式
任意一个纯色的色相值可以用下面公式表示
当G≥B时,H=(255-R+G+B)/255×60
当G<B时,H=360-(255-R+G+B)/255×60
经过一番推导之后,将上面两个公式合并成一个计算公式。
H=180+(510-G-B+R)×Sign(B-G-0.5)/255×60
注:公式中的0.5只是为了修正特殊值(255,0,0)计算时的偏差。在计算其他的纯色时,这个0.5不是必须的。