diff options
| author | skullY <skullydazed@gmail.com> | 2019-08-30 11:19:03 -0700 |
|---|---|---|
| committer | skullydazed <skullydazed@users.noreply.github.com> | 2019-08-30 15:01:52 -0700 |
| commit | b624f32f944acdc59dcb130674c09090c5c404cb (patch) | |
| tree | bc13adbba137d122d9a2c2fb2fafcbb08ac10e25 /quantum/color.c | |
| parent | 61af76a10d00aba185b8338604171de490a13e3b (diff) | |
| download | qmk_firmware-b624f32f944acdc59dcb130674c09090c5c404cb.tar.gz qmk_firmware-b624f32f944acdc59dcb130674c09090c5c404cb.zip | |
clang-format changes
Diffstat (limited to 'quantum/color.c')
| -rw-r--r-- | quantum/color.c | 117 |
1 files changed, 56 insertions, 61 deletions
diff --git a/quantum/color.c b/quantum/color.c index a309da379..847129736 100644 --- a/quantum/color.c +++ b/quantum/color.c | |||
| @@ -14,81 +14,76 @@ | |||
| 14 | * along with this program. If not, see <http://www.gnu.org/licenses/>. | 14 | * along with this program. If not, see <http://www.gnu.org/licenses/>. |
| 15 | */ | 15 | */ |
| 16 | 16 | ||
| 17 | |||
| 18 | #include "color.h" | 17 | #include "color.h" |
| 19 | #include "led_tables.h" | 18 | #include "led_tables.h" |
| 20 | #include "progmem.h" | 19 | #include "progmem.h" |
| 21 | 20 | ||
| 22 | RGB hsv_to_rgb( HSV hsv ) | 21 | RGB hsv_to_rgb(HSV hsv) { |
| 23 | { | 22 | RGB rgb; |
| 24 | RGB rgb; | 23 | uint8_t region, remainder, p, q, t; |
| 25 | uint8_t region, remainder, p, q, t; | 24 | uint16_t h, s, v; |
| 26 | uint16_t h, s, v; | ||
| 27 | 25 | ||
| 28 | if ( hsv.s == 0 ) | 26 | if (hsv.s == 0) { |
| 29 | { | ||
| 30 | #ifdef USE_CIE1931_CURVE | 27 | #ifdef USE_CIE1931_CURVE |
| 31 | rgb.r = rgb.g = rgb.b = pgm_read_byte( &CIE1931_CURVE[hsv.v] ); | 28 | rgb.r = rgb.g = rgb.b = pgm_read_byte(&CIE1931_CURVE[hsv.v]); |
| 32 | #else | 29 | #else |
| 33 | rgb.r = hsv.v; | 30 | rgb.r = hsv.v; |
| 34 | rgb.g = hsv.v; | 31 | rgb.g = hsv.v; |
| 35 | rgb.b = hsv.v; | 32 | rgb.b = hsv.v; |
| 36 | #endif | 33 | #endif |
| 37 | return rgb; | 34 | return rgb; |
| 38 | } | 35 | } |
| 39 | 36 | ||
| 40 | h = hsv.h; | 37 | h = hsv.h; |
| 41 | s = hsv.s; | 38 | s = hsv.s; |
| 42 | v = hsv.v; | 39 | v = hsv.v; |
| 43 | 40 | ||
| 44 | region = h * 6 / 255; | 41 | region = h * 6 / 255; |
| 45 | remainder = (h * 2 - region * 85) * 3; | 42 | remainder = (h * 2 - region * 85) * 3; |
| 46 | 43 | ||
| 47 | p = (v * (255 - s)) >> 8; | 44 | p = (v * (255 - s)) >> 8; |
| 48 | q = (v * (255 - ((s * remainder) >> 8))) >> 8; | 45 | q = (v * (255 - ((s * remainder) >> 8))) >> 8; |
| 49 | t = (v * (255 - ((s * (255 - remainder)) >> 8))) >> 8; | 46 | t = (v * (255 - ((s * (255 - remainder)) >> 8))) >> 8; |
| 50 | 47 | ||
| 51 | switch ( region ) | 48 | switch (region) { |
| 52 | { | 49 | case 6: |
| 53 | case 6: | 50 | case 0: |
| 54 | case 0: | 51 | rgb.r = v; |
| 55 | rgb.r = v; | 52 | rgb.g = t; |
| 56 | rgb.g = t; | 53 | rgb.b = p; |
| 57 | rgb.b = p; | 54 | break; |
| 58 | break; | 55 | case 1: |
| 59 | case 1: | 56 | rgb.r = q; |
| 60 | rgb.r = q; | 57 | rgb.g = v; |
| 61 | rgb.g = v; | 58 | rgb.b = p; |
| 62 | rgb.b = p; | 59 | break; |
| 63 | break; | 60 | case 2: |
| 64 | case 2: | 61 | rgb.r = p; |
| 65 | rgb.r = p; | 62 | rgb.g = v; |
| 66 | rgb.g = v; | 63 | rgb.b = t; |
| 67 | rgb.b = t; | 64 | break; |
| 68 | break; | 65 | case 3: |
| 69 | case 3: | 66 | rgb.r = p; |
| 70 | rgb.r = p; | 67 | rgb.g = q; |
| 71 | rgb.g = q; | 68 | rgb.b = v; |
| 72 | rgb.b = v; | 69 | break; |
| 73 | break; | 70 | case 4: |
| 74 | case 4: | 71 | rgb.r = t; |
| 75 | rgb.r = t; | 72 | rgb.g = p; |
| 76 | rgb.g = p; | 73 | rgb.b = v; |
| 77 | rgb.b = v; | 74 | break; |
| 78 | break; | 75 | default: |
| 79 | default: | 76 | rgb.r = v; |
| 80 | rgb.r = v; | 77 | rgb.g = p; |
| 81 | rgb.g = p; | 78 | rgb.b = q; |
| 82 | rgb.b = q; | 79 | break; |
| 83 | break; | 80 | } |
| 84 | } | ||
| 85 | 81 | ||
| 86 | #ifdef USE_CIE1931_CURVE | 82 | #ifdef USE_CIE1931_CURVE |
| 87 | rgb.r = pgm_read_byte( &CIE1931_CURVE[rgb.r] ); | 83 | rgb.r = pgm_read_byte(&CIE1931_CURVE[rgb.r]); |
| 88 | rgb.g = pgm_read_byte( &CIE1931_CURVE[rgb.g] ); | 84 | rgb.g = pgm_read_byte(&CIE1931_CURVE[rgb.g]); |
| 89 | rgb.b = pgm_read_byte( &CIE1931_CURVE[rgb.b] ); | 85 | rgb.b = pgm_read_byte(&CIE1931_CURVE[rgb.b]); |
| 90 | #endif | 86 | #endif |
| 91 | 87 | ||
| 92 | return rgb; | 88 | return rgb; |
| 93 | } | 89 | } |
| 94 | |||
