ConvertXyzToLinearSRgb() 공개 메소드

public ConvertXyzToLinearSRgb ( ) : void
리턴 void
예제 #1
0
파일: Program.cs 프로젝트: EFanZh/EFanZh
        private static Color? GetColor(double main, double x, double y)
        {
            ColorVector color = new ColorVector(x, main, y);

            color.ConvertXyzToLinearSRgb();

            if (color.IsCanonical())
            {
                color.ConvertLinearSRgbToSRgb();

                return color.ToColor();
            }
            else
            {
                return null;
            }
        }
예제 #2
0
파일: Program.cs 프로젝트: EFanZh/EFanZh
        private static Color? GetColor(double saturation, double hue, double bigY)
        {
            double angle = 2.0 * Math.PI * hue;
            double scale = bigY / (double)WhitePoints.D65Y;
            double d65BigX = (double)WhitePoints.D65X * scale;
            double d65BigZ = (double)WhitePoints.D65Z * scale;

            ColorVector color = new ColorVector(d65BigX + saturation * Math.Cos(angle), bigY, d65BigZ + saturation * Math.Sin(angle));

            color.ConvertXyzToLinearSRgb();

            if (color.IsCanonical())
            {
                color.ConvertLinearSRgbToSRgb();

                return color.ToColor();
            }
            else
            {
                return null;
            }
        }