-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathCriData.cpp
More file actions
165 lines (160 loc) · 10.2 KB
/
Copy pathCriData.cpp
File metadata and controls
165 lines (160 loc) · 10.2 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
// SPDX-FileCopyrightText: 2026 Błażej Szczygieł <mumei6102@gmail.com>
// SPDX-License-Identifier: BSD-3-Clause
#include "CriData.hpp"
namespace CriData {
// TCS reflectance spectra (NIST CQS simulation data)
// 380–780 nm, 5 nm step, 81 values per sample
// Source: https://cie.co.at/datatable/spectral-radiance-factors-14-test-samples-cie-colour-rendering-index-calculation (CIE 1995 + TCS15 from CIE 2024)
const array<array<double, TCS_N>, TCS_COUNT> TCS = {{
// R01 — TCS01 (7.5 R 6/4)
{{ 0.219, 0.239, 0.252, 0.256, 0.256, 0.254, 0.252, 0.248, 0.244,
0.240, 0.237, 0.232, 0.230, 0.226, 0.225, 0.222, 0.220, 0.218,
0.216, 0.214, 0.214, 0.214, 0.216, 0.218, 0.223, 0.225, 0.226,
0.226, 0.225, 0.225, 0.227, 0.230, 0.236, 0.245, 0.253, 0.262,
0.272, 0.283, 0.298, 0.318, 0.341, 0.367, 0.390, 0.409, 0.424,
0.435, 0.442, 0.448, 0.450, 0.451, 0.451, 0.451, 0.451, 0.451,
0.450, 0.450, 0.451, 0.451, 0.453, 0.454, 0.455, 0.457, 0.458,
0.460, 0.462, 0.463, 0.464, 0.465, 0.466, 0.466, 0.466, 0.466,
0.467, 0.467, 0.467, 0.467, 0.467, 0.467, 0.467, 0.467, 0.467 }},
// R02 — TCS02 (5 Y 6/4)
{{ 0.070, 0.079, 0.089, 0.101, 0.111, 0.116, 0.118, 0.120, 0.121,
0.122, 0.122, 0.122, 0.123, 0.124, 0.127, 0.128, 0.131, 0.134,
0.138, 0.143, 0.150, 0.159, 0.174, 0.190, 0.207, 0.225, 0.242,
0.253, 0.260, 0.264, 0.267, 0.269, 0.272, 0.276, 0.282, 0.289,
0.299, 0.309, 0.322, 0.329, 0.335, 0.339, 0.341, 0.341, 0.342,
0.342, 0.342, 0.341, 0.341, 0.339, 0.339, 0.338, 0.338, 0.337,
0.336, 0.335, 0.334, 0.332, 0.332, 0.331, 0.331, 0.330, 0.329,
0.328, 0.328, 0.327, 0.326, 0.325, 0.324, 0.324, 0.324, 0.323,
0.322, 0.321, 0.320, 0.318, 0.316, 0.315, 0.315, 0.314, 0.314 }},
// R03 — TCS03 (5 GY 6/8)
{{ 0.065, 0.068, 0.070, 0.072, 0.073, 0.073, 0.074, 0.074, 0.074,
0.073, 0.073, 0.073, 0.073, 0.073, 0.074, 0.075, 0.077, 0.080,
0.085, 0.094, 0.109, 0.126, 0.148, 0.172, 0.198, 0.221, 0.241,
0.260, 0.278, 0.302, 0.339, 0.370, 0.392, 0.399, 0.400, 0.393,
0.380, 0.365, 0.349, 0.332, 0.315, 0.299, 0.285, 0.272, 0.264,
0.257, 0.252, 0.247, 0.241, 0.235, 0.229, 0.224, 0.220, 0.217,
0.216, 0.216, 0.219, 0.224, 0.230, 0.238, 0.251, 0.269, 0.288,
0.312, 0.340, 0.366, 0.390, 0.412, 0.431, 0.447, 0.460, 0.472,
0.481, 0.488, 0.493, 0.497, 0.500, 0.502, 0.505, 0.510, 0.516 }},
// R04 — TCS04 (2.5 G 6/6)
{{ 0.074, 0.083, 0.093, 0.105, 0.116, 0.121, 0.124, 0.126, 0.128,
0.131, 0.135, 0.139, 0.144, 0.151, 0.161, 0.172, 0.186, 0.205,
0.229, 0.254, 0.281, 0.308, 0.332, 0.352, 0.370, 0.383, 0.390,
0.394, 0.395, 0.392, 0.385, 0.377, 0.367, 0.354, 0.341, 0.327,
0.312, 0.296, 0.280, 0.263, 0.247, 0.229, 0.214, 0.198, 0.185,
0.175, 0.169, 0.164, 0.160, 0.156, 0.154, 0.152, 0.151, 0.149,
0.148, 0.148, 0.148, 0.149, 0.151, 0.154, 0.158, 0.162, 0.165,
0.168, 0.170, 0.171, 0.170, 0.168, 0.166, 0.164, 0.164, 0.165,
0.168, 0.172, 0.177, 0.181, 0.185, 0.189, 0.192, 0.194, 0.197 }},
// R05 — TCS05 (10 BG 6/4)
{{ 0.295, 0.306, 0.310, 0.312, 0.313, 0.315, 0.319, 0.322, 0.326,
0.330, 0.334, 0.339, 0.346, 0.352, 0.360, 0.369, 0.381, 0.394,
0.403, 0.410, 0.415, 0.418, 0.419, 0.417, 0.413, 0.409, 0.403,
0.396, 0.389, 0.381, 0.372, 0.363, 0.353, 0.342, 0.331, 0.320,
0.308, 0.296, 0.284, 0.271, 0.260, 0.247, 0.232, 0.220, 0.210,
0.200, 0.194, 0.189, 0.185, 0.183, 0.180, 0.177, 0.176, 0.175,
0.175, 0.175, 0.175, 0.177, 0.180, 0.183, 0.186, 0.189, 0.192,
0.195, 0.199, 0.200, 0.199, 0.198, 0.196, 0.195, 0.195, 0.196,
0.197, 0.200, 0.203, 0.205, 0.208, 0.212, 0.215, 0.217, 0.219 }},
// R06 — TCS06 (5 PB 6/8)
{{ 0.151, 0.203, 0.265, 0.339, 0.410, 0.464, 0.492, 0.508, 0.517,
0.524, 0.531, 0.538, 0.544, 0.551, 0.556, 0.556, 0.554, 0.549,
0.541, 0.531, 0.519, 0.504, 0.488, 0.469, 0.450, 0.431, 0.414,
0.395, 0.377, 0.358, 0.341, 0.325, 0.309, 0.293, 0.279, 0.265,
0.253, 0.241, 0.234, 0.227, 0.225, 0.222, 0.221, 0.220, 0.220,
0.220, 0.220, 0.220, 0.223, 0.227, 0.233, 0.239, 0.244, 0.251,
0.258, 0.263, 0.268, 0.273, 0.278, 0.281, 0.283, 0.286, 0.291,
0.296, 0.302, 0.313, 0.325, 0.338, 0.351, 0.364, 0.376, 0.389,
0.401, 0.413, 0.425, 0.436, 0.447, 0.458, 0.469, 0.477, 0.485 }},
// R07 — TCS07 (2.5 P 6/8)
{{ 0.378, 0.459, 0.524, 0.546, 0.551, 0.555, 0.559, 0.560, 0.561,
0.558, 0.556, 0.551, 0.544, 0.535, 0.522, 0.506, 0.488, 0.469,
0.448, 0.429, 0.408, 0.385, 0.363, 0.341, 0.324, 0.311, 0.301,
0.291, 0.283, 0.273, 0.265, 0.260, 0.257, 0.257, 0.259, 0.260,
0.260, 0.258, 0.256, 0.254, 0.254, 0.259, 0.270, 0.284, 0.302,
0.324, 0.344, 0.362, 0.377, 0.389, 0.400, 0.410, 0.420, 0.429,
0.438, 0.445, 0.452, 0.457, 0.462, 0.466, 0.468, 0.470, 0.473,
0.477, 0.483, 0.489, 0.496, 0.503, 0.511, 0.518, 0.525, 0.532,
0.539, 0.546, 0.553, 0.559, 0.565, 0.570, 0.575, 0.578, 0.581 }},
// R08 — TCS08 (10 P 6/8)
{{ 0.104, 0.129, 0.170, 0.240, 0.319, 0.416, 0.462, 0.482, 0.490,
0.488, 0.482, 0.473, 0.462, 0.450, 0.439, 0.426, 0.413, 0.397,
0.382, 0.366, 0.352, 0.337, 0.325, 0.310, 0.299, 0.289, 0.283,
0.276, 0.270, 0.262, 0.256, 0.251, 0.250, 0.251, 0.254, 0.258,
0.264, 0.269, 0.272, 0.274, 0.278, 0.284, 0.295, 0.316, 0.348,
0.384, 0.434, 0.482, 0.528, 0.568, 0.604, 0.629, 0.648, 0.663,
0.676, 0.685, 0.693, 0.700, 0.705, 0.709, 0.712, 0.715, 0.717,
0.719, 0.721, 0.720, 0.719, 0.722, 0.725, 0.727, 0.729, 0.730,
0.730, 0.730, 0.730, 0.730, 0.730, 0.730, 0.730, 0.730, 0.730 }},
// R09 — TCS09 (4.5 R 4/13)
{{ 0.066, 0.062, 0.058, 0.055, 0.052, 0.052, 0.051, 0.050, 0.050,
0.049, 0.048, 0.047, 0.046, 0.044, 0.042, 0.041, 0.038, 0.035,
0.033, 0.031, 0.030, 0.029, 0.028, 0.028, 0.028, 0.029, 0.030,
0.030, 0.031, 0.031, 0.032, 0.032, 0.033, 0.034, 0.035, 0.037,
0.041, 0.044, 0.048, 0.052, 0.060, 0.076, 0.102, 0.136, 0.190,
0.256, 0.336, 0.418, 0.505, 0.581, 0.641, 0.682, 0.717, 0.740,
0.758, 0.770, 0.781, 0.790, 0.797, 0.803, 0.809, 0.814, 0.819,
0.824, 0.828, 0.830, 0.831, 0.833, 0.835, 0.836, 0.836, 0.837,
0.838, 0.839, 0.839, 0.839, 0.839, 0.839, 0.839, 0.839, 0.839 }},
// R10 — TCS10 (5 Y 8/10)
{{ 0.050, 0.054, 0.059, 0.063, 0.066, 0.067, 0.068, 0.069, 0.069,
0.070, 0.072, 0.073, 0.076, 0.078, 0.083, 0.088, 0.095, 0.103,
0.113, 0.125, 0.142, 0.162, 0.189, 0.219, 0.262, 0.305, 0.365,
0.416, 0.465, 0.509, 0.546, 0.581, 0.610, 0.634, 0.653, 0.666,
0.678, 0.687, 0.693, 0.698, 0.701, 0.704, 0.705, 0.705, 0.706,
0.707, 0.707, 0.707, 0.708, 0.708, 0.710, 0.711, 0.712, 0.714,
0.716, 0.718, 0.720, 0.722, 0.725, 0.729, 0.731, 0.735, 0.739,
0.742, 0.746, 0.748, 0.749, 0.751, 0.753, 0.754, 0.755, 0.755,
0.755, 0.755, 0.756, 0.757, 0.758, 0.759, 0.759, 0.759, 0.759 }},
// R11 — TCS11 (4.5 G 5/8)
{{ 0.111, 0.121, 0.127, 0.129, 0.127, 0.121, 0.116, 0.112, 0.108,
0.105, 0.104, 0.104, 0.105, 0.106, 0.110, 0.115, 0.123, 0.134,
0.148, 0.167, 0.192, 0.219, 0.252, 0.291, 0.325, 0.347, 0.356,
0.353, 0.346, 0.333, 0.314, 0.294, 0.271, 0.248, 0.227, 0.206,
0.188, 0.170, 0.153, 0.138, 0.125, 0.114, 0.106, 0.100, 0.096,
0.092, 0.090, 0.087, 0.085, 0.082, 0.080, 0.079, 0.078, 0.078,
0.078, 0.078, 0.081, 0.083, 0.088, 0.093, 0.102, 0.112, 0.125,
0.141, 0.161, 0.182, 0.203, 0.223, 0.242, 0.257, 0.270, 0.282,
0.292, 0.302, 0.310, 0.314, 0.317, 0.323, 0.330, 0.334, 0.338 }},
// R12 — TCS12 (3 PB 3/11)
{{ 0.120, 0.103, 0.090, 0.082, 0.076, 0.068, 0.064, 0.065, 0.075,
0.093, 0.123, 0.160, 0.207, 0.256, 0.300, 0.331, 0.346, 0.347,
0.341, 0.328, 0.307, 0.282, 0.257, 0.230, 0.204, 0.178, 0.154,
0.129, 0.109, 0.090, 0.075, 0.062, 0.051, 0.041, 0.035, 0.029,
0.025, 0.022, 0.019, 0.017, 0.017, 0.017, 0.016, 0.016, 0.016,
0.016, 0.016, 0.016, 0.016, 0.016, 0.018, 0.018, 0.018, 0.018,
0.019, 0.020, 0.023, 0.024, 0.026, 0.030, 0.035, 0.043, 0.056,
0.074, 0.097, 0.128, 0.166, 0.210, 0.257, 0.305, 0.354, 0.401,
0.446, 0.485, 0.520, 0.551, 0.577, 0.599, 0.618, 0.633, 0.645 }},
// R13 — TCS13 (5 YR 8/4)
{{ 0.104, 0.127, 0.161, 0.211, 0.264, 0.313, 0.341, 0.352, 0.359,
0.361, 0.364, 0.365, 0.367, 0.369, 0.372, 0.374, 0.376, 0.379,
0.384, 0.389, 0.397, 0.405, 0.416, 0.429, 0.443, 0.454, 0.461,
0.466, 0.469, 0.471, 0.474, 0.476, 0.483, 0.490, 0.506, 0.526,
0.553, 0.582, 0.618, 0.651, 0.680, 0.701, 0.717, 0.729, 0.736,
0.742, 0.745, 0.747, 0.748, 0.748, 0.748, 0.748, 0.748, 0.748,
0.748, 0.748, 0.747, 0.747, 0.747, 0.747, 0.747, 0.747, 0.747,
0.746, 0.746, 0.746, 0.745, 0.744, 0.743, 0.744, 0.745, 0.748,
0.750, 0.750, 0.749, 0.748, 0.748, 0.747, 0.747, 0.747, 0.747 }},
// R14 — TCS14 (5 GY 4/4)
{{ 0.036, 0.036, 0.037, 0.038, 0.039, 0.039, 0.040, 0.041, 0.042,
0.042, 0.043, 0.044, 0.044, 0.045, 0.045, 0.046, 0.047, 0.048,
0.050, 0.052, 0.055, 0.057, 0.062, 0.067, 0.075, 0.083, 0.092,
0.100, 0.108, 0.121, 0.133, 0.142, 0.150, 0.154, 0.155, 0.152,
0.147, 0.140, 0.133, 0.125, 0.118, 0.112, 0.106, 0.101, 0.098,
0.095, 0.093, 0.090, 0.089, 0.087, 0.086, 0.085, 0.084, 0.084,
0.084, 0.084, 0.085, 0.087, 0.092, 0.096, 0.102, 0.110, 0.123,
0.137, 0.152, 0.169, 0.188, 0.207, 0.226, 0.243, 0.260, 0.277,
0.294, 0.310, 0.325, 0.339, 0.353, 0.366, 0.379, 0.390, 0.399 }},
// R15 — TCS15 (Japanese skin, CIE 2024)
{{ 0.131, 0.139, 0.147, 0.153, 0.158, 0.162, 0.164, 0.167, 0.170,
0.175, 0.182, 0.192, 0.203, 0.212, 0.221, 0.229, 0.236, 0.243,
0.249, 0.254, 0.259, 0.264, 0.269, 0.276, 0.284, 0.291, 0.296,
0.298, 0.296, 0.289, 0.282, 0.276, 0.274, 0.276, 0.281, 0.286,
0.291, 0.289, 0.286, 0.280, 0.285, 0.314, 0.354, 0.398, 0.440,
0.470, 0.494, 0.511, 0.524, 0.535, 0.544, 0.552, 0.559, 0.565,
0.571, 0.576, 0.581, 0.586, 0.590, 0.594, 0.599, 0.603, 0.606,
0.610, 0.612, 0.614, 0.616, 0.616, 0.616, 0.616, 0.615, 0.613,
0.612, 0.610, 0.609, 0.608, 0.607, 0.607, 0.609, 0.610, 0.611 }}
}};
}