Мне трудно вручную конвертировать CIELab в CIELCh с помощью моего калькулятора.
В соответствии с http://www.easyrgb.com/en/math.php, ниже приведен код программирования на нейтральном языке для перехода из CIELab в CIELCh путем перехода от радиан.в градусах:
var_H = arc_tangent( CIE-b*, CIE-a* ) //Quadrant by signs
if ( var_H > 0 ) var_H = ( var_H / PI ) * 180
else var_H = 360 - ( abs( var_H ) / PI ) * 180
CIE-L* = CIE-L*
CIE-C* = sqrt( CIE-a* ^ 2 + CIE-b* ^ 2 )
CIE-H° = var_H
И на этом сайте он дает тот же код, но предполагает, что все уже в градусах: http://www.brucelindbloom.com/index.html?Equations.html
При попытке конвертировать код CIELAB (37.80, -21.59, 38.17) для CIELch через мой физический портативный калькулятор, я получаю значение (38, 43.851, 299.49).
Однако правильное значение (38, 43.851, 119.499).
Это означает, что все хорошо для первых двух частей, но последняя часть неверна.
Я не понимаю, как они получили 119 вместо 299. Я считаю, что в математике может быть ошибка.Вот как я смог получить 299 с помощью калькулятора:
Я взял арктангенс (38.17 / -21.59).Я получил значение -1,056 радиан.Согласно коду, если var_H <0, то нужно сделать: </p>
var_H = 360 - ( abs( var_H ) / PI ) * 180
Итак, я сделал 360 - (1.056 / 3.14) * 180.
И это дает 299.
Так что я здесь не так делаю?Как мне получить значение 119 ???