Beispiel #1
0
    public void Equals_Same()
    {
        var first  = new JzazbzColor(jz: 0.6, az: -0.3, bz: 0.01);
        var second = new JzazbzColor(jz: 0.6, az: -0.3, bz: 0.01);

        CustomAssert.EqualsWithHashCode(first, second);
    }
Beispiel #2
0
    public void Equals_Different()
    {
        var first  = new JzazbzColor(jz: 0.7, az: -0.3, bz: 0.01);
        var second = new JzazbzColor(jz: 0.6, az: -0.3, bz: 0.01);

        CustomAssert.NotEqualsWithHashCode(first, second);
    }
Beispiel #3
0
    public void VectorCtor()
    {
        var first  = new JzazbzColor(jz: 0.6, az: -0.3, bz: 0.01);
        var vector = new[] { 0.6, -0.3, 0.01 };
        var second = new JzazbzColor(vector);

        CustomAssert.EqualsWithHashCode(first, second);
        Assert.Equal(vector, second.Vector);
    }
Beispiel #4
0
    public void Dctor()
    {
        const double jz1 = 0.6;
        const double az1 = -0.3;
        const double bz1 = 0.01;

        var(jz2, az2, bz2) = new JzazbzColor(jz1, az1, bz1);
        Assert.Equal(jz1, jz2);
        Assert.Equal(az1, az2);
        Assert.Equal(bz1, bz2);
    }
Beispiel #5
0
    public void JzazbzToRgb()
    {
        var inputJzazbz     = new JzazbzColor(0.6004, 0.1864, 0.1541);
        var rgbWorkingSpace = RGBWorkingSpaces.sRGB;

        var jzazbzToRgb = new ConverterBuilder().FromJzazbz(rgbWorkingSpace.WhitePoint).ToRGB(rgbWorkingSpace).Build();
        var outputRgb   = jzazbzToRgb.Convert(inputJzazbz); // RGB [R=0.94, G=0.2, B=0.25]

        Assert.Equal(0.9370129897742967, outputRgb.R);
        Assert.Equal(0.20017189959478499, outputRgb.G);
        Assert.Equal(0.2510271785857589, outputRgb.B);
    }
Beispiel #6
0
    public void SamplesJzazbz()
    {
        // red
        var c1 = new JzazbzColor(0.6004, 0.1864, 0.1541);

        // white (D65)
        var c2 = new JzazbzColor(0.9886, -0.0002, -0.0001);

        // gray (D65)
        var c3 = new JzazbzColor(0.5446, -0.0002, -0.0001);

        // black
        var c4 = new JzazbzColor(0, 0, 0);
    }
    public void Convert_Jzazbz_to_sRGB(double jz,
                                       double az,
                                       double bz,
                                       double r,
                                       double g,
                                       double b)
    {
        // arrange
        var input     = new JzazbzColor(jz, az, bz);
        var converter = new ConverterBuilder()
                        .FromJzazbz()
                        .ToRGB()
                        .Build();

        // act
        var output = converter.Convert(input);

        // assert
        Assert.Equal(r, output.R, DoubleComparer);
        Assert.Equal(g, output.G, DoubleComparer);
        Assert.Equal(b, output.B, DoubleComparer);
    }
Beispiel #8
0
    public void Convert_Jzazbz_to_JzCzhz(double jz,
                                         double az,
                                         double bz,
                                         double jhz,
                                         double cz,
                                         double hz)
    {
        // arrange
        var input     = new JzazbzColor(jz, az, bz);
        var converter = new ConverterBuilder()
                        .FromJzazbz()
                        .ToJzCzhz()
                        .Build();

        // act
        var output = converter.Convert(input);

        // assert
        Assert.Equal(jhz, output.Jz, DoubleComparer);
        Assert.Equal(cz, output.Cz, DoubleComparer);
        Assert.Equal(hz, output.hz, DoubleComparer);
    }
Beispiel #9
0
    public void ToString_Simple()
    {
        var color = new JzazbzColor(jz: 0.6, az: -0.3, bz: 0.01);

        Assert.Equal("Jzazbz [Jz=0.6, az=-0.3, bz=0.01]", color.ToString());
    }