iOS: значения для CIFilter (Hue) из Photoshop

Я использую Hue Фильтр для изменения оттенка изображения:

CIFilter* hueFilter = 
     [CIFilter filterWithName:@"CIHueAdjust" <blah blah> 
        [NSNumber numberWithFloat:hue], nil];

у меня есть Hue номер, который я хочу использовать с Photoshop, но это не соответствует результатам, которые я получаю от iOS.

Есть ли правило, чтобы изменить номер в PhotoShop на номер, который я должен использовать в iOS?

1 ответ

Решение

Оттенок в цветном режиме HSL/HSV является угловой координатой. В Фотошопе это дается в градусах (от -180 до +180).

В фильтре CIHueAdjust угол задается в радианах. От http://developer.apple.com/library/ios/#documentation/graphicsimaging/Reference/CoreImageFilterReference/Reference/reference.html#//apple_ref/doc/filter/ci/CIHueAdjust

параметры

inputAngle

NSNumber класс, тип атрибута которого CIAttributeTypeAngle и чье отображаемое имя является угол.

Значение по умолчанию: 0,00 Минимум: 0,00 Максимум: 0,00 Минимум слайдера: -3,14 Максимум слайдера: 3,14 Идентичность: 0,00

Формула перехода от значения Photoshop (градусы) к значению CIHueAdjust (радианы) представляет собой линейное преобразование:

filterAngle = photoshopAngle * π / 180
Другие вопросы по тегам