Blender
V3.3
|
Go to the source code of this file.
Macros | |
Defines | |
#define | BLI_YCC_ITU_BT601 0 |
#define | BLI_YCC_ITU_BT709 1 |
#define | BLI_YCC_JFIF_0_255 2 |
#define | BLI_YUV_ITU_BT601 0 |
#define | BLI_YUV_ITU_BT709 1 |
Other | |
#define | rgba_char_args_set_fl(col, r, g, b, a) rgba_char_args_set(col, (r)*255, (g)*255, (b)*255, (a)*255) |
#define | rgba_float_args_set_ch(col, r, g, b, a) rgba_float_args_set(col, (r) / 255.0f, (g) / 255.0f, (b) / 255.0f, (a) / 255.0f) |
int | constrain_rgb (float *r, float *g, float *b) |
void | minmax_rgb (short c[3]) |
void | hsv_clamp_v (float hsv[3], float v_max) |
void | rgb_float_set_hue_float_offset (float rgb[3], float hue_offset) |
void | rgb_byte_set_hue_float_offset (unsigned char rgb[3], float hue_offset) |
void | rgb_uchar_to_float (float r_col[3], const unsigned char col_ub[3]) |
void | rgba_uchar_to_float (float r_col[4], const unsigned char col_ub[4]) |
void | rgb_float_to_uchar (unsigned char r_col[3], const float col_f[3]) |
void | rgba_float_to_uchar (unsigned char r_col[4], const float col_f[4]) |
MINLINE float | rgb_to_grayscale (const float rgb[3]) |
MINLINE unsigned char | rgb_to_grayscale_byte (const unsigned char rgb[3]) |
MINLINE int | compare_rgb_uchar (const unsigned char a[3], const unsigned char b[3], int limit) |
MINLINE float | dither_random_value (float s, float t) |
MINLINE void | float_to_byte_dither_v3 (unsigned char b[3], const float f[3], float dither, float s, float t) |
MINLINE void | rgba_uchar_args_set (unsigned char col[4], unsigned char r, unsigned char g, unsigned char b, unsigned char a) |
MINLINE void | rgba_float_args_set (float col[4], float r, float g, float b, float a) |
MINLINE void | rgba_uchar_args_test_set (unsigned char col[4], unsigned char r, unsigned char g, unsigned char b, unsigned char a) |
MINLINE void | cpack_cpy_3ub (unsigned char r_col[3], unsigned int pack) |
#define BLI_YCC_ITU_BT601 0 |
Definition at line 21 of file BLI_math_color.h.
#define BLI_YCC_ITU_BT709 1 |
Definition at line 22 of file BLI_math_color.h.
#define BLI_YCC_JFIF_0_255 2 |
Definition at line 23 of file BLI_math_color.h.
#define BLI_YUV_ITU_BT601 0 |
Definition at line 26 of file BLI_math_color.h.
#define BLI_YUV_ITU_BT709 1 |
Definition at line 27 of file BLI_math_color.h.
#define rgba_char_args_set_fl | ( | col, | |
r, | |||
g, | |||
b, | |||
a | |||
) | rgba_char_args_set(col, (r)*255, (g)*255, (b)*255, (a)*255) |
Definition at line 176 of file BLI_math_color.h.
#define rgba_float_args_set_ch | ( | col, | |
r, | |||
g, | |||
b, | |||
a | |||
) | rgba_float_args_set(col, (r) / 255.0f, (g) / 255.0f, (b) / 255.0f, (a) / 255.0f) |
Definition at line 179 of file BLI_math_color.h.
Definition at line 567 of file math_color.c.
References usdtokens::b(), BLI_color_from_srgb_table, BLI_color_to_srgb_table, hipart(), index_to_float(), initialized, linearrgb_to_srgb(), and srgb_to_linearrgb().
Referenced by colormanagement_init(), and blender::tests::TEST().
MINLINE int compare_rgb_uchar | ( | const unsigned char | a[3], |
const unsigned char | b[3], | ||
int | limit | ||
) |
Definition at line 270 of file math_color_inline.c.
References blender::math::abs(), usdtokens::b(), usdtokens::g(), and r.
If the requested RGB shade contains a negative weight for one of the primaries, it lies outside the color gamut accessible from the given triple of primaries. Desaturate it by adding white, equal quantities of R, G, and B, enough to make RGB all positive. The function returns 1 if the components were modified, zero otherwise.
Definition at line 445 of file math_color.c.
References usdtokens::b(), usdtokens::g(), min_ffff(), r, and w().
Definition at line 238 of file math_color_inline.c.
Definition at line 369 of file math_color.c.
Referenced by BKE_palette_from_hash().
Return triangle noise in [-0.5..1.5] range.
Definition at line 288 of file math_color_inline.c.
References floorf, sinf, and t.
Referenced by float_to_byte_dither_v3(), float_to_byte_dither_v4(), and ushort_to_byte_dither_v4().
MINLINE void float_to_byte_dither_v3 | ( | unsigned char | b[3], |
const float | f[3], | ||
float | dither, | ||
float | s, | ||
float | t | ||
) |
Definition at line 303 of file math_color_inline.c.
References usdtokens::b(), dither_random_value(), t, and unit_float_to_uchar_clamp().
Referenced by do_projectpaint_draw(), and do_projectpaint_thread().
Definition at line 177 of file math_color.c.
References CLAMP, and float().
Referenced by BKE_gpencil_palette_ensure(), and ui_colorpicker_hex_rna_cb().
Definition at line 30 of file math_color.c.
References CLAMP, fabsf, and l.
Referenced by BKE_icon_geom_invert_lightness(), blender::nodes::get_multi_function(), hsl_to_rgb_v(), and svm_combine_color().
Definition at line 54 of file math_color.c.
References hsl_to_rgb().
Referenced by BKE_colorband_evaluate(), color_mul_hsl_v3(), colorfn(), blender::compositor::ConvertHSLToRGBOperation::execute_pixel_sampled(), TEST(), ui_color_picker_hsv_to_rgb(), ui_color_picker_to_rgb_HSVCUBE_v(), and blender::compositor::ConvertHSLToRGBOperation::update_memory_buffer_partial().
Clamp hsv
to usable values.
Definition at line 323 of file math_color.c.
We define a 'cpack' here as a (3 byte color code) number that can be expressed like 0xFFAA66 or so. For that reason it is sensitive for endianness... with this function it works correctly.
Definition at line 332 of file math_color.c.
References usdtokens::b(), col, usdtokens::g(), hsv_to_rgb(), r, and v.
Definition at line 13 of file math_color.c.
References CLAMP, fabsf, and v.
Referenced by BKE_paint_face_set_overlay_color_get(), blend_color_color_byte(), blend_color_color_float(), blend_color_hue_byte(), blend_color_hue_float(), blend_color_luminosity_byte(), blend_color_luminosity_float(), blend_color_saturation_byte(), blend_color_saturation_float(), CombineHSVNode::constant_fold(), do_hue_sat_fac(), blender::compositor::MixColorOperation::execute_pixel_sampled(), blender::compositor::MixHueOperation::execute_pixel_sampled(), blender::compositor::MixSaturationOperation::execute_pixel_sampled(), blender::compositor::MixValueOperation::execute_pixel_sampled(), blender::nodes::get_multi_function(), hsv_to_cpack(), hsv_to_rgb_v(), hue_correct_apply_threaded(), IMB_saturation(), blender::color::mix_color(), blender::color::mix_hue(), blender::color::mix_luminosity(), blender::color::mix_saturation(), ramp_blend(), rgb_float_set_hue_float_offset(), svm_combine_color(), svm_mix_color(), svm_mix_hue(), svm_mix_sat(), svm_mix_val(), svm_node_combine_hsv(), svm_node_hsv(), ui_draw_gradient(), blender::compositor::MixColorOperation::update_memory_buffer_row(), blender::compositor::MixHueOperation::update_memory_buffer_row(), blender::compositor::MixSaturationOperation::update_memory_buffer_row(), and blender::compositor::MixValueOperation::update_memory_buffer_row().
Definition at line 49 of file math_color.c.
References hsv_to_rgb().
Referenced by BKE_colorband_evaluate(), checker_board_color_fill(), Color_channel_hsv_set(), color_filter_task_cb(), Color_hsv_set(), colorfn(), deformStroke(), DRW_evaluate_weight_to_color(), blender::compositor::ConvertHSVToRGBOperation::execute_pixel_sampled(), getcolor_fcurve_rainbow(), gpencil_layer_random_color_get(), gpencil_sbuffer_vertex_color_random(), gpencil_vertexpaint_hsv_exec(), graph_refresh_fcurve_colors(), image_buf_fill_checker_slice(), rgb_tint(), TEST(), ui_color_picker_hsv_to_rgb(), ui_color_picker_to_rgb_HSVCUBE_v(), ui_do_but_COLOR(), ui_do_but_HSVCIRCLE(), blender::compositor::ConvertHSVToRGBOperation::update_memory_buffer_partial(), vertex_color_hsv_exec(), and workbench_material_ubo_data().
void lift_gamma_gain_to_asc_cdl | ( | const float * | lift, |
const float * | gamma, | ||
const float * | gain, | ||
float * | offset, | ||
float * | slope, | ||
float * | power | ||
) |
Definition at line 464 of file math_color.c.
References Freestyle::c, and offset.
Definition at line 412 of file math_color.c.
References Freestyle::c, and powf.
Referenced by BLI_init_srgb_conversion(), blender::compositor::colorbalance_lgg(), ibuftoimage(), imb_savepng(), imb_savetiff(), linearrgb_to_srgb_v3_v3(), studiolight_irradiance_preview(), studiolight_matcap_preview(), studiolight_radiance_preview(), and TEST().
Definition at line 133 of file math_color_inline.c.
References linearrgb_to_srgb_v3_v3().
Referenced by IMB_buffer_byte_from_byte(), IMB_buffer_float_from_byte(), and IMB_buffer_float_from_float().
Definition at line 89 of file math_color_inline.c.
References linearrgb_to_srgb_v3_v3(), and unit_float_to_uchar_clamp_v3.
Referenced by paint_2d_bucket_fill(), and project_paint_uvpixel_init().
Definition at line 97 of file math_color_inline.c.
References linearrgb_to_srgb_v4(), and unit_float_to_uchar_clamp_v4.
Referenced by blender::BLI_color_convert_to_theme4b(), convert_float_color_to_byte_color(), blender::ColorSceneLinear4f< Alpha >::encode(), and Freestyle::BlenderStrokeRenderer::GenerateStrokeMesh().
Definition at line 176 of file math_color_inline.c.
References to_srgb_table_lookup(), and unit_float_to_ushort_clamp().
Referenced by IMB_buffer_byte_from_float().
Definition at line 69 of file math_color_inline.c.
References linearrgb_to_srgb().
Referenced by FallbackTransform::applyRGB(), BKE_palette_from_hash(), do_projectpaint_draw(), do_projectpaint_thread(), blender::bke::from_float(), IMB_buffer_byte_from_float(), IMB_buffer_float_from_float(), IMB_colormanagement_scene_linear_to_srgb_v3(), imb_savetiff(), linearrgb_to_srgb_predivide_v4(), linearrgb_to_srgb_uchar3(), linearrgb_to_srgb_v4(), paint_2d_gradient_fill(), paint_get_tex_pixel_col(), paint_sample_color(), TEST(), ui_but_paste_color(), ui_draw_but_CURVE(), and blender::io::obj::OBJWriter::write_vertex_coords().
Definition at line 83 of file math_color_inline.c.
References linearrgb_to_srgb_v3_v3().
Referenced by blender::BLI_color_convert_to_theme4f(), create_mono_icon_with_border(), IMB_buffer_byte_from_byte(), IMB_buffer_float_from_byte(), IMB_buffer_float_from_float(), linearrgb_to_srgb_uchar4(), and vertex_to_loop_colors_exec().
void minmax_rgb | ( | short | c[3] | ) |
Definition at line 421 of file math_color.c.
References Freestyle::c.
Definition at line 362 of file math_color_inline.c.
References color, result, and unit_float_to_uchar_clamp().
Referenced by color_balance_byte_byte(), curves_apply_threaded(), do_alphaover_effect_byte(), do_alphaunder_effect_byte(), do_gammacross_effect_byte(), do_projectpaint_soften(), do_wipe_effect_byte(), paint_2d_ibuf_rgb_set(), project_paint_PickColor(), tonemapmodifier_apply_threaded_photoreceptor(), tonemapmodifier_apply_threaded_simple(), and whiteBalance_apply_threaded().
Definition at line 332 of file math_color_inline.c.
References color, and premul_to_straight_v4_v4().
Referenced by blender::compositor::BrightnessOperation::execute_pixel_sampled(), IMB_buffer_float_unpremultiply(), and project_paint_uvpixel_init().
Definition at line 315 of file math_color_inline.c.
Referenced by copy_original_alpha_channel(), ibuftoimage(), IMB_buffer_byte_from_float(), IMB_buffer_byte_from_float_mask(), IMB_colormanagement_imbuf_to_float_texture(), imb_savepng(), partial_buffer_update_rect(), premul_to_straight_v4(), blender::ColorSceneLinear4f< Alpha >::unpremultiply_alpha(), and blender::compositor::BrightnessOperation::update_memory_buffer_partial().
Applies an HUE offset to a byte RGB color.
Definition at line 503 of file math_color.c.
References usdtokens::rgb(), rgb_float_set_hue_float_offset(), rgb_float_to_uchar(), and rgb_uchar_to_float().
Referenced by color3ubv_from_seq().
Applies an HUE offset to a float RGB color.
Definition at line 486 of file math_color.c.
References hsv_to_rgb(), usdtokens::rgb(), and rgb_to_hsv().
Referenced by rgb_byte_set_hue_float_offset().
Definition at line 391 of file math_color.c.
References unit_float_to_uchar_clamp_v3.
Referenced by apply_tangmat_callback(), BKE_icon_geom_invert_lightness(), brush_painter_imbuf_new(), color_mul_hsl_v3(), do_projectpaint_thread(), draw_channel_strips(), draw_color_strip_band(), draw_seq_background(), drawmeta_contents(), hue_correct_apply_threaded(), IMB_buffer_byte_from_float(), IMB_buffer_byte_from_float_mask(), IMB_saturation(), partial_buffer_update_rect(), project_paint_uvpixel_init(), rgb_byte_set_hue_float_offset(), ui_block_colorpicker(), ui_tooltip_region_draw_cb(), and ui_update_color_picker_buts_rgb().
Definition at line 348 of file math_color.c.
References usdtokens::b(), floorf, usdtokens::g(), max_ff(), and r.
Referenced by create_mono_icon_with_border(), gpencil_extract_palette_from_vertex(), palette_extract_img_exec(), studiolight_irradiance_preview(), studiolight_matcap_preview(), and studiolight_radiance_preview().
ITU-R BT.709 primaries https://en.wikipedia.org/wiki/Relative_luminance
Real values are: Y = 0.2126390059(R) + 0.7151686788(G) + 0.0721923154(B)
according to: "Derivation of Basic Television Color Equations", RP 177-1993
As this sums slightly above 1.0, the document recommends to use: 0.2126(R) + 0.7152(G) + 0.0722(B)
, as used here.
The high precision values are used to calculate the rounded byte weights so they add up to 255: 54(R) + 182(G) + 19(B)
Definition at line 256 of file math_color_inline.c.
References usdtokens::rgb().
Referenced by button2d_draw_intern(), blender::bke::color_to_bool(), blender::bke::color_to_float(), blender::bke::color_to_int(), file_draw_preview(), blender::nodes::node_fn_compare_cc::get_multi_function(), ui_tooltip_region_draw_cb(), and widget_swatch().
MINLINE unsigned char rgb_to_grayscale_byte | ( | const unsigned char | rgb[3] | ) |
Definition at line 261 of file math_color_inline.c.
References usdtokens::rgb().
Referenced by color_ensure_contrast_v3(), icon_draw_size(), widget_active_color(), and widget_state_numslider().
Definition at line 237 of file math_color.c.
References usdtokens::b(), usdtokens::g(), l, max_fff(), min_ff(), min_fff(), and r.
Referenced by blender::nodes::SeparateHSLAFunction::call(), rgb_to_hsl_compat(), rgb_to_hsl_v(), and svm_separate_color().
Definition at line 266 of file math_color.c.
References usdtokens::b(), usdtokens::g(), r, and rgb_to_hsl().
Referenced by rgb_to_hsl_compat_v().
Definition at line 287 of file math_color.c.
References usdtokens::rgb(), and rgb_to_hsl_compat().
Referenced by ui_color_picker_rgb_to_hsv_compat(), and ui_rgb_to_color_picker_HSVCUBE_compat_v().
Definition at line 292 of file math_color.c.
References usdtokens::rgb(), and rgb_to_hsl().
Referenced by apply_color_space(), BKE_colorband_evaluate(), BKE_icon_geom_invert_lightness(), color_mul_hsl_v3(), blender::compositor::ConvertRGBToHSLOperation::execute_pixel_sampled(), TEST(), ui_color_picker_rgb_to_hsv(), ui_draw_but_HSV_v(), ui_rgb_to_color_picker_HSVCUBE_v(), and blender::compositor::ConvertRGBToHSLOperation::update_memory_buffer_partial().
Definition at line 208 of file math_color.c.
References usdtokens::b(), fabsf, usdtokens::g(), min_ff(), r, and SWAP.
Referenced by BKE_palette_from_hash(), blend_color_color_byte(), blend_color_color_float(), blend_color_hue_byte(), blend_color_hue_float(), blend_color_luminosity_byte(), blend_color_luminosity_float(), blend_color_saturation_byte(), blend_color_saturation_float(), blender::nodes::SeparateHSVAFunction::call(), Color_channel_hsv_get(), Color_hsv_get(), SeparateHSVNode::constant_fold(), do_hue_sat_fac(), ED_image_draw_info(), blender::compositor::MixColorOperation::execute_pixel_sampled(), blender::compositor::MixHueOperation::execute_pixel_sampled(), blender::compositor::MixSaturationOperation::execute_pixel_sampled(), blender::compositor::MixValueOperation::execute_pixel_sampled(), hue_correct_apply_threaded(), blender::color::mix_color(), blender::color::mix_hue(), blender::color::mix_luminosity(), blender::color::mix_saturation(), palette_sort_exec(), ramp_blend(), rgb_float_set_hue_float_offset(), rgb_to_hsv_compat(), rgb_to_hsv_v(), svm_mix_color(), svm_mix_hue(), svm_mix_sat(), svm_mix_val(), svm_node_hsv(), svm_node_separate_hsv(), svm_separate_color(), blender::compositor::MixColorOperation::update_memory_buffer_row(), blender::compositor::MixHueOperation::update_memory_buffer_row(), blender::compositor::MixSaturationOperation::update_memory_buffer_row(), and blender::compositor::MixValueOperation::update_memory_buffer_row().
Definition at line 297 of file math_color.c.
References usdtokens::b(), e, usdtokens::g(), r, and rgb_to_hsv().
Referenced by rgb_to_hsv_compat_v().
Definition at line 318 of file math_color.c.
References usdtokens::rgb(), and rgb_to_hsv_compat().
Referenced by BKE_gpencil_merge_materials_table_get(), gpencil_select_vertex_color_exec(), gpencil_selected_hue_table(), ui_color_picker_rgb_to_hsv_compat(), ui_do_but_COLOR(), ui_draw_but_HSVCUBE(), and ui_rgb_to_color_picker_HSVCUBE_compat_v().
Definition at line 232 of file math_color.c.
References usdtokens::rgb(), and rgb_to_hsv().
Referenced by apply_color_space(), BKE_colorband_evaluate(), Color_channel_hsv_set(), color_filter_task_cb(), deformStroke(), blender::compositor::ConvertRGBToHSVOperation::execute_pixel_sampled(), gpencil_check_same_material_color(), gpencil_sbuffer_vertex_color_random(), gpencil_vertexpaint_hsv_exec(), graph_refresh_fcurve_colors(), IMB_saturation(), rgb_tint(), TEST(), ui_color_picker_rgb_to_hsv(), ui_draw_but_CURVE(), ui_draw_but_HSV_v(), ui_rgb_to_color_picker_HSVCUBE_v(), blender::compositor::ConvertRGBToHSVOperation::update_memory_buffer_partial(), vertex_color_hsv_exec(), and weightvg_do_mask().
void rgb_to_ycc | ( | float | r, |
float | g, | ||
float | b, | ||
float * | r_y, | ||
float * | r_cb, | ||
float * | r_cr, | ||
int | colorspace | ||
) |
The RGB inputs are supposed gamma corrected and in the range 0 - 1.0f
Output YCC have a range of 16-235 and 16-240 except with JFIF_0_255 where the range is 0-255.
Definition at line 107 of file math_color.c.
References usdtokens::b(), BLI_assert_msg, BLI_YCC_ITU_BT601, BLI_YCC_ITU_BT709, BLI_YCC_JFIF_0_255, usdtokens::g(), r, and y.
Referenced by blender::compositor::ConvertRGBToYCCOperation::execute_pixel_sampled(), scopes_update_cb(), TEST(), and blender::compositor::ConvertRGBToYCCOperation::update_memory_buffer_partial().
void rgb_to_yuv | ( | float | r, |
float | g, | ||
float | b, | ||
float * | r_y, | ||
float * | r_u, | ||
float * | r_v, | ||
int | colorspace | ||
) |
Definition at line 59 of file math_color.c.
References usdtokens::b(), BLI_assert, BLI_YUV_ITU_BT601, BLI_YUV_ITU_BT709, usdtokens::g(), r, v, and y.
Referenced by blender::compositor::CalculateMeanOperation::calculate_mean(), ED_image_draw_info(), blender::compositor::ConvertRGBToYUVOperation::execute_pixel_sampled(), blender::compositor::CalculateStandardDeviationOperation::initialize_tile_data(), save_sample_line(), blender::compositor::CalculateMeanOperation::set_setting(), TEST(), blender::compositor::ConvertRGBToYUVOperation::update_memory_buffer_partial(), and vectorscope_draw_target().
Definition at line 376 of file math_color.c.
References float().
Referenced by acf_generic_channel_color(), acf_group_color(), BKE_icon_geom_invert_lightness(), color_mul_hsl_v3(), curves_apply_threaded(), display_buffer_apply_get_linear_buffer(), ED_space_clip_color_sample(), ED_space_image_color_sample(), ED_space_node_color_sample(), gl_shaded_color_get_fl(), hue_correct_apply_threaded(), IMB_colormanagement_get_luminance_byte(), IMB_saturation(), paint_and_tex_color_alpha(), paint_sample_color(), pointdensity_cache_vertex_color(), rgb_byte_set_hue_float_offset(), set_pchan_color(), tonemapmodifier_apply_threaded_photoreceptor(), tonemapmodifier_apply_threaded_simple(), ui_draw_but_CURVE(), ui_draw_but_CURVEPROFILE(), ui_tooltip_region_draw_cb(), and whiteBalance_apply_threaded().
Definition at line 218 of file math_color_inline.c.
References Freestyle::a, usdtokens::b(), col, usdtokens::g(), and r.
Referenced by default_paint_slot_color_get(), blender::ed::space_node::frame_node_draw(), blender::ed::space_node::node_draw_basis(), and blender::ed::space_node::node_draw_hidden().
Definition at line 396 of file math_color.c.
References unit_float_to_uchar_clamp_v4.
Referenced by BKE_paint_face_set_overlay_color_get(), BLF_color4fv(), blf_draw_buffer__start(), BLF_shadow(), blender::BLI_color_convert_to_theme4b(), brush_painter_imbuf_update(), dynamic_paint_apply_surface_vpaint_cb(), blender::compositor::PreviewOperation::execute_region(), blender::bke::from_float(), image_buf_fill_color_slice(), IMB_buffer_byte_from_byte(), IMB_buffer_byte_from_float(), IMB_buffer_byte_from_float_mask(), IMB_colormanagement_processor_apply_byte(), mloopcol_from_float(), paint_2d_gradient_fill(), partial_buffer_update_rect(), snap_gizmo_setup(), UI_but_node_link_set(), ui_draw_widget_back_color(), uiTemplateNodeSocket(), blender::compositor::PreviewOperation::update_memory_buffer_partial(), widget_swatch(), and blender::ed::sculpt_paint::paint::image::ImageBufferByte4::write_pixel().
MINLINE void rgba_uchar_args_set | ( | unsigned char | col[4], |
unsigned char | r, | ||
unsigned char | g, | ||
unsigned char | b, | ||
unsigned char | a | ||
) |
Definition at line 209 of file math_color_inline.c.
References Freestyle::a, usdtokens::b(), col, usdtokens::g(), and r.
Referenced by action_group_colors_sync().
MINLINE void rgba_uchar_args_test_set | ( | unsigned char | col[4], |
unsigned char | r, | ||
unsigned char | g, | ||
unsigned char | b, | ||
unsigned char | a | ||
) |
Definition at line 227 of file math_color_inline.c.
References Freestyle::a, usdtokens::b(), col, usdtokens::g(), and r.
Definition at line 383 of file math_color.c.
References float().
Referenced by accessor_get_ibuf(), blender::BLI_color_convert_to_theme4f(), display_buffer_apply_get_linear_buffer(), draw_columnheader_columns(), dynamic_paint_set_init_color_vcol_to_imseq_cb(), dynamicPaint_setInitialColor(), eyedropper_draw_cursor_text_ex(), icon_draw_size(), image_sample_apply(), image_sample_pixel_color_ubyte(), IMB_buffer_byte_from_byte(), IMB_buffer_float_from_byte(), IMB_colormanagement_imbuf_to_float_texture(), IMB_colormanagement_processor_apply_byte(), IMB_sampleImageAtLocation(), knifetool_draw(), mask_draw_curve_type(), mloopcol_to_float(), paint_2d_bucket_fill(), paint_2d_fill_add_pixel_byte(), partial_buffer_update_rect(), project_paint_uvpixel_init(), blender::ed::sculpt_paint::paint::image::ImageBufferByte4::read_pixel(), blender::compositor::sample_image_at_location(), textview_draw_string(), blender::bke::to_float(), ui_draw_but_IMAGE(), widget_draw_node_link_socket(), widget_draw_submenu_tria(), wm_drop_operator_draw(), and wm_drop_redalert_draw().
Definition at line 403 of file math_color.c.
References Freestyle::c, and powf.
Referenced by BLI_init_srgb_conversion(), blender::compositor::KeyingScreenOperation::build_voronoi_triangulation(), blender::compositor::colorbalance_lgg(), image_buf_fill_checker_slice(), imb_save_openexr_half(), srgb_to_linearrgb_v3_v3(), and TEST().
Definition at line 110 of file math_color_inline.c.
References srgb_to_linearrgb_v3_v3().
Referenced by IMB_buffer_byte_from_byte(), IMB_buffer_byte_from_float(), IMB_buffer_float_from_float(), and srgb_to_linearrgb_uchar4_predivide().
Definition at line 184 of file math_color_inline.c.
References BLI_color_from_srgb_table.
Referenced by blender::BLI_color_convert_to_scene_linear(), create_mono_icon_with_border(), blender::ColorSceneLinearByteEncoded4b< Alpha >::decode(), blender::io::obj::geom_add_mrgb_colors(), IMB_buffer_float_from_byte(), project_paint_uvpixel_init(), and srgb_to_linearrgb_uchar4_predivide().
Definition at line 192 of file math_color_inline.c.
References srgb_to_linearrgb_predivide_v4(), and srgb_to_linearrgb_uchar4().
Referenced by IMB_buffer_float_from_byte().
Definition at line 62 of file math_color_inline.c.
References srgb_to_linearrgb().
Referenced by FallbackTransform::applyRGB(), blo_do_versions_250(), blo_do_versions_280(), camera_view3d_reconstruction(), drop_color_invoke(), blender::io::obj::geom_add_vertex(), gpencil_vertexpaint_brush_init(), image_buf_fill_checker_slice(), IMB_buffer_byte_from_float(), IMB_buffer_float_from_float(), IMB_colormanagement_imbuf_to_float_texture(), IMB_colormanagement_srgb_to_scene_linear_v3(), blender::ed::sculpt_paint::paint::image::PaintingKernel< ImageBuffer >::init_brush_color(), blender::ed::sculpt_paint::image::ops::paint::ImagePaintMode::paint_bucket_fill(), paint_proj_stroke_ps(), srgb_to_linearrgb_predivide_v4(), srgb_to_linearrgb_v4(), TEST(), blender::bke::to_float(), and ui_but_copy_color().
Definition at line 77 of file math_color_inline.c.
References srgb_to_linearrgb_v3_v3().
Referenced by add_ibuf_size(), blf_draw_buffer__start(), blender::BLI_color_convert_to_scene_linear(), blo_do_versions_280(), buf_rectfill_area(), create_mono_icon_with_border(), DRW_globals_update(), ED_gpencil_fill_vertex_color_set(), ED_gpencil_point_vertex_color_set(), ED_gpencil_sbuffer_vertex_color_set(), gpencil_lineart_material(), gpencil_monkey_color(), gpencil_stroke_material(), gpencil_vertexpaint_set_exec(), IMB_buffer_byte_from_byte(), IMB_buffer_byte_from_float(), IMB_buffer_float_from_float(), loop_to_vertex_colors_exec(), OVERLAY_edit_uv_cache_init(), OVERLAY_fade_cache_init(), OVERLAY_grid_cache_init(), OVERLAY_mode_transfer_cache_populate(), SEQ_render_pixel_from_sequencer_space_v4(), and set_pchan_color().
Definition at line 346 of file math_color_inline.c.
References color, and straight_to_premul_v4_v4().
Referenced by blender::nodes::node_geo_image_texture_cc::ImageFieldsFunction::call(), do_display_buffer_apply_thread(), blender::compositor::BrightnessOperation::execute_pixel_sampled(), IMB_buffer_float_premultiply(), paint_2d_bucket_fill(), paint_2d_fill_add_pixel_byte(), paint_sample_color(), partial_buffer_update_rect(), and blender::compositor::BrightnessOperation::update_memory_buffer_partial().
Definition at line 337 of file math_color_inline.c.
Referenced by copy_original_alpha_channel(), blender::ColorSceneLinear4f< Alpha >::premultiply_alpha(), project_paint_uvpixel_init(), and straight_to_premul_v4().
Definition at line 351 of file math_color_inline.c.
Referenced by color_balance_byte_byte(), curves_apply_threaded(), do_alphaover_effect_byte(), do_alphaunder_effect_byte(), do_gammacross_effect_byte(), do_projectpaint_soften(), do_wipe_effect_byte(), paint_2d_ibuf_rgb_get(), project_paint_PickColor(), tonemapmodifier_apply(), tonemapmodifier_apply_threaded_photoreceptor(), tonemapmodifier_apply_threaded_simple(), and whiteBalance_apply_threaded().
Definition at line 161 of file math_color_inline.c.
References BLI_color_to_srgb_table.
Referenced by linearrgb_to_srgb_ushort4().
void ycc_to_rgb | ( | float | y, |
float | cb, | ||
float | cr, | ||
float * | r_r, | ||
float * | r_g, | ||
float * | r_b, | ||
int | colorspace | ||
) |
Definition at line 142 of file math_color.c.
References usdtokens::b(), BLI_assert_unreachable, BLI_YCC_ITU_BT601, BLI_YCC_ITU_BT709, BLI_YCC_JFIF_0_255, usdtokens::g(), r, and y.
Referenced by blender::compositor::ConvertYCCToRGBOperation::execute_pixel_sampled(), imb_load_openexr(), TEST(), and blender::compositor::ConvertYCCToRGBOperation::update_memory_buffer_partial().
void yuv_to_rgb | ( | float | y, |
float | u, | ||
float | v, | ||
float * | r_r, | ||
float * | r_g, | ||
float * | r_b, | ||
int | colorspace | ||
) |
Definition at line 83 of file math_color.c.
References usdtokens::b(), BLI_assert, BLI_YUV_ITU_BT601, BLI_YUV_ITU_BT709, usdtokens::g(), r, v, and y.
Referenced by blender::compositor::ConvertYUVToRGBOperation::execute_pixel_sampled(), TEST(), and blender::compositor::ConvertYUVToRGBOperation::update_memory_buffer_partial().