@texel/color
Version:
a minimal and modern color library
269 lines (219 loc) • 8.68 kB
JavaScript
/** This file is auto-generated by tools/print_matrices.py */
// OKLab to LMS matrices
export const OKLab_to_LMS_M = [
[],
[],
[],
];
export const LMS_to_OKLab_M = [
[],
[],
[],
];
export const XYZ_to_LMS_M = [
[],
[],
[],
];
export const LMS_to_XYZ_M = [
[],
[-0.0405757452148008, 1.112286803280317, -0.0717110580655164],
[-0.0763729366746601, -0.4214933324022432, 1.5869240198367816],
];
// linear_sRGB space
// linear_sRGB to XYZ (D65) matrices
export const linear_sRGB_to_XYZ_M = [
[],
[],
[],
];
export const XYZ_to_linear_sRGB_M = [
[],
[-0.9692436362808798, 1.8759675015077206, 0.04155505740717561],
[],
];
// linear_sRGB to LMS matrices
export const linear_sRGB_to_LMS_M = [
[],
[],
[],
];
export const LMS_to_linear_sRGB_M = [
[],
[-1.2684379732850313, 2.6097573492876878, -0.3413193760026569],
[-0.004196076138675526, -0.703418617935936, 1.7076146940746113],
];
// linear_sRGB coefficients for OKLab gamut approximation
export const OKLab_to_linear_sRGB_coefficients = [
[
[-1.8817030993265873, -0.8093650129914302],
[],
],
[
[],
[],
],
[
[],
[],
],
];
// linear_DisplayP3 space
// linear_DisplayP3 to XYZ (D65) matrices
export const linear_DisplayP3_to_XYZ_M = [
[],
[],
[],
];
export const XYZ_to_linear_DisplayP3_M = [
[],
[-0.829488969561575, 1.7626640603183468, 0.02362468584194359],
[],
];
// linear_DisplayP3 to LMS matrices
export const linear_DisplayP3_to_LMS_M = [
[],
[],
[],
];
export const LMS_to_linear_DisplayP3_M = [
[],
[-1.091009018437798, 2.413331710306923, -0.3223226918691248],
[-0.02601080193857041, -0.5080413317041669, 1.5340521336427373],
];
// linear_DisplayP3 coefficients for OKLab gamut approximation
export const OKLab_to_linear_DisplayP3_coefficients = [
[
[-1.772343927512981, -0.8207587433674072],
[
1.1941401817282744, 1.7629811997119493, 0.5958599382477117,
0.7575999740542505, 0.5681684967813678,
],
],
[
[],
[
0.7395668192259771, -0.45954279991477065, 0.08285308768965816,
0.1254116495192955, -0.14503290744357106,
],
],
[
[],
[
1.3650944117698118, -0.013962295571040945, -1.1452305089885595,
-0.5025987876721942, 0.003174713114731378,
],
],
];
// linear_Rec2020 space
// linear_Rec2020 to XYZ (D65) matrices
export const linear_Rec2020_to_XYZ_M = [
[],
[],
[],
];
export const XYZ_to_linear_Rec2020_M = [
[],
[-0.666684351832489, 1.616481236634939, 0.01576854581391113],
[],
];
// linear_Rec2020 to LMS matrices
export const linear_Rec2020_to_LMS_M = [
[],
[],
[],
];
export const LMS_to_linear_Rec2020_M = [
[],
[-0.8847358357577675, 2.1632309383612007, -0.27849510260343363],
[-0.04857374640044396, -0.45450314971409633, 1.5030768961145404],
];
// linear_Rec2020 coefficients for OKLab gamut approximation
export const OKLab_to_linear_Rec2020_coefficients = [
[
[-1.3683489920695084, -0.4666477292401165],
[
1.2572444967331895, 1.715801757890085, 0.5648732965817461,
0.7950731608663721, 0.5871636339819248,
],
],
[
[],
[
0.7408775472462948, -0.4586732968366297, 0.081829765825816,
0.12598704592707602, -0.14570327455009213,
],
],
[
[],
[
1.3692048443658147, -0.016466673486950332, -1.141978697647362,
-0.5010647675396565, 0.001199059854416378,
],
],
];
// linear_A98RGB space
// linear_A98RGB to XYZ (D65) matrices
export const linear_A98RGB_to_XYZ_M = [
[],
[],
[],
];
export const XYZ_to_linear_A98RGB_M = [
[],
[-0.9692436362808798, 1.8759675015077206, 0.04155505740717561],
[],
];
// linear_A98RGB to LMS matrices
export const linear_A98RGB_to_LMS_M = [
[],
[],
[],
];
export const LMS_to_linear_A98RGB_M = [
[],
[-1.2684379732850315, 2.6097573492876887, -0.3413193760026572],
[-0.0562347359374939, -0.5670418395669057, 1.6232765755043994],
];
// linear_A98RGB coefficients for OKLab gamut approximation
export const OKLab_to_linear_A98RGB_coefficients = [
[
[-1.591695414425798, -0.8395798483264373],
[
1.215470987494823, 1.7445423850069868, 0.5911924333317312,
0.774055974979685, 0.5710471573194968,
],
],
[
[],
[],
],
[
[-0.014529428934082126, 2.073564997814519],
[],
],
];
// linear_ProPhotoRGB space
// linear_ProPhotoRGB to XYZ (D50) matrices
export const linear_ProPhotoRGB_to_XYZ_M = [
[],
[],
[],
];
export const XYZ_to_linear_ProPhotoRGB_M = [
[],
[-0.5446307051249019, 1.5082477428451468, 0.02052744743642139],
[],
];
// linear_ProPhotoRGB to LMS matrices
export const linear_ProPhotoRGB_to_LMS_M = [
[],
[],
[],
];
export const LMS_to_linear_ProPhotoRGB_M = [
[],
[-0.7641128642092264, 1.9548345194982568, -0.19072165528903018],
[-0.09675934345097237, -0.5061957965480232, 1.602955139998996],
];
// linear_ProPhotoRGB does not yet support OKLab gamut approximation