Add O = MIN(D + S, 1)
(int dst, int src)
| 2592 | * O = MIN(D + S, 1) |
| 2593 | */ |
| 2594 | private static int blend_add_pin(int dst, int src) { |
| 2595 | int a = src >>> 24; |
| 2596 | |
| 2597 | int s_a = a + (a >= 0x7F ? 1 : 0); |
| 2598 | |
| 2599 | int rb = (dst & RB_MASK) + ((src & RB_MASK) * s_a >>> 8 & RB_MASK); |
| 2600 | int gn = (dst & GN_MASK) + ((src & GN_MASK) * s_a >>> 8); |
| 2601 | |
| 2602 | return min((dst >>> 24) + a, 0xFF) << 24 | |
| 2603 | min(rb & 0xFFFF0000, RED_MASK) | |
| 2604 | min(gn & 0x00FFFF00, GREEN_MASK) | |
| 2605 | min(rb & 0x0000FFFF, BLUE_MASK); |
| 2606 | } |
| 2607 | |
| 2608 | |
| 2609 | /** |
no test coverage detected