|
Blender V5.0
|
#include "BLI_math_base.h"#include "BLI_math_color_blend.h"#include "BLI_math_color.h"#include "BLI_math_vector.h"Go to the source code of this file.
Macros | |
| #define | __MATH_COLOR_BLEND_INLINE_C__ |
| #define | EPS_SATURATION 0.0005f |
| #define | EPS_ALPHA 0.0005f |
Functions | |
| MINLINE void | blend_color_mix_byte (uchar dst[4], const uchar src1[4], const uchar src2[4]) |
| MINLINE void | blend_color_add_byte (uchar dst[4], const uchar src1[4], const uchar src2[4]) |
| MINLINE void | blend_color_sub_byte (uchar dst[4], const uchar src1[4], const uchar src2[4]) |
| MINLINE void | blend_color_mul_byte (uchar dst[4], const uchar src1[4], const uchar src2[4]) |
| MINLINE void | blend_color_lighten_byte (uchar dst[4], const uchar src1[4], const uchar src2[4]) |
| MINLINE void | blend_color_darken_byte (uchar dst[4], const uchar src1[4], const uchar src2[4]) |
| MINLINE void | blend_color_erase_alpha_byte (uchar dst[4], const uchar src1[4], const uchar src2[4]) |
| MINLINE void | blend_color_add_alpha_byte (uchar dst[4], const uchar src1[4], const uchar src2[4]) |
| MINLINE void | blend_color_overlay_byte (uchar dst[4], const uchar src1[4], const uchar src2[4]) |
| MINLINE void | blend_color_hardlight_byte (uchar dst[4], const uchar src1[4], const uchar src2[4]) |
| MINLINE void | blend_color_burn_byte (uchar dst[4], const uchar src1[4], const uchar src2[4]) |
| MINLINE void | blend_color_linearburn_byte (uchar dst[4], const uchar src1[4], const uchar src2[4]) |
| MINLINE void | blend_color_dodge_byte (uchar dst[4], const uchar src1[4], const uchar src2[4]) |
| MINLINE void | blend_color_screen_byte (uchar dst[4], const uchar src1[4], const uchar src2[4]) |
| MINLINE void | blend_color_softlight_byte (uchar dst[4], const uchar src1[4], const uchar src2[4]) |
| MINLINE void | blend_color_pinlight_byte (uchar dst[4], const uchar src1[4], const uchar src2[4]) |
| MINLINE void | blend_color_linearlight_byte (uchar dst[4], const uchar src1[4], const uchar src2[4]) |
| MINLINE void | blend_color_vividlight_byte (uchar dst[4], const uchar src1[4], const uchar src2[4]) |
| MINLINE void | blend_color_difference_byte (uchar dst[4], const uchar src1[4], const uchar src2[4]) |
| MINLINE void | blend_color_exclusion_byte (uchar dst[4], const uchar src1[4], const uchar src2[4]) |
| MINLINE void | blend_color_color_byte (uchar dst[4], const uchar src1[4], const uchar src2[4]) |
| MINLINE void | blend_color_hue_byte (uchar dst[4], const uchar src1[4], const uchar src2[4]) |
| MINLINE void | blend_color_saturation_byte (uchar dst[4], const uchar src1[4], const uchar src2[4]) |
| MINLINE void | blend_color_luminosity_byte (uchar dst[4], const uchar src1[4], const uchar src2[4]) |
| MINLINE void | blend_color_interpolate_byte (uchar dst[4], const uchar src1[4], const uchar src2[4], float ft) |
| MINLINE void | blend_color_mix_float (float dst[4], const float src1[4], const float src2[4]) |
| MINLINE void | blend_color_add_float (float dst[4], const float src1[4], const float src2[4]) |
| MINLINE void | blend_color_sub_float (float dst[4], const float src1[4], const float src2[4]) |
| MINLINE void | blend_color_mul_float (float dst[4], const float src1[4], const float src2[4]) |
| MINLINE void | blend_color_lighten_float (float dst[4], const float src1[4], const float src2[4]) |
| MINLINE void | blend_color_darken_float (float dst[4], const float src1[4], const float src2[4]) |
| MINLINE void | blend_color_erase_alpha_float (float dst[4], const float src1[4], const float src2[4]) |
| MINLINE void | blend_color_add_alpha_float (float dst[4], const float src1[4], const float src2[4]) |
| MINLINE void | blend_color_overlay_float (float dst[4], const float src1[4], const float src2[4]) |
| MINLINE void | blend_color_hardlight_float (float dst[4], const float src1[4], const float src2[4]) |
| MINLINE void | blend_color_burn_float (float dst[4], const float src1[4], const float src2[4]) |
| MINLINE void | blend_color_linearburn_float (float dst[4], const float src1[4], const float src2[4]) |
| MINLINE void | blend_color_dodge_float (float dst[4], const float src1[4], const float src2[4]) |
| MINLINE void | blend_color_screen_float (float dst[4], const float src1[4], const float src2[4]) |
| MINLINE void | blend_color_softlight_float (float dst[4], const float src1[4], const float src2[4]) |
| MINLINE void | blend_color_pinlight_float (float dst[4], const float src1[4], const float src2[4]) |
| MINLINE void | blend_color_linearlight_float (float dst[4], const float src1[4], const float src2[4]) |
| MINLINE void | blend_color_vividlight_float (float dst[4], const float src1[4], const float src2[4]) |
| MINLINE void | blend_color_difference_float (float dst[4], const float src1[4], const float src2[4]) |
| MINLINE void | blend_color_exclusion_float (float dst[4], const float src1[4], const float src2[4]) |
| MINLINE void | blend_color_color_float (float dst[4], const float src1[4], const float src2[4]) |
| MINLINE void | blend_color_hue_float (float dst[4], const float src1[4], const float src2[4]) |
| MINLINE void | blend_color_saturation_float (float dst[4], const float src1[4], const float src2[4]) |
| MINLINE void | blend_color_luminosity_float (float dst[4], const float src1[4], const float src2[4]) |
| MINLINE void | blend_color_interpolate_float (float dst[4], const float src1[4], const float src2[4], float t) |
| #define __MATH_COLOR_BLEND_INLINE_C__ |
Definition at line 19 of file math_color_blend_inline.cc.
| #define EPS_ALPHA 0.0005f |
Definition at line 23 of file math_color_blend_inline.cc.
Referenced by blend_color_add_alpha_float(), and blend_color_erase_alpha_float().
| #define EPS_SATURATION 0.0005f |
Definition at line 22 of file math_color_blend_inline.cc.
Definition at line 191 of file math_color_blend_inline.cc.
References copy_v4_v4_uchar(), divide_round_i(), min_ii(), and MINLINE.
Referenced by IMB_blend_color_byte(), and IMB_rectblend().
Definition at line 728 of file math_color_blend_inline.cc.
References copy_v4_v4(), EPS_ALPHA, min_ff(), and MINLINE.
Referenced by IMB_blend_color_float(), and IMB_rectblend().
Definition at line 61 of file math_color_blend_inline.cc.
References copy_v4_v4_uchar(), divide_round_i(), min_ii(), and MINLINE.
Referenced by blender::seq::do_blend_effect_byte(), IMB_blend_color_byte(), IMB_rectblend(), and layerCopyValue_mloopcol().
Definition at line 616 of file math_color_blend_inline.cc.
References copy_v4_v4(), and MINLINE.
Referenced by blender::seq::do_blend_effect_float(), do_projectpaint_soften(), do_projectpaint_soften_f(), IMB_blend_color_float(), IMB_rectblend(), layerCopyValue_propcol(), and paint_2d_lift_soften().
Definition at line 258 of file math_color_blend_inline.cc.
References copy_v4_v4_uchar(), i, max_ii(), and MINLINE.
Referenced by blender::seq::do_blend_effect_byte(), IMB_blend_color_byte(), and IMB_rectblend().
Definition at line 802 of file math_color_blend_inline.cc.
References copy_v4_v4(), i, max_ff(), and MINLINE.
Referenced by blender::seq::do_blend_effect_float(), IMB_blend_color_float(), and IMB_rectblend().
Definition at line 470 of file math_color_blend_inline.cc.
References b, copy_v4_v4_uchar(), hsv_to_rgb(), MINLINE, rgb_to_hsv(), and v2.
Referenced by blender::seq::do_blend_effect_byte(), IMB_blend_color_byte(), and IMB_rectblend().
Definition at line 1010 of file math_color_blend_inline.cc.
References b, copy_v4_v4(), hsv_to_rgb(), MINLINE, rgb_to_hsv(), and v2.
Referenced by blender::seq::do_blend_effect_float(), IMB_blend_color_float(), and IMB_rectblend().
Definition at line 151 of file math_color_blend_inline.cc.
References copy_v4_v4_uchar(), divide_round_i(), min_ii(), and MINLINE.
Referenced by blender::seq::do_blend_effect_byte(), IMB_blend_color_byte(), and IMB_rectblend().
Definition at line 684 of file math_color_blend_inline.cc.
References copy_v4_v4(), min_ff(), and MINLINE.
Referenced by blender::seq::do_blend_effect_float(), IMB_blend_color_float(), and IMB_rectblend().
Definition at line 434 of file math_color_blend_inline.cc.
References abs, copy_v4_v4_uchar(), i, and MINLINE.
Referenced by blender::seq::do_blend_effect_byte(), IMB_blend_color_byte(), and IMB_rectblend().
| MINLINE void blend_color_difference_float | ( | float | dst[4], |
| const float | src1[4], | ||
| const float | src2[4] ) |
Definition at line 975 of file math_color_blend_inline.cc.
References copy_v4_v4(), fabsf, i, and MINLINE.
Referenced by blender::seq::do_blend_effect_float(), IMB_blend_color_float(), and IMB_rectblend().
Definition at line 294 of file math_color_blend_inline.cc.
References copy_v4_v4_uchar(), i, min_ii(), and MINLINE.
Referenced by blender::seq::do_blend_effect_byte(), IMB_blend_color_byte(), and IMB_rectblend().
Definition at line 839 of file math_color_blend_inline.cc.
References copy_v4_v4(), i, min_ff(), and MINLINE.
Referenced by blender::seq::do_blend_effect_float(), IMB_blend_color_float(), and IMB_rectblend().
| MINLINE void blend_color_erase_alpha_byte | ( | uchar | dst[4], |
| const uchar | src1[4], | ||
| const uchar | src2[4] ) |
Definition at line 174 of file math_color_blend_inline.cc.
References copy_v4_v4_uchar(), divide_round_i(), max_ii(), and MINLINE.
Referenced by IMB_blend_color_byte(), and IMB_rectblend().
| MINLINE void blend_color_erase_alpha_float | ( | float | dst[4], |
| const float | src1[4], | ||
| const float | src2[4] ) |
Definition at line 704 of file math_color_blend_inline.cc.
References copy_v4_v4(), EPS_ALPHA, max_ff(), and MINLINE.
Referenced by IMB_blend_color_float(), and IMB_rectblend().
Definition at line 452 of file math_color_blend_inline.cc.
References copy_v4_v4_uchar(), i, min_ii(), and MINLINE.
Referenced by blender::seq::do_blend_effect_byte(), IMB_blend_color_byte(), and IMB_rectblend().
Definition at line 992 of file math_color_blend_inline.cc.
References copy_v4_v4(), i, and MINLINE.
Referenced by blender::seq::do_blend_effect_float(), IMB_blend_color_float(), and IMB_rectblend().
Definition at line 233 of file math_color_blend_inline.cc.
References copy_v4_v4_uchar(), i, min_ii(), and MINLINE.
Referenced by blender::seq::do_blend_effect_byte(), IMB_blend_color_byte(), and IMB_rectblend().
Definition at line 777 of file math_color_blend_inline.cc.
References copy_v4_v4(), i, min_ff(), and MINLINE.
Referenced by blender::seq::do_blend_effect_float(), IMB_blend_color_float(), and IMB_rectblend().
Definition at line 496 of file math_color_blend_inline.cc.
References b, copy_v4_v4_uchar(), hsv_to_rgb(), MINLINE, rgb_to_hsv(), and v2.
Referenced by blender::seq::do_blend_effect_byte(), IMB_blend_color_byte(), and IMB_rectblend().
Definition at line 1037 of file math_color_blend_inline.cc.
References b, copy_v4_v4(), hsv_to_rgb(), MINLINE, rgb_to_hsv(), and v2.
Referenced by blender::seq::do_blend_effect_float(), IMB_blend_color_float(), and IMB_rectblend().
| MINLINE void blend_color_interpolate_byte | ( | uchar | dst[4], |
| const uchar | src1[4], | ||
| const uchar | src2[4], | ||
| float | ft ) |
Definition at line 573 of file math_color_blend_inline.cc.
References copy_v4_v4_uchar(), divide_round_i(), and MINLINE.
Referenced by do_projectpaint_smear(), do_projectpaint_soften(), IMB_rectblend(), and layerCopyValue_mloopcol().
| MINLINE void blend_color_interpolate_float | ( | float | dst[4], |
| const float | src1[4], | ||
| const float | src2[4], | ||
| float | t ) |
Definition at line 1115 of file math_color_blend_inline.cc.
References MINLINE.
Referenced by blender::ed::sculpt_paint::color::color_filter_task(), blender::ed::sculpt_paint::color::do_color_smooth_task(), blender::ed::sculpt_paint::color::do_paint_brush(), blender::ed::sculpt_paint::color::do_paint_brush_task(), do_projectpaint_smear_f(), do_projectpaint_soften_f(), blender::ed::sculpt_paint::color::do_smear_brush_task(), IMB_rectblend(), and layerCopyValue_propcol().
Definition at line 128 of file math_color_blend_inline.cc.
References copy_v4_v4_uchar(), divide_round_i(), max_ii(), and MINLINE.
Referenced by blender::seq::do_blend_effect_byte(), IMB_blend_color_byte(), and IMB_rectblend().
Definition at line 664 of file math_color_blend_inline.cc.
References copy_v4_v4(), max_ff(), and MINLINE.
Referenced by blender::seq::do_blend_effect_float(), IMB_blend_color_float(), and IMB_rectblend().
Definition at line 276 of file math_color_blend_inline.cc.
References copy_v4_v4_uchar(), i, max_ii(), and MINLINE.
Referenced by blender::seq::do_blend_effect_byte(), IMB_blend_color_byte(), and IMB_rectblend().
| MINLINE void blend_color_linearburn_float | ( | float | dst[4], |
| const float | src1[4], | ||
| const float | src2[4] ) |
Definition at line 821 of file math_color_blend_inline.cc.
References copy_v4_v4(), i, max_ff(), and MINLINE.
Referenced by blender::seq::do_blend_effect_float(), IMB_blend_color_float(), and IMB_rectblend().
| MINLINE void blend_color_linearlight_byte | ( | uchar | dst[4], |
| const uchar | src1[4], | ||
| const uchar | src2[4] ) |
Definition at line 378 of file math_color_blend_inline.cc.
References copy_v4_v4_uchar(), i, max_ii(), min_ii(), and MINLINE.
Referenced by blender::seq::do_blend_effect_byte(), IMB_blend_color_byte(), and IMB_rectblend().
| MINLINE void blend_color_linearlight_float | ( | float | dst[4], |
| const float | src1[4], | ||
| const float | src2[4] ) |
Definition at line 919 of file math_color_blend_inline.cc.
References copy_v4_v4(), i, max_ff(), min_ff(), and MINLINE.
Referenced by blender::seq::do_blend_effect_float(), IMB_blend_color_float(), and IMB_rectblend().
Definition at line 548 of file math_color_blend_inline.cc.
References b, copy_v4_v4_uchar(), hsv_to_rgb(), MINLINE, rgb_to_hsv(), and v2.
Referenced by blender::seq::do_blend_effect_byte(), IMB_blend_color_byte(), and IMB_rectblend().
| MINLINE void blend_color_luminosity_float | ( | float | dst[4], |
| const float | src1[4], | ||
| const float | src2[4] ) |
Definition at line 1090 of file math_color_blend_inline.cc.
References b, copy_v4_v4(), hsv_to_rgb(), MINLINE, rgb_to_hsv(), and v2.
Referenced by blender::seq::do_blend_effect_float(), IMB_blend_color_float(), and IMB_rectblend().
Definition at line 37 of file math_color_blend_inline.cc.
References copy_v4_v4_uchar(), divide_round_i(), and MINLINE.
Referenced by blf_glyph_draw_buffer(), do_projectpaint_thread(), IMB_blend_color_byte(), IMB_rectblend(), layerCopyValue_mloopcol(), paint_2d_bucket_fill(), and screen_opengl_render_doit().
Definition at line 598 of file math_color_blend_inline.cc.
References copy_v4_v4(), and MINLINE.
Referenced by blf_glyph_draw_buffer(), blender::ed::sculpt_paint::color::color_filter_task(), blender::ed::sculpt_paint::color::do_paint_brush_task(), do_projectpaint_thread(), FRS_composite_result(), IMB_blend_color_float(), IMB_rectblend(), layerCopyValue_propcol(), blender::ed::sculpt_paint::paint::image::PaintingKernel< ImageBuffer >::paint(), and paint_2d_bucket_fill().
Definition at line 105 of file math_color_blend_inline.cc.
References copy_v4_v4_uchar(), divide_round_i(), and MINLINE.
Referenced by blender::seq::do_blend_effect_byte(), IMB_blend_color_byte(), IMB_rectblend(), and layerCopyValue_mloopcol().
Definition at line 646 of file math_color_blend_inline.cc.
References copy_v4_v4(), and MINLINE.
Referenced by blender::seq::do_blend_effect_float(), IMB_blend_color_float(), IMB_rectblend(), and layerCopyValue_propcol().
Definition at line 208 of file math_color_blend_inline.cc.
References copy_v4_v4_uchar(), i, min_ii(), and MINLINE.
Referenced by blender::seq::do_blend_effect_byte(), IMB_blend_color_byte(), and IMB_rectblend().
Definition at line 752 of file math_color_blend_inline.cc.
References copy_v4_v4(), i, min_ff(), and MINLINE.
Referenced by blender::seq::do_blend_effect_float(), IMB_blend_color_float(), and IMB_rectblend().
Definition at line 353 of file math_color_blend_inline.cc.
References copy_v4_v4_uchar(), i, max_ii(), min_ii(), and MINLINE.
Referenced by blender::seq::do_blend_effect_byte(), IMB_blend_color_byte(), and IMB_rectblend().
Definition at line 894 of file math_color_blend_inline.cc.
References copy_v4_v4(), i, max_ff(), min_ff(), and MINLINE.
Referenced by blender::seq::do_blend_effect_float(), IMB_blend_color_float(), and IMB_rectblend().
Definition at line 521 of file math_color_blend_inline.cc.
References b, copy_v4_v4_uchar(), EPS_SATURATION, hsv_to_rgb(), MINLINE, rgb_to_hsv(), and v2.
Referenced by blender::seq::do_blend_effect_byte(), IMB_blend_color_byte(), and IMB_rectblend().
| MINLINE void blend_color_saturation_float | ( | float | dst[4], |
| const float | src1[4], | ||
| const float | src2[4] ) |
Definition at line 1063 of file math_color_blend_inline.cc.
References b, copy_v4_v4(), EPS_SATURATION, hsv_to_rgb(), MINLINE, rgb_to_hsv(), and v2.
Referenced by blender::seq::do_blend_effect_float(), IMB_blend_color_float(), and IMB_rectblend().
Definition at line 312 of file math_color_blend_inline.cc.
References copy_v4_v4_uchar(), i, max_ii(), and MINLINE.
Referenced by blender::seq::do_blend_effect_byte(), IMB_blend_color_byte(), and IMB_rectblend().
Definition at line 857 of file math_color_blend_inline.cc.
References copy_v4_v4(), i, max_ff(), and MINLINE.
Referenced by blender::seq::do_blend_effect_float(), IMB_blend_color_float(), and IMB_rectblend().
Definition at line 330 of file math_color_blend_inline.cc.
References copy_v4_v4_uchar(), float, i, MINLINE, and round_fl_to_uchar_clamp().
Referenced by blender::seq::do_blend_effect_byte(), IMB_blend_color_byte(), IMB_rectblend(), and TEST().
Definition at line 875 of file math_color_blend_inline.cc.
References copy_v4_v4(), i, and MINLINE.
Referenced by blender::seq::do_blend_effect_float(), IMB_blend_color_float(), IMB_rectblend(), and TEST().
Definition at line 83 of file math_color_blend_inline.cc.
References copy_v4_v4_uchar(), divide_round_i(), max_ii(), and MINLINE.
Referenced by blender::seq::do_blend_effect_byte(), IMB_blend_color_byte(), IMB_rectblend(), and layerCopyValue_mloopcol().
Definition at line 631 of file math_color_blend_inline.cc.
References copy_v4_v4(), max_ff(), and MINLINE.
Referenced by blender::seq::do_blend_effect_float(), IMB_blend_color_float(), IMB_rectblend(), and layerCopyValue_propcol().
Definition at line 403 of file math_color_blend_inline.cc.
References copy_v4_v4_uchar(), i, max_ii(), min_ii(), and MINLINE.
Referenced by blender::seq::do_blend_effect_byte(), IMB_blend_color_byte(), and IMB_rectblend().
| MINLINE void blend_color_vividlight_float | ( | float | dst[4], |
| const float | src1[4], | ||
| const float | src2[4] ) |
Definition at line 944 of file math_color_blend_inline.cc.
References copy_v4_v4(), i, max_ff(), min_ff(), and MINLINE.
Referenced by blender::seq::do_blend_effect_float(), IMB_blend_color_float(), and IMB_rectblend().