|
Blender V5.0
|
Go to the source code of this file.
Macros | |
| #define | __MATH_COLOR_INLINE_C__ |
Variables | |
| float | BLI_color_from_srgb_table [256] |
| unsigned short | BLI_color_to_srgb_table [0x10000] |
| #define __MATH_COLOR_INLINE_C__ |
Definition at line 15 of file math_color_inline.cc.
| MINLINE int compare_rgb_uchar | ( | const unsigned char | col_a[3], |
| const unsigned char | col_b[3], | ||
| const int | limit ) |
Definition at line 240 of file math_color_inline.cc.
Definition at line 202 of file math_color_inline.cc.
References MINLINE.
Returns triangle noise in [-1..+1) range, given integer pixel coordinates. Triangle distribution which gives a more final uniform noise, see "Banding in Games: A Noisy Rant" by Mikkel Gjoel (slide 27) https://loopit.dk/banding_in_games.pdf
Definition at line 268 of file math_color_inline.cc.
References fabsf, hash_iqint3_f(), MINLINE, signf(), sqrtf, v, x, and y.
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, | ||
| int | x, | ||
| int | y ) |
Definition at line 278 of file math_color_inline.cc.
References b, dither_random_value(), MINLINE, unit_float_to_uchar_clamp(), x, and y.
Referenced by do_projectpaint_draw(), and do_projectpaint_thread().
Definition at line 260 of file math_color_inline.cc.
References float, MINLINE, x, and y.
Referenced by dither_random_value().
Definition at line 75 of file math_color_inline.cc.
References linearrgb_to_srgb_v3_v3(), and MINLINE.
Referenced by IMB_buffer_byte_from_byte(), IMB_buffer_float_from_byte(), and IMB_buffer_float_from_float().
Definition at line 31 of file math_color_inline.cc.
References linearrgb_to_srgb_v3_v3(), MINLINE, and unit_float_to_uchar_clamp_v3.
Definition at line 39 of file math_color_inline.cc.
References linearrgb_to_srgb_v4(), MINLINE, and unit_float_to_uchar_clamp_v4.
Referenced by blender::ed::object::convert_float_color_to_byte_color(), blender::color::encode(), Freestyle::BlenderStrokeRenderer::GenerateStrokeMesh(), and blender::color::to_theme4b().
Definition at line 115 of file math_color_inline.cc.
References MINLINE, to_srgb_table_lookup(), and unit_float_to_ushort_clamp().
Referenced by IMB_buffer_byte_from_float().
Definition at line 25 of file math_color_inline.cc.
References linearrgb_to_srgb_v3_v3(), and MINLINE.
Referenced by IMB_buffer_byte_from_byte(), IMB_buffer_float_from_byte(), IMB_buffer_float_from_float(), linearrgb_to_srgb_uchar4(), blender::io::ply::load_plydata(), and blender::color::to_theme4f().
Definition at line 337 of file math_color_inline.cc.
References MINLINE, result, and unit_float_to_uchar_clamp().
Referenced by do_projectpaint_soften(), IMB_buffer_byte_from_float(), IMB_buffer_byte_from_float_mask(), paint_2d_ibuf_rgb_set(), project_paint_PickColor(), blender::seq::scene_linear_to_image_chunk_byte(), blender::seq::store_pixel_premul(), blender::imbuf::transform::store_premul_float_sample(), and blender::seq::store_premul_pixel().
Definition at line 307 of file math_color_inline.cc.
References MINLINE, and premul_to_straight_v4_v4().
Referenced by project_paint_uvpixel_init().
Definition at line 290 of file math_color_inline.cc.
References MINLINE.
Referenced by blender::ed::vse::ScopeHistogram::calc_from_ibuf(), copy_original_alpha_channel(), ibuftoimage(), IMB_buffer_byte_from_float(), IMB_buffer_byte_from_float_mask(), IMB_colormanagement_imbuf_to_float_texture(), IMB_sampleImageAtLocation(), partial_buffer_update_rect(), blender::ed::vse::pixels_to_display_space(), premul_to_straight_v4(), and blender::color::unpremultiply_alpha().
Definition at line 163 of file math_color_inline.cc.
References MINLINE, and unit_float_to_uchar_clamp_v3.
Referenced by acf_gpl_channel_color(), BKE_icon_geom_invert_lightness(), brush_painter_imbuf_new(), color_mul_hsl_v3(), do_projectpaint_thread(), blender::ed::vse::draw_strips_background(), blender::ed::vse::draw_vectorscope_graticule(), blender::ed::vse::drawmeta_contents(), IMB_buffer_byte_from_float(), IMB_buffer_byte_from_float_mask(), IMB_saturation(), blender::ed::animation::greasepencil::layer_channel_color(), paint_2d_bucket_fill(), partial_buffer_update_rect(), rgb_byte_set_hue_float_offset(), and ui_tooltip_region_draw_cb().
Definition at line 148 of file math_color_inline.cc.
References float, and MINLINE.
Referenced by blender::seq::MaskSamplerDirectByte::apply_mask(), blender::seq::MaskSamplerTransformedByte::apply_mask(), BKE_icon_geom_invert_lightness(), color_mul_hsl_v3(), display_buffer_apply_get_linear_buffer(), ED_space_clip_color_sample(), ED_space_image_color_sample(), ED_space_node_color_sample(), IMB_colormanagement_get_luminance_byte(), IMB_sampleImageAtLocation(), IMB_saturation(), rgb_byte_set_hue_float_offset(), and ui_tooltip_region_draw_cb().
| MINLINE void rgba_float_args_set | ( | float | col[4], |
| const float | r, | ||
| const float | g, | ||
| const float | b, | ||
| const float | a ) |
Definition at line 182 of file math_color_inline.cc.
References b, col, and MINLINE.
Referenced by default_paint_slot_color_get(), blender::ed::space_node::frame_node_draw_background(), blender::ed::space_node::node_draw_basis(), and blender::ed::space_node::node_header_color_get().
Definition at line 168 of file math_color_inline.cc.
References MINLINE, and unit_float_to_uchar_clamp_v4.
Referenced by BKE_image_buf_fill_color(), BKE_paint_face_set_overlay_color_get(), BLF_color4fv(), blf_draw_buffer__start(), blf_draw_svg_icon(), BLF_shadow(), brush_painter_imbuf_update(), blender::ed::vse::ScopeHistogram::calc_from_ibuf(), dynamic_paint_apply_surface_vpaint_cb(), file_draw_special_image(), blender::ed::sculpt_paint::color::from_float(), IMB_buffer_byte_from_byte(), IMB_buffer_byte_from_float(), IMB_buffer_byte_from_float_mask(), IMB_colormanagement_processor_apply_byte(), blender::io::fbx::import_colors(), mloopcol_from_float(), paint_2d_gradient_fill(), partial_buffer_update_rect(), project_paint_uvpixel_init(), blender::seq::store_pixel_raw(), blender::color::to_byte(), ui_block_colorpicker(), UI_but_node_link_set(), ui_draw_widget_back_color(), ui_tooltip_color_string(), ui_update_color_picker_buts_rgba(), uiTemplateNodeSocket(), blender::bke::image::ImageBufferAccessor< T, Channels >::write_pixel(), and blender::ed::sculpt_paint::paint::image::ImageBufferByte4::write_pixel().
| MINLINE void rgba_uchar_args_set | ( | uchar | col[4], |
| const uchar | r, | ||
| const uchar | g, | ||
| const uchar | b, | ||
| const uchar | a ) |
Definition at line 173 of file math_color_inline.cc.
References b, col, and MINLINE.
Referenced by action_group_colors_sync().
| MINLINE void rgba_uchar_args_test_set | ( | uchar | col[4], |
| const uchar | r, | ||
| const uchar | g, | ||
| const uchar | b, | ||
| const uchar | a ) |
Definition at line 191 of file math_color_inline.cc.
Definition at line 155 of file math_color_inline.cc.
References float, and MINLINE.
Referenced by accessor_get_ibuf(), display_buffer_apply_get_linear_buffer(), draw_columnheader_columns(), draw_disk_shaded(), dynamic_paint_set_init_color_vcol_to_imseq_cb(), dynamicPaint_setInitialColor(), eyedropper_draw_cursor_text_region(), file_draw_tooltip_custom_func(), 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(), knifetool_draw(), blender::seq::load_pixel_raw(), mask_draw_curve_type(), mloopcol_to_float(), paint_2d_bucket_fill(), paint_2d_fill_add_pixel_byte(), paint_sample_color(), partial_buffer_update_rect(), blender::ed::vse::pixels_to_display_space(), project_paint_uvpixel_init(), blender::bke::image::ImageBufferAccessor< T, Channels >::read_pixel(), blender::ed::sculpt_paint::paint::image::ImageBufferByte4::read_pixel(), screen_draw_area_drag_tip(), textview_draw_string(), blender::color::to_float(), blender::ed::sculpt_paint::color::to_float(), ui_draw_but_CURVE(), ui_draw_but_CURVEPROFILE(), ui_draw_but_IMAGE(), ui_tooltip_from_vfont(), blender::draw::overlay::Resources::update_theme_settings(), use_bone_color(), widget_draw_node_link_socket(), widget_draw_submenu_tria(), widget_nodesocket(), wm_drop_operator_draw(), and wm_drop_redalert_draw().
Compute luminance using Rec.709 primaries, for sRGB and linear Rec.709.
Only use for colors known to be in sRGB space, like user interface and themes. Scene colors should use IMB_colormanagement_get_luminance instead.
Definition at line 218 of file math_color_inline.cc.
References MINLINE.
Referenced by button2d_draw_intern(), ED_view3d_text_colors_get(), file_draw_preview(), file_draw_special_image(), ui_tooltip_region_draw_cb(), and widget_swatch().
Definition at line 229 of file math_color_inline.cc.
References MINLINE.
Referenced by blf_glyph_cache_add_svg(), color_ensure_contrast_v3(), drw_text_cache_draw_ex(), icon_draw_size(), UI_draw_widget_scroll(), widget_active_color(), and widget_state_numslider().
Definition at line 52 of file math_color_inline.cc.
References MINLINE, and 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 123 of file math_color_inline.cc.
References BLI_color_from_srgb_table, and MINLINE.
Referenced by blender::compositor::compute_marker_points(), blender::color::decode(), blender::io::obj::geom_add_mrgb_colors(), IMB_buffer_float_from_byte(), srgb_to_linearrgb_uchar4_predivide(), and blender::color::to_scene_linear().
Definition at line 131 of file math_color_inline.cc.
References i, MINLINE, srgb_to_linearrgb_predivide_v4(), and srgb_to_linearrgb_uchar4().
Referenced by IMB_buffer_float_from_byte().
Definition at line 19 of file math_color_inline.cc.
References MINLINE, and srgb_to_linearrgb_v3_v3().
Referenced by add_ibuf_for_tile(), blender::ed::greasepencil::add_material_from_template(), blender::draw::overlay::Fade::begin_sync(), blender::draw::overlay::Grid::begin_sync(), blender::draw::overlay::MeshUVs::begin_sync(), blender::draw::overlay::ModeTransfer::begin_sync(), blender::draw::overlay::Text::begin_sync(), blo_do_versions_280(), blender::io::ply::convert_ply_to_mesh(), blender::draw::overlay::MeshUVs::end_sync(), IMB_buffer_byte_from_byte(), IMB_buffer_byte_from_float(), IMB_buffer_float_from_float(), blender::ed::object::mesh_to_grease_pencil_add_material(), blender::seq::render_pixel_from_sequencer_space_v4(), blender::color::to_scene_linear(), blender::io::grease_pencil::unpack_nano_color(), blender::draw::overlay::Resources::update_theme_settings(), and use_bone_color().
Definition at line 321 of file math_color_inline.cc.
References MINLINE, and straight_to_premul_v4_v4().
Referenced by blender::nodes::node_geo_image_texture_cc::ImageFieldsFunction::call(), do_display_buffer_apply_thread(), paint_2d_bucket_fill(), paint_2d_fill_add_pixel_byte(), paint_sample_color(), and partial_buffer_update_rect().
Definition at line 312 of file math_color_inline.cc.
References MINLINE.
Referenced by copy_original_alpha_channel(), blender::seq::fill_rect_alpha_under(), blender::color::premultiply_alpha(), project_paint_uvpixel_init(), and straight_to_premul_v4().
Definition at line 326 of file math_color_inline.cc.
References MINLINE, and result.
Referenced by blender::imbuf::transform::add_subsample(), do_projectpaint_soften(), blender::seq::load_pixel_premul(), blender::seq::load_premul_pixel(), paint_2d_ibuf_rgb_get(), blender::seq::pixels_to_scene_linear_byte(), and project_paint_PickColor().
Definition at line 103 of file math_color_inline.cc.
References BLI_color_to_srgb_table, and MINLINE.
Referenced by linearrgb_to_srgb_ushort4().
|
extern |
Definition at line 706 of file math_color.cc.
Referenced by BLI_init_srgb_conversion(), blender::draw::AttributeConverter< ColorGeometry4b >::convert(), blender::draw::particle_mcol_convert(), blender::draw::particle_pack_mcol(), and srgb_to_linearrgb_uchar4().
|
extern |
Definition at line 707 of file math_color.cc.
Referenced by BLI_init_srgb_conversion(), and to_srgb_table_lookup().