0031999: Tests - request Core Profile on macOS for Ray-Tracing tests
[occt.git] / tests / v3d / colors / rgb2lch
1 # Check conversion of RGB colors to CIE Lch color space
2
3 # Samples are obtained (with Ref. White D65, Gamma = 1 for linear RGB) using
4 # http://brucelindbloom.com/index.html?ColorCalculator.html
5 # Note that for c = 0 we have h = 0 (not 270 as in the above link)
6 set rgb_to_lch_samples {
7   { # black, white, 50% gray }
8   { {0 0 0} {0 0 0} }
9   { {1 1 1} {100 0 0} }
10   { {0.5 0.5 0.5} {76.0693 0 0} }
11
12   { # pure colors }
13   { {1 0 0} {53.2408 104.5518 39.9990} }
14   { {0 1 0} {87.7347 119.7759 136.0160} }
15   { {0 0 1} {32.2970 133.8076 306.2849} }
16   { {0 1 1} {91.1132 50.1209 196.3762} }
17   { {1 1 0} {97.1393 96.9054 102.8512} }
18   { {1 0 1} {60.3242 115.5407 328.2350} }
19
20   { # shades of pure red }
21   { {0.1 0 0} {16.1387 44.8334 33.9838} }
22   { {0.3 0 0} {30.3521 69.3816 39.3960} }
23   { {0.5 0 0} {38.9565 82.9828 39.9990} }
24   { {0.7 0 0} {45.4792 92.8320 39.9990} }
25   { {0.9 0 0} {50.8512 100.9436 39.9990} }
26
27   { # random colors }
28   { {0.3 0.5 0.9} {75.2228 31.8514 271.3601} }
29 }
30
31 foreach sample $rgb_to_lch_samples {
32   set rgb [lindex $sample 0]
33   if { $rgb == "#" } continue
34
35   set ref [lindex $sample 1]
36   set lch [vcolorconvert to lch {*}$rgb]
37   check3reals "RGB ($rgb) to Lch" {*}$lch {*}$ref 1e-4
38 }