/// <summary> /// /// </summary> /// <param name="color"></param> /// <returns></returns> public static Vector3d LABtoLCH(Vector3d color) { double l = color.X; double a = color.Y; double b = color.Z; double c = Math.Sqrt(a * a + b * b); double h = Math.Atan2(b, a); h = (h > 0.0) ? SlurMath.ToDegrees(h) : SlurMath.ToDegrees(360.0 - Math.Abs(h)); return(new Vector3d(l, c, h)); }