コード例 #1
0
        public void Convert_CieLab_to_CieLuv(float l, float a, float b, float l2, float u, float v)
        {
            // Arrange
            var input    = new CieLab(l, a, b);
            var expected = new CieLuv(l2, u, v);

            Span <CieLab> inputSpan = new CieLab[5];

            inputSpan.Fill(input);

            Span <CieLuv> actualSpan = new CieLuv[5];

            // Act
            var actual = Converter.ToCieLuv(input);

            Converter.Convert(inputSpan, actualSpan);

            // Assert
            Assert.Equal(expected, actual, ColorSpaceComparer);

            for (int i = 0; i < actualSpan.Length; i++)
            {
                Assert.Equal(expected, actualSpan[i], ColorSpaceComparer);
            }
        }
コード例 #2
0
        public void Convert_YCbCr_to_CieLuv(float y, float cb, float cr, float l, float u, float v)
        {
            // Arrange
            var input    = new YCbCr(y, cb, cr);
            var expected = new CieLuv(l, u, v);

            Span <YCbCr> inputSpan = new YCbCr[5];

            inputSpan.Fill(input);

            Span <CieLuv> actualSpan = new CieLuv[5];

            // Act
            var actual = Converter.ToCieLuv(input);

            Converter.Convert(inputSpan, actualSpan, actualSpan.Length);

            // Assert
            Assert.Equal(expected, actual, ColorSpaceComparer);


            for (int i = 0; i < actualSpan.Length; i++)
            {
                Assert.Equal(expected, actualSpan[i], ColorSpaceComparer);
            }
        }
コード例 #3
0
        public void Convert_Hsv_to_CieLuv(float h, float s, float v2, float l, float u, float v)
        {
            // Arrange
            var input    = new Hsv(h, s, v2);
            var expected = new CieLuv(l, u, v);

            Span <Hsv> inputSpan = new Hsv[5];

            inputSpan.Fill(input);

            Span <CieLuv> actualSpan = new CieLuv[5];

            // Act
            var actual = Converter.ToCieLuv(input);

            Converter.Convert(inputSpan, actualSpan, actualSpan.Length);

            // Assert
            Assert.Equal(expected, actual, ColorSpaceComparer);


            for (int i = 0; i < actualSpan.Length; i++)
            {
                Assert.Equal(expected, actualSpan[i], ColorSpaceComparer);
            }
        }
コード例 #4
0
        public void Convert_Xyz_to_Luv(float x, float y, float z, float l, float u, float v)
        {
            // Arrange
            var input   = new CieXyz(x, y, z);
            var options = new ColorSpaceConverterOptions {
                WhitePoint = Illuminants.D65, TargetLabWhitePoint = Illuminants.D65
            };
            var converter = new ColorSpaceConverter(options);
            var expected  = new CieLuv(l, u, v);

            Span <CieXyz> inputSpan = new CieXyz[5];

            inputSpan.Fill(input);

            Span <CieLuv> actualSpan = new CieLuv[5];

            // Act
            var actual = converter.ToCieLuv(input);

            converter.Convert(inputSpan, actualSpan);

            // Assert
            Assert.Equal(expected, actual, ColorSpaceComparer);

            for (int i = 0; i < actualSpan.Length; i++)
            {
                Assert.Equal(expected, actualSpan[i], ColorSpaceComparer);
            }
        }
コード例 #5
0
        public void Convert_Cmyk_to_CieLuv(float c, float m, float y, float k, float l, float u, float v)
        {
            // Arrange
            var input    = new Cmyk(c, m, y, k);
            var expected = new CieLuv(l, u, v);

            Span <Cmyk> inputSpan = new Cmyk[5];

            inputSpan.Fill(input);

            Span <CieLuv> actualSpan = new CieLuv[5];

            // Act
            var actual = Converter.ToCieLuv(input);

            Converter.Convert(inputSpan, actualSpan);

            // Assert
            Assert.Equal(expected, actual, ColorSpaceComparer);

            for (int i = 0; i < actualSpan.Length; i++)
            {
                Assert.Equal(expected, actualSpan[i], ColorSpaceComparer);
            }
        }
コード例 #6
0
        public void Convert_Lchuv_to_Luv(float l, float c, float h, float l2, float u, float v)
        {
            // Arrange
            CieLchuv input = new CieLchuv(l, c, h);

            // Act
            CieLuv output = Converter.ToCieLuv(input);

            // Assert
            Assert.Equal(l2, output.L, FloatRoundingComparer);
            Assert.Equal(u, output.U, FloatRoundingComparer);
            Assert.Equal(v, output.V, FloatRoundingComparer);
        }
コード例 #7
0
        public void Convert_Xyz_to_Luv(float x, float y, float z, float l, float u, float v)
        {
            // Arrange
            CieXyz input = new CieXyz(x, y, z);
            ColorSpaceConverter converter = new ColorSpaceConverter {
                WhitePoint = Illuminants.D65, TargetLabWhitePoint = Illuminants.D65
            };

            // Act
            CieLuv output = converter.ToCieLuv(input);

            // Assert
            Assert.Equal(l, output.L, FloatRoundingComparer);
            Assert.Equal(u, output.U, FloatRoundingComparer);
            Assert.Equal(v, output.V, FloatRoundingComparer);
        }