1 #pragma once 2 3 #ifndef igs_hls_adjust_h 4 #define igs_hls_adjust_h 5 6 #ifndef IGS_HLS_ADJUST_EXPORT 7 #define IGS_HLS_ADJUST_EXPORT 8 #endif 9 10 namespace igs { 11 namespace hls_adjust { 12 IGS_HLS_ADJUST_EXPORT void change( 13 unsigned char *image_array, const int height, const int width, 14 const int channels, const int bits 15 16 , 17 const unsigned char *ref /* 求める画像と同じ高、幅、channels数 */ 18 , 19 const int ref_bits /* refがゼロのときはここもゼロ */ 20 , 21 const int ref_mode /* 0=R,1=G,2=B,3=A,4=Luminance,5=Nothing */ 22 23 , 24 const double hue_pivot /* 0.0 ...0...360... */ 25 , 26 const double hue_scale /* 1.0 ...1... */ 27 , 28 const double hue_shift /* 0.0 ...0...360... */ 29 , 30 const double lig_pivot /* 0.0 ...0...1... */ 31 , 32 const double lig_scale /* 1.0 ...1... */ 33 , 34 const double lig_shift /* 0.0 ...0...1... */ 35 , 36 const double sat_pivot /* 0.0 ...0...1... */ 37 , 38 const double sat_scale /* 1.0 ...1... */ 39 , 40 const double sat_shift /* 0.0 ...0...1... */ 41 42 , 43 const bool add_blend_sw 44 /* 効果(変化量)をアルファブレンドするか否かのスイッチ 45 add_blend_sw == true 46 アルファ値によりRGBの変化量を調整する 47 合成方法が 48 合成画 = 下絵 * (1 - alpha) + 上絵 49 の場合こちらを使う 50 add_blend_sw == false 51 アルファ値に関係なくRGBが変化する 52 合成方法が 53 合成画 = 下絵 * (1 - alpha) + 上絵 * alpha 54 の場合こちらを使う 55 */ 56 ); 57 } 58 } 59 60 #endif /* !igs_hls_adjust_h */ 61