Example #1
0
        /// <summary>
        /// Converts the color from a particualr color space to the specified <see cref="ColorSpace"/>.
        /// </summary>
        /// <param name="color">The color.</param>
        /// <param name="sourceColorSpace">The color space of this instance.</param>
        /// <param name="colorSpace">The color space.</param>
        /// <returns>The color converted to the specified color space.</returns>
        public static Color3 ToColorSpace(this Color3 color, ColorSpace sourceColorSpace, ColorSpace colorSpace)
        {
            // Nothing to do?
            if (sourceColorSpace == colorSpace)
            {
                return(color);
            }

            return(sourceColorSpace == ColorSpace.Gamma ? color.ToLinear() : color.ToSRgb());
        }
Example #2
0
 /// <summary>
 /// Converts the color in gamma space to the specified <see cref="ColorSpace"/>.
 /// </summary>
 /// <param name="color">The color.</param>
 /// <param name="colorSpace">The color space.</param>
 /// <returns>The color converted to the specified color space.</returns>
 public static Color3 ToColorSpace(this Color3 color, ColorSpace colorSpace)
 {
     return(colorSpace == ColorSpace.Linear ? color.ToLinear() : color);
 }