|
Blender V5.0
|
#include "BLI_assert.h"#include "BLI_math_constants.h"#include "BLI_math_inline.h"#include "BLI_sys_types.h"#include "intern/math_base_inline.cc"Go to the source code of this file.
Macros | |
| #define | NAN_FLT (*((float *)(&NAN_INT))) |
| #define | BLI_ASSERT_UNIT_EPSILON 0.0002f |
| #define | BLI_ASSERT_UNIT_EPSILON_DB 0.0002 |
| #define | BLI_ASSERT_UNIT_V3(v) |
| #define | BLI_ASSERT_UNIT_V2(v) |
| #define | BLI_ASSERT_UNIT_QUAT(q) |
| #define | BLI_ASSERT_ZERO_M3(m) |
| #define | BLI_ASSERT_ZERO_M4(m) |
| #define | BLI_ASSERT_UNIT_M3(m) |
Variables | |
| static const int | NAN_INT = 0x7FC00000 |
For non float versions of functions (which typically operate on floats), use single suffix abbreviations.
Definition in file BLI_math_base.h.
| #define BLI_ASSERT_UNIT_EPSILON 0.0002f |
Definition at line 315 of file BLI_math_base.h.
Referenced by axis_dominant_v3_to_m3(), axis_dominant_v3_to_m3_negate(), and quat_split_swing_and_twist().
| #define BLI_ASSERT_UNIT_EPSILON_DB 0.0002 |
Definition at line 316 of file BLI_math_base.h.
| #define BLI_ASSERT_UNIT_M3 | ( | m | ) |
Definition at line 357 of file BLI_math_base.h.
Referenced by BKE_object_mat3_to_rot(), BKE_pchan_mat3_to_rot(), ED_armature_ebone_from_mat4(), mat3_normalized_to_eul2(), mat3_normalized_to_eulo2(), mat3_normalized_to_quat_fast(), and rotation_between_vecs_to_mat3().
| #define BLI_ASSERT_UNIT_QUAT | ( | q | ) |
Definition at line 338 of file BLI_math_base.h.
Referenced by angle_normalized_qt(), angle_normalized_qtqt(), angle_signed_normalized_qt(), interp_qt_qtqt(), invert_qt_normalized(), pow_qt_fl_normalized(), quat_normalized_to_expmap(), quat_to_compatible_quat(), and WM_xr_session_state_nav_rotation_set().
| #define BLI_ASSERT_UNIT_V2 | ( | v | ) |
Definition at line 330 of file BLI_math_base.h.
Referenced by angle_normalized_v2v2(), project_v2_v2v2_normalized(), blender::ed::transform::setCustomPointsFromDirection(), shell_v2v2_mid_normalized_to_dist(), shell_v2v2_normalized_to_dist(), and test_edges_isect_2d_ray().
| #define BLI_ASSERT_UNIT_V3 | ( | v | ) |
Definition at line 322 of file BLI_math_base.h.
Referenced by angle_normalized_v3v3(), axis_angle_normalized_to_mat3_ex(), axis_angle_normalized_to_quat(), axis_dominant_v3_to_m3(), axis_dominant_v3_to_m3_negate(), BLI_bvhtree_ray_cast_all_ex(), BLI_bvhtree_ray_cast_ex(), BM_mesh_edgeloops_calc_order(), closest_to_plane3_normalized_v3(), closest_to_plane_normalized_v3(), blender::ed::transform::createSpaceNormalTangent(), cubic_tangent_factor_circle_v3(), blender::ed::sculpt_paint::brushes::do_clay_brush(), ED_armature_ebone_roll_to_vector(), blender::bke::mesh::face_normal_calc(), interp_v3_v3v3_slerp(), legacy_vec_roll_to_mat3_normalized(), mid_v3_v3v3_angle_weighted(), nearly_parallel_normalized(), project_plane_normalized_v3_v3v3(), project_v3_v3v3_normalized(), reflect_v3_v3v3(), rotate_normalized_v3_v3v3fl(), rotation_between_vecs_to_mat3(), shell_v3v3_mid_normalized_to_dist(), shell_v3v3_normalized_to_dist(), blender::ed::transform::snap_object_project_view3d_ex(), and vec_roll_to_mat3_normalized().
| #define BLI_ASSERT_ZERO_M3 | ( | m | ) |
Definition at line 346 of file BLI_math_base.h.
| #define BLI_ASSERT_ZERO_M4 | ( | m | ) |
Definition at line 352 of file BLI_math_base.h.
Referenced by ED_view3d_check_mats_rv3d().
Definition at line 57 of file BLI_math_base.h.
Referenced by bezier_handle_calc_smooth_fcurve(), BKE_sound_sync_scene(), blender::draw::Texture::debug_clear(), ObjectBounds::sync(), and ObjectBounds::sync().
Ceiling to the nearest power of 10, e.g.:
| f | Value to ceiling, must be over 0.0. |
Definition at line 74 of file math_base.cc.
References BLI_assert, floorf, and powf.
Referenced by blender::tests::TEST(), and v3d_cursor_plane_draw().
Returns a if it is a multiple of b or the next multiple or b after a.
Definition at line 244 of file math_base_inline.cc.
References b, divide_ceil_u(), and MINLINE.
Referenced by blender::gpu::GLImmediate::begin(), blender::gpu::MTLIndexBuf::bind_as_ssbo(), blender::gpu::MTLVertBuf::bind_as_ssbo(), blender::draw::View::compute_visibility(), blender::draw::select::SelectMap::end_sync(), blender::eevee::LightModule::end_sync(), blender::eevee::VelocityModule::end_sync(), blender::gpu::VertBuf::from_size_with_format(), blender::gpu::VertBuf::from_span(), blender::gpu::VertBuf::from_varray(), blender::eevee::IrradianceBake::raylists_build(), blender::eevee::RayTraceModule::render(), blender::eevee::SubsurfaceModule::render(), blender::draw::gpencil::render_frame(), and blender::draw::test_eevee_surfel_list().
Definition at line 249 of file math_base_inline.cc.
References b, divide_ceil_ul(), and MINLINE.
Referenced by blender::gpu::MTLBufferPool::allocate_aligned(), blender::gpu::MTLCircularBuffer::allocate_range_aligned(), blender::gpu::GLIndexBuf::bind(), blender::gpu::GLVertBuf::bind(), blender::gpu::VKBuffer::create(), GPU_pixel_buffer_create(), blender::gpu::MTLTexture::init_internal(), blender::gpu::MTLBuffer::MTLBuffer(), and blender::gpu::VKStreamingBuffer::update().
Definition at line 445 of file math_base_inline.cc.
References max, min, and MINLINE.
Referenced by blender::apply_color_factor(), apply_sculpt_data_constraints(), BKE_curvemapping_integrate_clamped(), BKE_curveprofile_update(), BKE_where_on_path(), BM_mesh_intersect(), bpy_bm_utils_edge_split(), bpy_bm_utils_vert_collapse_faces(), bpy_bmdeformvert_ass_subscript(), bpy_bmvert_copy_from_vert_interp(), blender::nodes::node_shader_tex_brick_cc::BrickFunction::brick(), butterworth_calculate_blend_value(), blender::nodes::node_shader_mix_rgb_cc::MixRGBFunction::call(), blender::draw::gpencil::cdf_invert(), blender::eevee::Sampling::cdf_invert(), blender::ed::sculpt_paint::expand::colors_update_task(), blender::nodes::node_composite_lensdist_cc::LensDistortionOperation::compute_chromatic_distortion(), blender::bke::pbvh::pixels::Rows::determine_mix_factor(), do_clump_level(), blender::bke::pbvh::pixels::do_encode_pixels(), do_rough_curve(), draw_main_line(), blender::ed::vse::draw_seq_waveform_overlay(), drw_shgroup_bone_envelope(), blender::ed::sculpt_paint::dyntopo::dyntopo_detail_size_sample_from_surface(), blender::ed::sculpt_paint::dyntopo::dyntopo_detail_size_update_from_mouse_delta(), ED_slider_factor_set(), blender::workbench::filter_blackman_harris(), float_to_half_safe(), blender::nodes::node_composite_lensdist_cc::LensDistortionOperation::get_dispersion(), blender::nodes::node_composite_lensdist_cc::LensDistortionOperation::get_distortion(), blender::ed::vse::get_seq_strip_thumbnails(), blender::seq::give_frame_index(), gizmo_spot_blend_prop_matrix_set(), IMB_gpu_clamp_half_float(), blender::eevee::Film::init(), blender::workbench::ShadowPass::init(), blender::workbench::SceneResources::load_jitter_tx(), loopcut_modal(), MOD_solidify_extrude_modifyMesh(), MOD_solidify_nonmanifold_modifyMesh(), blender::geometry::p_abf_adjust_alpha(), blender::ed::sculpt_paint::paint_cursor_draw_main_inactive_cursor(), blender::ed::sculpt_paint::paint_draw_3D_view_inactive_brush_cursor(), radial_control_modal(), blender::draw::gpencil::remap_depth(), blender::draw::gpencil::render_frame(), rotlimit_evaluate(), scrollbar_keep_scrolling(), scrollbar_set_thumbpos(), scrollbar_start_scrolling(), blender::nodes::node_shader_clamp_cc::sh_node_clamp_build_multi_function(), shader_node_disconnect_inactive_mix_branch(), blender::ed::object::shape_key_clear_exec(), slider_update_factor(), smootherstep(), GPUNodeStack::socket_is_one(), GPUNodeStack::socket_not_one(), GPUNodeStack::socket_not_zero(), blender::eevee::DepthOfField::sync(), blender::workbench::AntiAliasingPass::sync(), ui_colorpicker_wheel_cb(), ui_do_but_COLOR(), ui_do_but_HSVCIRCLE(), ui_hsvcircle_pos_from_vals(), UI_view2d_dot_grid_draw(), blender::ed::sculpt_paint::expand::update_mask_bmesh(), blender::ed::sculpt_paint::expand::update_mask_grids(), blender::geometry::uv_parametrizer_average(), vfont_to_curve(), view_zoom_to_window_xy_camera(), view_zoomdrag_invoke(), view_zoomdrag_modal(), blender::ed::object::voxel_size_edit_draw(), blender::ed::object::voxel_size_edit_invoke(), blender::ed::object::voxel_size_edit_modal(), and WM_xr_session_state_vignette_update().
| MINLINE int clamp_i | ( | int | value, |
| int | min, | ||
| int | max ) |
Definition at line 440 of file math_base_inline.cc.
References max, max_ii(), min, min_ii(), and MINLINE.
Referenced by blender::ed::sculpt_paint::aa_samples_per_texel_axis(), add_v3_uchar_clamped(), BKE_object_material_get_eval(), BKE_object_material_get_p(), BKE_tracking_marker_get(), BKE_volume_grid_active_get_for_read(), blender::gpu::blit_aspect(), calculate_fpt_bounds(), blender::ed::asset::clamp_point_to_window(), blender::gpu::convert(), blender::seq::do_adjustment_impl(), blender::seq::draw_text_outline(), blender::eevee::VolumeModule::end_sync(), get_bounding_bezt_index_range(), get_bounding_bezt_indices(), blender::eevee::ShadowModule::init(), blender::eevee::VolumeModule::init(), blender::draw::pack_rotation_aspect_hardness_miter(), playanim_change_frame(), blender::ed::sculpt_paint::face_set::randomize_colors_exec(), RE_bake_pixels_populate(), blender::gpu::VKFrameBuffer::render_area_update(), scrollbar_get_thumbH(), smooth_fcurve_segment(), twist_get_axis(), ui_do_drag(), UI_panel_category_draw_all(), and volume_sequence_frame().
Almost-equal for IEEE floats, using absolute difference method.
| max_diff | the maximum absolute difference. |
Definition at line 456 of file math_base_inline.cc.
References b, fabsf, and MINLINE.
Referenced by aggregate_item_normal(), BKE_keyblock_add_ctime(), BM_lnorspace_err(), cloth_from_object(), compare_v2v2(), compare_v3v3(), compare_v4v4(), curvemap_make_table(), edbm_average_normals_exec(), blender::animrig::Action::has_single_frame(), nearly_parallel_normalized(), next_edgehalf_bev(), tri_corner_test(), blender::nodes::node_geo_transform_geometry_cc::use_translate(), and wm_gesture_straightline_do_angle_snap().
Almost-equal for IEEE floats, using their integer representation (mixing ULP and absolute difference methods).
| max_diff | is the maximum absolute difference (allows to take care of the near-zero area, where relative difference methods cannot really work). |
| max_ulps | is the 'maximum number of floats + 1' allowed between a and b to consider them equal. |
Definition at line 492 of file math_base_inline.cc.
References b, BLI_assert, fabsf, MINLINE, and ulp_diff_ff().
Referenced by blender::ed::object::apply_objects_internal(), BKE_bezier_array_merge(), compare_v2_classify(), fcurve_is_changed(), blender::geometry::is_larger(), mesh_calc_eigen_matrix(), blender::animrig::new_key_needed(), blender::tests::TEST(), blender::tests::TEST(), and vfont_to_curve().
Definition at line 503 of file math_base_inline.cc.
References fabsf, and MINLINE.
Referenced by blender::bke::compare_geometry::values_different().
Definition at line 313 of file math_base_inline.cc.
References MINLINE.
Referenced by ui_numedit_begin(), ui_numedit_but_SLI(), and widget_numslider().
| MINLINE int cube_i | ( | int | a | ) |
Definition at line 308 of file math_base_inline.cc.
References MINLINE.
Referenced by BKE_lightprobe_grid_cache_frame_sample_count().
Decrement the given float to the next representable floating point value in the negative direction.
Infinities and NaNs are left untouched. Subnormal numbers are handled correctly, as is zero (i.e. 0 and -0 are considered a single value, and progressing past zero continues on to the negative numbers).
Definition at line 540 of file math_base_inline.cc.
Integer division that returns the ceiling, instead of flooring like normal C division.
Definition at line 234 of file math_base_inline.cc.
Referenced by buffer_size_from_list(), ceil_to_multiple_u(), blender::draw::View::compute_visibility(), ED_fileselect_init_layout(), blender::draw::Manager::end_sync(), blender::eevee::LightModule::end_sync(), blender::eevee::ShadowModule::end_sync(), blender::eevee::VolumeModule::end_sync(), blender::draw::command::DrawMultiBuf::generate_commands(), blender::eevee::VelocityModule::geometry_steps_fill(), blender::draw::get_dispatch_size(), blender::gpu::tests::gpu_shader_lib_test(), blender::eevee::Film::init(), blender::eevee::Sampling::init(), blender::eevee::ShadowModule::init(), blender::eevee::VolumeProbeModule::init(), blender::nodes::node_shader_ambient_occlusion_cc::node_shader_gpu_ambient_occlusion(), blender::eevee::IrradianceBake::raylists_build(), blender::draw::Manager::submit_debug(), blender::eevee::IrradianceBake::surfels_create(), blender::gpu::MTLTexture::update_sub(), blender::gpu::VKTexture::update_sub(), and blender::draw::View::visibility_word_per_draw().
Definition at line 239 of file math_base_inline.cc.
Referenced by ceil_to_multiple_ul(), blender::array_utils::compute_sum(), blender::seq::evict_caches_if_full(), and blender::eevee::ShadowModule::init().
| MINLINE int divide_round_i | ( | int | a, |
| int | b ) |
Integer division that rounds 0.5 up, particularly useful for color blending with integers, to avoid gradual darkening when rounding down.
Definition at line 218 of file math_base_inline.cc.
Referenced by blend_color_add_alpha_byte(), blend_color_add_byte(), blend_color_darken_byte(), blend_color_erase_alpha_byte(), blend_color_interpolate_byte(), blend_color_lighten_byte(), blend_color_mix_byte(), blend_color_mul_byte(), blend_color_sub_byte(), blender::color::ByteTraits::divide_round(), and IMB_rectblend().
| double double_round | ( | double | x, |
| int | ndigits ) |
| ndigits | must be between 0 and 21. |
Definition at line 28 of file math_base.cc.
References fabs(), pow, round, x, y, and z().
Referenced by Color_to_tuple_ex(), Euler_to_tuple_ex(), Quaternion_to_tuple_ext(), and Vector_to_tuple_ex().
Floor to the nearest power of 10, e.g.:
| f | Value to floor, must be over 0.0. |
Definition at line 65 of file math_base.cc.
References BLI_assert, ceilf, and powf.
Referenced by blender::tests::TEST().
Floored modulo that is useful for wrapping numbers over n, including when f is negative.
This is the same as Python % or GLSL mod(): floored_fmod(-0.2, 1.0) = 0.8.
Definition at line 259 of file math_base_inline.cc.
References floorf, and MINLINE.
Referenced by blender::math::bilinear_fl_impl(), blender::math::interpolate_bilinear_wrap_byte(), blender::math::interpolate_nearest_wrap_byte(), blender::math::interpolate_nearest_wrap_fl(), blender::tests::TEST(), time_offset_fcurve_segment(), and blender::math::wrap_coord().
Increment the given float to the next representable floating point value in the positive direction.
Infinities and NaNs are left untouched. Subnormal numbers are handled correctly, as is crossing zero (i.e. 0 and -0 are considered a single value, and progressing past zero continues on to the positive numbers).
Definition at line 515 of file math_base_inline.cc.
| MINLINE int integer_digits_d | ( | double | d | ) |
Returns number of (base ten) significant digits of integer part of given double (negative in case of decimal-only floats, 0.01 returns -1 e.g.).
Definition at line 608 of file math_base_inline.cc.
References fabs(), floor, and MINLINE.
Referenced by unit_as_string(), and unit_as_string_split_pair().
Returns number of (base ten) significant digits of integer part of given float (negative in case of decimal-only floats, 0.01 returns -1 e.g.).
Definition at line 603 of file math_base_inline.cc.
References fabs(), floor, and MINLINE.
Referenced by ui_but_string_get_ex().
| MINLINE int integer_digits_i | ( | int | i | ) |
Definition at line 613 of file math_base_inline.cc.
Referenced by BKE_collection_new_name_get(), blender::io::usd::USDStageReader::create_proto_collections(), space_text_update_drawcache(), and stampdata().
| MINLINE double interpd | ( | double | target, |
| double | origin, | ||
| double | t ) |
Definition at line 82 of file math_base_inline.cc.
References MINLINE.
Referenced by lineart_do_closest_segment(), lineart_intersect_seg_seg(), lineart_line_isec_2d_ignore_line2pos(), lineart_shadow_cast_onto_triangle(), lineart_shadow_register_silhouette(), lineart_shadow_segment_slice_get(), and blender::bke::tests::test_vec_roll_to_mat3_orthogonal().
Definition at line 77 of file math_base_inline.cc.
References MINLINE.
Referenced by blender::ed::transform::applyCurveShrinkFatten(), blender::ed::transform::applyGPOpacity(), blender::ed::transform::applyMaskShrinkFatten(), BKE_curveprofile_evaluate_length_portion(), BKE_pchan_bbone_spline_compute(), blend_to_default_fcurve(), blend_to_neighbor_fcurve_segment(), bm_decim_edge_collapse(), bmo_vert_calc_edge_angle_blended(), breakdown_fcurve_segment(), butterworth_calculate_blend_value(), butterworth_smooth_fcurve_segment(), computeBindWeights(), create_samples_even_spacing(), data_transfer_interp_float_do(), draw_start_vertex_circle(), evaluate_time_fmodifiers(), evaluate_value_fmodifiers(), fcurve_eval_samples(), find_bbone_segment_index_curved(), imm_draw_circle_partial(), imm_draw_circle_partial_3d(), imm_draw_disk_partial(), imm_draw_disk_partial_3d(), insert_bezt_to_nurb(), insert_bp_to_nurb(), interp_bpoint(), interp_slerp_co_no_v3(), lineart_chain_create_crossing_point(), lineart_shadow_edge_cut(), MOD_lineart_chain_feature_lines(), pose_slide_apply_val(), scale_average_fcurve_segment(), scale_from_fcurve_segment_neighbor(), smooth_fcurve_segment(), splineik_evaluate_bone(), stretchto_evaluate(), blender::ed::curves::stroke_elem_interp(), stroke_elem_interp(), subdivide_base(), subdividenurb(), uiAlignPanelStep(), update_timestep(), view3d_smoothview_apply_with_interp(), weight_set_exec(), and WM_xr_session_state_vignette_update().
| MINLINE int is_power_of_2_i | ( | int | n | ) |
Definition at line 104 of file math_base_inline.cc.
References MINLINE.
Referenced by blf_batch_draw(), findBitIndex(), FlipDXTCImage(), get_profile_point(), IMB_create_gpu_texture(), log2_ceil_u(), blender::bke::mesh_calc_edges(), blender::bke::GeometrySet::operator<<, power_of_2_max_i(), and power_of_2_min_i().
Definition at line 147 of file math_base_inline.cc.
References is_power_of_2_i(), log2_floor_u(), MINLINE, and x.
Referenced by blender::draw::command::DrawMultiBuf::generate_commands(), and blender::tests::TEST().
Definition at line 142 of file math_base_inline.cc.
References log2_floor_u(), MINLINE, and x.
Referenced by log2_ceil_u(), log2_floor_u(), and blender::tests::TEST().
| MINLINE double max_dd | ( | double | a, |
| double | b ) |
Definition at line 358 of file math_base_inline.cc.
Referenced by max_ddd(), and blender::geometry::p_triangle_angles().
| MINLINE double max_ddd | ( | double | a, |
| double | b, | ||
| double | c ) |
Definition at line 390 of file math_base_inline.cc.
References b, max_dd(), and MINLINE.
Referenced by blender::geometry::p_chart_lscm_solve().
Definition at line 324 of file math_base_inline.cc.
Referenced by alpha_circle_mask(), annotation_draw_stroke_2d(), annotation_draw_stroke_3d(), annotation_draw_stroke_buffer(), blender::seq::SubEffectOp::apply(), blender::seq::WhiteBalanceApplyOp::apply(), barycentric_weights_v2_clamped(), blender::eevee::LightModule::begin_sync(), bezier_clamp(), bezier_handle_calc_smooth_fcurve(), BKE_bmbvh_overlap(), BKE_curvemapping_changed(), BKE_curvemapping_compute_range_dividers(), BKE_curvemapping_set_black_white_ex(), BKE_curvemapping_set_defaults(), BKE_curveprofile_move_point(), BKE_defvert_normalize_ex(), BKE_fcurves_calc_keyed_frames_ex(), BKE_gpencil_stroke_delete_tagged_points(), BKE_mask_spline_feather_resolution(), BKE_maskrasterize_handle_sample(), BKE_mesh_remap_calc_faces_from_mesh(), BKE_tracking_marker_clamp_search_size(), blend_color_burn_float(), blend_color_erase_alpha_float(), blend_color_lighten_float(), blend_color_linearburn_float(), blend_color_linearlight_float(), blend_color_pinlight_float(), blend_color_screen_float(), blend_color_sub_float(), blend_color_vividlight_float(), blf_glyph_to_curves(), BLI_box_pack_2d(), BLI_bvhtree_new(), blinn_specular(), blo_do_versions_300(), blo_do_versions_400(), block_align_proximity_compute(), blender::seq::brightcontrast_apply(), blender::ed::sculpt_paint::brush_dynamic_size_get(), brush_edit_apply(), button2d_geom_draw_backdrop(), calc_bbox(), calc_bevfac_mapping(), blender::ed::sculpt_paint::expand::calc_new_mask_mesh(), blender::ed::transform::calc_tw_center(), calculate_autoscale_factor(), calculate_bezt_bounds_y(), calculate_collision_balls(), calculate_fpt_bounds(), ccd_mesh_make(), ccd_mesh_update(), clamp_nonzero(), blender::ed::transform::clipUVData(), cloth_collision_response_static(), cloth_record_result(), cloth_selfcollision_response_static(), compute_bbone_segment_boundaries(), computeBindWeights(), blender::gpu::convert(), curvemap_make_table(), cylinder_project_exec(), damptrack_do_transform(), dist_signed_squared_to_corner_v3v3v3(), do_versions_sequencer_speed_effect_recursive(), do_vert_pair(), draw_fcurve_curve(), draw_horizontal_scale_indicators(), blender::ed::vse::draw_seq_fcurve_overlay(), blender::ed::vse::draw_seq_text_overlay(), blender::ed::vse::draw_seq_waveform_overlay(), blender::ed::vse::draw_strip_icons(), blender::ed::transform::drawLine(), blender::ed::vse::drawmeta_contents(), drw_shgroup_bone_envelope(), dynamic_paint_effect_shrink_cb(), dynamic_paint_paint_particle_cell_point_cb_ex(), dynamic_paint_paint_single_point_cb_ex(), dynamicPaint_mixPaintColors(), ED_mask_draw_region(), ED_view3d_polygon_offset(), edbm_bevel_init(), edbm_bevel_modal(), edbm_inset_init(), edbm_inset_modal(), EDBM_preselect_edgering_draw(), expand_key_bounds(), fcurve_scene_coord_range_get(), find_last_key(), get_display_buffer_processor(), blender::animrig::get_frame_range_of_fcurves(), get_keyframe_extents(), blender::seq::give_frame_index(), blender::ed::transform::gizmo2d_xform_draw_prepare(), gizmo_bbone_offset_set(), GPU_line_width(), blender::nodes::node_shader_color_ramp_cc::gpu_shader_valtorgb(), gpu_texture_create_tile_array(), heat_set_H(), IDP_EqualsProperties_ex(), IMB_colormanagement_setup_glsl_draw_from_space(), blender::eevee::AmbientOcclusion::init(), blender::workbench::CavityEffect::init(), interp_weights_poly_v2(), interp_weights_poly_v3(), isect_seg_seg_v2_point_ex(), blender::ed::vse::label_rect_get(), blender::ed::vse::label_rect_init(), layer_bucket_init(), blender::bke::greasepencil::convert::legacy_gpencil_frame_to_grease_pencil_drawing(), blender::bke::pbvh::long_edge_queue_edge_add_recursive(), loopcut_modal(), make_box_union(), blender::color::FloatTraits::max(), max_fff(), max_ffff(), max_v3_v3v3(), meshdeform_ray_tree_intersect(), MOD_solidify_extrude_modifyMesh(), MOD_solidify_nonmanifold_modifyMesh(), modify_mesh(), move_segment(), blender::ed::transform::nearest_world_tree(), blender::ed::space_node::nodelink_get_draw_config(), blender::ed::object::object_rand_transverts(), blender::draw::overlay::Lights::object_sync(), blender::ed::object::object_warp_transverts_minmax_x(), offset_meet(), blender::eevee::Film::overscan_pixels_get(), blender::geometry::pack_islands_alpaca_rotate(), blender::geometry::pack_islands_alpaca_turbo(), blender::geometry::pack_islands_optimal_pack(), blender::ed::sculpt_paint::paint_cursor_context_init(), blender::ed::sculpt_paint::paint_space_stroke_spacing(), blender::ed::sculpt_paint::paint_stroke_overlapped_curve(), blender::ed::sculpt_paint::image::ops::paint::paint_stroke_update_step(), polyedge_beauty_cost_update_single(), blender::draw::View::OffsetData::polygon_offset_factor(), py_bvhtree_overlap(), quad_calc_error(), radial_control_invoke(), ramp_blend(), RE_GetWindowMatrixWithOverscan(), blender::io::usd::USDCameraReader::read_object_data(), blender::io::alembic::AbcCameraReader::readObjectData(), recalc_face_normals_find_index(), blender::eevee::DepthOfField::render(), blender::seq::retiming_transition_key_frame_set(), rgb_to_cpack(), RNA_property_float_ui_range(), safe_sqrtf(), blender::gpu::MTLContext::sampler_state_cache_init(), scan_for_ext_face_forces(), blender::ed::sculpt_paint::expand::sculpt_expand_modal(), blender::ed::sculpt_paint::sculpt_update_cache_invariants(), blender::ed::vse::sequencer_main_clamp_view(), blender::ed::vse::sequencer_retiming_draw_continuity(), SimpleDeformModifier_do(), slider_update_factor(), smart_uv_project_calculate_project_normals(), smooth_view_rect_to_fac(), smoothminf(), snap_to_superellipsoid(), softbody_apply_forces(), softbody_step(), sphclassical_calc_dens(), sphere_project_exec(), splineik_evaluate_bone(), square_roughness_node_insert(), blender::draw::statvis_calc_distort(), blender::draw::statvis_calc_sharp(), stitch_island_calculate_edge_rotation(), stitch_island_calculate_vert_rotation(), stretchto_evaluate(), blender::ed::vse::strip_draw_context_get(), svd_m4(), blender::eevee::DepthOfField::sync(), blender::gpu::tests::texture_create_upload_read_with_bias(), texture_value_blend(), tracking_check_marker_margin(), blender::ed::transform::transformEvent(), ui_block_bounds_calc(), ui_block_bounds_calc_text(), ui_but_range_set_soft(), ui_do_but_NUM(), ui_draw_but_CURVE(), ui_draw_but_CURVEPROFILE(), ui_draw_dropshadow(), ui_menu_scroll_apply_offset_y(), ui_numedit_begin(), ui_numedit_but_NUM(), ui_popup_block_position(), ui_popup_block_refresh(), ui_tooltip_create_with_data(), blender::ed::sculpt_paint::update_curve_mask(), blender::ed::sculpt_paint::expand::update_mask_bmesh(), blender::ed::sculpt_paint::expand::update_mask_grids(), blender::draw::overlay::Resources::update_theme_settings(), blender::bke::pbvh::uv_islands::UVBorderCorner::uv(), uv_cylinder_project(), uv_map_mirror(), uv_sphere_project(), v3d_cursor_plane_draw(), vertex_color_brightness_contrast_exec(), blender::draw::overlay::Resources::vertex_size_get(), vertex_sort(), vfont_to_curve(), blender::ed::object::vgroup_normalize(), view3d_orbit_apply_dyn_ofs_ortho_correction(), view3d_zoom_border_exec(), blender::ed::space_node::viewer_border_exec(), viewzoom_scale_value(), blender::ed::object::voxel_size_edit_invoke(), blender::ed::object::voxel_size_edit_modal(), walkEvent(), widget_scroll(), WIDGETGROUP_empty_image_refresh(), blender::draw::View::OffsetData::winmat_polygon_offset(), wm_software_cursor_draw_crosshair(), WM_window_dpi_set_userdef(), wm_xr_navigation_teleport(), wrapped_lighting(), and zspan_scanconvert().
Definition at line 399 of file math_base_inline.cc.
References b, max_ff(), and MINLINE.
Referenced by blender::ed::object::apply_objects_internal(), BKE_mesh_mirror_apply_mirror_on_axis_for_modifier(), calculate_bezt_bounds_x(), calculate_bezt_bounds_y(), clamp_axis_max_v3(), blender::nodes::node_composite_lensdist_cc::LensDistortionOperation::compute_scale(), cube_project_exec(), blender::bke::pbvh::pixels::do_encode_pixels(), dynamicPaint_prepareEffectStep(), fast_ray_nearest_hit(), getSurfaceDimension(), imagewrap(), mat4_to_size_max_axis(), max_ffff(), position_tail_on_spline(), blender::bke::pbvh::raycast_node_detail_bmesh(), rgb_to_hsl(), sb_detect_face_collisionCached(), sb_detect_face_pointCached(), blender::geometry::signed_distance_fat_triangle(), surfaceGenerateGrid(), blender::geometry::Occupancy::trace_triangle(), view3d_from_minmax(), and view3d_localview_init().
Definition at line 417 of file math_base_inline.cc.
References b, max_ff(), max_fff(), and MINLINE.
Referenced by calculate_bezt_draw_resolution(), expand_key_bounds(), and blender::ed::space_node::node_link_draw_is_visible().
| MINLINE int max_ii | ( | int | a, |
| int | b ) |
Definition at line 367 of file math_base_inline.cc.
Referenced by accessor_get_ibuf(), blender::eevee::GBuffer::acquire(), action_space_icon_get(), action_space_name_get(), actionzone_modal(), blender::gpu::MTLFrameBuffer::add_color_attachment(), blender::gpu::MTLFrameBuffer::add_depth_attachment(), blender::gpu::MTLShaderInterface::add_input_attribute(), blender::gpu::MTLFrameBuffer::add_stencil_attachment(), blender::gpu::MTLShaderInterface::add_storage_block(), blender::gpu::MTLShaderInterface::add_texture(), blender::gpu::MTLShaderInterface::add_uniform_block(), blender::bke::pbvh::uv_islands::add_uv_island(), animviz_calc_motionpaths(), annotation_draw_eraser(), blender::seq::SubEffectOp::apply(), area_move_set_limits(), azone_clipped_rect_calc(), blender::gpu::MTLShader::bake_pipeline_state(), bevel_build_cutoff(), blender::gpu::VKVertexAttributeObject::bind(), BKE_autotrack_context_sync(), BKE_curve_material_index_validate(), BKE_icon_geom_rasterize(), BKE_image_get_tile_info(), BKE_mask_get_duration(), BKE_mask_spline_resolution(), BKE_mesh_remap_calc_faces_from_mesh(), BKE_mesh_remap_calc_loops_from_mesh(), BKE_mesh_validate_material_indices(), BKE_nurb_order_clamp_u(), BKE_nurb_order_clamp_v(), BKE_render_num_threads(), BKE_sculpt_mask_layers_ensure(), BKE_tracking_get_plane_imbuf(), BKE_tracking_reconstruction_context_new(), BKE_tracking_tracks_first_last_frame_minmax(), blend_color_burn_byte(), blend_color_erase_alpha_byte(), blend_color_lighten_byte(), blend_color_linearburn_byte(), blend_color_linearlight_byte(), blend_color_pinlight_byte(), blend_color_screen_byte(), blend_color_sub_byte(), blend_color_vividlight_byte(), blend_file_thumb_clamp_size(), BLI_bitmap_draw_2d_poly_v2i_n(), BLI_bvhtree_find_nearest_projected(), BLI_ghash_calc_quality_ex(), BLI_rcti_do_minmax_rcti(), blo_do_versions_410(), blo_do_versions_420(), bm_edgering_pair_subdiv(), BM_mesh_bevel(), BM_mesh_decimate_dissolve_ex(), BM_mesh_partial_create_from_verts_group_multi(), BM_mesh_partial_create_from_verts_group_single(), bmo_create_grid_exec(), bmo_unsubdivide_exec(), brush_scale_size_exec(), calculate_autoscale_factor(), blender::bke::pbvh::pixels::CopyPixelCommand::can_be_extended(), blender::gpu::VKBackend::capabilities_init(), change_spacing_exec(), channels_bake_exec(), circle_select_exec(), clamp_i(), clip_set_scene_frames_exec(), blender::eevee::DeferredPipeline::closure_layer_count(), cloth_record_result(), blender::gpu::VKFrameBuffer::color_attachments_resource_size(), colorband_init_from_table_rgba_simple(), blender::gpu::MTLContext::compute_dispatch(), blender::draw::View::compute_visibility(), console_select_to_buffer(), cp_cu_key(), blender::seq::create_missing_media_image(), create_primitive_from_points(), blender::ed::transform::create_trans_seq_clamp_data(), curve_decimate_exec(), curvemap_buttons_layout(), curvemap_make_table(), CurveProfile_buttons_layout(), blender::ed::vse::displayed_channel_range_get(), dopesheet_view_all_exec(), blender::workbench::DofPass::draw(), blender::ed::space_node::draw_background_color(), blender::ed::vse::draw_seq_fcurve_overlay(), blender::ed::vse::draw_seq_timeline_channels(), draw_spline_curve(), draw_text_main(), blender::ed::vse::drawmeta_contents(), blender::ed::object::drop_named_material_invoke(), blender::ed::object::drop_named_material_tooltip(), ED_curve_editfont_select_pick(), ED_info_draw_stats(), ed_preview_draw_rect(), ED_region_image_overlay_info_text_draw(), ED_scene_fps_average_accumulate(), ED_view3d_backbuf_sample_size_clamp(), ED_view3d_depth_read_cached(), ED_view3d_update_viewmat(), blender::gpu::MTLImmediate::end(), blender::eevee::LightModule::end_sync(), blender::gpu::MTLContext::ensure_render_pipeline_state(), uiLayoutItemFlow::estimate_impl(), uiLayoutItemGridFlow::estimate_impl(), fcurve_scene_coord_range_get(), file_smoothscroll_invoke(), filelist_file_cache_block(), blender::bke::pbvh::pixels::Rows::find_second_source(), blender::eevee::VelocityModule::geometry_steps_fill(), gesture_box_apply_rect(), get_active_fcurve_keyframe_edit(), blender::get_factor_from_index(), blender::ed::space_node::get_main_socket(), blender::gpu::VKQueryPool::get_occlusion_result(), blender::gpu::GLPixelBuffer::GLPixelBuffer(), blender::gpu::GLShaderInterface::GLShaderInterface(), GPU_offscreen_create(), gpu_texture_create_tile_array(), gpu_texture_update_from_ibuf(), blender::ed::sculpt_paint::grease_pencil_eraser_draw(), blender::eevee::DeferredPipeline::header_layer_count(), image_sample_apply(), image_view_all(), IMB_create_gpu_texture(), implicit_needed_branches(), blender::eevee::Film::init(), blender::eevee::MotionBlurModule::init(), blender::eevee::Sampling::init(), blender::eevee::Sampling::init(), blender::workbench::DofPass::init(), blender::workbench::SceneState::init(), blender::gpu::Texture::init_2D(), blender::gpu::Texture::init_cubemap(), blender::ed::object::lattice_add_to_selected_exec(), blender::ed::vse::left_fake_key_frame_get(), blender::bke::image::partial_update::PartialUpdateRegisterImpl::limit_history(), M_Geometry_interpolate_bezier(), blender::bke::image::partial_update::TileChangeset::mark_region(), blender::eevee::SphereProbeAtlasCoord::LocationFinder::mark_space_used(), blender::bke::pbvh::uv_islands::mask_resolution_from_tile_resolution(), blender::eevee::DeferredLayer::material_add(), blender::eevee::DeferredProbePipeline::material_add(), blender::eevee::PlanarProbePipeline::material_add(), Matrix_str(), blender::color::ByteTraits::max(), max_iii(), max_iiii(), blender::gpu::Texture::mip_depth_get(), blender::gpu::Texture::mip_height_get(), blender::gpu::Texture::mip_size_get(), blender::gpu::Texture::mip_width_get(), MOD_lineart_gpencil_generate_v3(), MOD_meshcache_calc_range(), motionpath_calculate_update_range(), motionpath_get_global_framerange(), blender::gpu::name_buffer_copystr(), blender::ed::space_node::node_socket_calculate_height(), blender::eevee::DeferredPipeline::normal_layer_count(), ZstdWriteWrap::open(), blender::ed::outliner::outliner_data_api_buttons_start_x(), panel_calculate_size_recursive(), panel_draw_aligned_backdrop(), paste_get_y_offset(), pipe_adj_vmesh(), blender::gpu::MSLGeneratorInterface::prepare_from_createinfo(), blender::ed::space_node::preview_prepare_scene(), preview_prepare_scene(), uiLayout::prop(), psys_get_pointcache_start_end(), psys_thread_context_init_path(), blender::gpu::VKPushConstants::push_constant_set(), pygpu_texture__tp_new(), radial_control_invoke(), blender::ed::sculpt_paint::face_set::randomize_colors_exec(), blender::eevee::IrradianceBake::raylists_build(), blender::gpu::MTLTexture::read(), blender::gpu::VKFrameBuffer::read(), blender::ed::vse::realize_fake_keys_in_rect(), region_rect_recursive(), blender::eevee::RayTraceModule::render(), blender::draw::gpencil::render_frame(), blender::seq::render_give_ibuf(), blender::gpu::VKFrameBuffer::rendering_ensure_dynamic_rendering(), LayoutAbsolute::resolve_impl(), LayoutRadial::resolve_impl(), RNA_property_int_ui_range(), blender::ed::sculpt_paint::expand::sculpt_expand_modal(), seq_update_meta_disp_range(), blender::ed::vse::seq_view_collection_rect_timeline(), blender::ed::vse::sequencer_add_effect_strip_exec(), blender::seq::sequencer_all_free_anim_ibufs(), blender::ed::vse::sequencer_drop_copy(), blender::ed::vse::sequencer_export_subtitles_exec(), blender::ed::vse::sequencer_image_strip_get_minmax_frame(), blender::ed::vse::sequencer_meta_make_exec(), blender::ed::vse::sequencer_select_side_exec(), blender::ed::vse::sequencer_set_range_to_strips_exec(), blender::ed::vse::sequencer_visible_strips_get(), set_profile_spacing(), blender::ed::object::shape_key_move_exec(), blender::seq::shuffle_strip_time_offset_get(), SIM_hair_volume_add_segment(), blender::seq::strip_time_effect_range_set(), blender::seq::strip_update_sound_bounds_recursive_impl(), svd_m4(), blender::eevee::RayTraceModule::sync(), blender::ed::asset::take_screenshot_crop(), blender::draw::TestDefrag::TestDefrag(), text_scroll_state_init(), textview_draw_sel(), blender::seq::time_update_meta_strip_range(), tracking_dopesheet_calc_coverage(), tracking_dopesheet_channels_segments_calc(), blender::seq::transform_seqbase_shuffle_ex(), blender::ed::transform::transform_snap_reset_from_mode(), ui_do_but_NUM(), ui_item_rna_size(), ui_litem_grid_flow_compute(), UI_panel_category_draw_all(), ui_panels_size(), ui_text_clip_cursor(), ui_text_clip_middle(), ui_text_clip_middle_protect_right(), ui_text_clip_right_label(), ui_tooltip_create_with_data(), uilist_prepare(), uiTemplateReportsBanner(), uiTemplateStatusInfo(), unit_as_string_split_pair(), blender::gpu::GLTexture::update_sub(), blender::gpu::MTLTexture::update_sub(), blender::gpu::VKTexture::update_sub(), vfont_to_curve(), view2d_masks(), widget_draw_text(), widget_scroll(), wm_main_playanim_intern(), WM_window_dpi_set_userdef(), and zspan_scanconvert().
| MINLINE int max_iii | ( | int | a, |
| int | b, | ||
| int | c ) |
Definition at line 408 of file math_base_inline.cc.
References b, max_ii(), and MINLINE.
Referenced by blo_do_versions_260(), blo_do_versions_420(), blender::gpu::Texture::init_3D(), max_iiii(), and blender::ed::vse::thumb_calc_first_timeline_frame().
| MINLINE int max_iiii | ( | int | a, |
| int | b, | ||
| int | c, | ||
| int | d ) |
Definition at line 426 of file math_base_inline.cc.
References b, max_ii(), max_iii(), and MINLINE.
Referenced by _bli_array_iter_spiral_square().
Definition at line 376 of file math_base_inline.cc.
Referenced by blender::gpu::MTLCircularBuffer::allocate_range_aligned(), blender::draw::select::SelectMap::end_sync(), blender::eevee::VelocityModule::end_sync(), blender::gpu::MTLContext::ensure_texture_bindings(), blender::gpu::MTLContext::ensure_texture_bindings(), GPU_indexbuf_join(), ibJpegImageFromCinfo(), blender::gpu::MSLGeneratorInterface::prepare_from_createinfo(), blender::gpu::MTLScratchBufferManager::scratch_buffer_allocate_range_aligned(), and blender::gpu::VKContext::sync_backbuffer().
| MINLINE double min_dd | ( | double | a, |
| double | b ) |
Definition at line 354 of file math_base_inline.cc.
Definition at line 320 of file math_base_inline.cc.
Referenced by alpha_circle_mask(), annotation_draw_apply(), area_draw_azone_fullscreen(), blender::ed::space_node::backimage_fit_exec(), bezier_clamp(), bezier_handle_calc_smooth_fcurve(), BKE_curvemapping_changed(), BKE_curvemapping_set_defaults(), BKE_curveprofile_move_point(), BKE_maskrasterize_handle_sample(), BKE_tracking_marker_clamp_search_size(), blend_color_add_alpha_float(), blend_color_darken_float(), blend_color_dodge_float(), blend_color_hardlight_float(), blend_color_linearlight_float(), blend_color_overlay_float(), blend_color_pinlight_float(), blend_color_vividlight_float(), blo_do_versions_270(), blo_do_versions_300(), blo_do_versions_400(), bm_decim_build_edge_cost_single__topology(), bm_decim_build_edge_cost_single_squared__topology(), bmo_create_uvsphere_exec(), bmo_dissolve_degenerate_exec(), bmo_dissolve_limit_exec(), boid_body(), btw_smooth_graph_keys(), butterworth_smooth_fcurve_segment(), button2d_geom_draw_backdrop(), calc_bevfac_mapping(), blender::ed::sculpt_paint::expand::calc_new_mask_mesh(), blender::ed::transform::calc_tw_center(), calctrackballvec(), calculate_autoscale_factor(), calculate_bezt_bounds_y(), calculate_collision_balls(), calculate_fpt_bounds(), ccd_mesh_make(), ccd_mesh_update(), blender::ed::vse::channel_draw_context_init(), clamp_nonzero(), clip_view_calculate_view_selection(), blender::ed::transform::clipUVData(), cloth_collision_response_static(), cloth_record_result(), cloth_selfcollision_response_static(), computeAngularWeight(), computeBindWeights(), convert_tree(), curvemap_make_table(), damptrack_do_transform(), dist_signed_squared_to_corner_v3v3v3(), do_projectpaint_thread(), draw_fcurve_curve(), draw_keylist_block_gpencil(), draw_marker_slide_zones(), blender::ed::vse::draw_seq_fcurve_overlay(), blender::ed::vse::draw_seq_text_overlay(), blender::ed::vse::draw_seq_waveform_overlay(), blender::ed::vse::draw_strip_icons(), blender::ed::vse::draw_strip_in_view(), blender::ed::vse::drawmeta_contents(), dynamic_paint_effect_drip_cb(), dynamic_paint_effect_spread_cb(), ED_view3d_backbuf_sample_size_clamp(), ED_view3d_update_viewmat(), blender::ed::transform::edge_slide_apply_elem(), expand_key_bounds(), fcurve_scene_coord_range_get(), find_next_key(), flyApply(), flyEvent(), geodesic_distance_propagate_across_triangle(), blender::animrig::get_frame_range_of_fcurves(), get_keyframe_extents(), blender::bke::pbvh::uv_islands::UVIslandsMask::Tile::get_pixel_size_in_uv_space(), blender::ed::vse::get_seq_strip_thumbnails(), get_shortest_pattern_side(), getArrowEndPoint(), gpu_texture_create_tile_array(), image_view_all(), IMB_rectblend(), immDrawBorderCorners(), blender::ed::sculpt_paint::expand::init_from_face_set_boundary(), blender::ed::vse::inner_clickable_handle_size_get(), isect_seg_seg_v2_point_ex(), knife_snap_size(), blender::ed::vse::label_rect_get(), layer_bucket_init(), line_rect_clip(), make_box_union(), merge_frame_corners(), blender::color::FloatTraits::min(), min_fff(), min_ffff(), mix_normals(), MOD_solidify_extrude_modifyMesh(), MOD_solidify_nonmanifold_modifyMesh(), modify_mesh(), modify_mesh(), move_segment(), nla_action_draw_keyframes(), blender::ed::space_node::node_insert_on_link_flags_set(), blender::ed::space_node::node_update_basis(), blender::ed::object::object_warp_transverts_minmax_x(), paint_calculate_rake_rotation(), pipe_adj_vmesh(), quad_calc_error(), radial_control_invoke(), ramp_blend(), blender::eevee::DepthOfField::render(), blender::ed::vse::retiming_fake_key_frame_clicked(), rgb_to_hsl(), rgb_to_hsv(), RNA_property_float_ui_range(), blender::gpu::GLTexture::samplers_update(), sb_detect_edge_collisionCached(), scan_for_ext_face_forces(), scanfill(), blender::ed::vse::seq_view_collection_rect_preview(), blender::ed::vse::sequencer_main_clamp_view(), blender::ed::vse::sequencer_retiming_draw_continuity(), blender::ed::vse::sequencer_view_all_preview_exec(), sima_zoom_set_from_bounds(), SimpleDeformModifier_do(), slider_update_factor(), smooth_view_rect_to_fac(), smoothminf(), snap_to_superellipsoid(), softbody_apply_forces(), softbody_step(), sphclassical_calc_dens(), spline_under_mouse_get(), splineik_evaluate_bone(), stitch_island_calculate_edge_rotation(), stitch_island_calculate_vert_rotation(), stretchto_evaluate(), blender::ed::vse::strip_draw_context_get(), blender::ed::vse::strip_handle_draw_size_get(), blender::ed::vse::strip_header_size_get(), texture_value_blend(), blender::geometry::Occupancy::trace_triangle(), blender::ed::transform::transformEvent(), ui_but_range_set_soft(), ui_do_animate(), ui_do_but_NUM(), ui_draw_but_CURVE(), ui_draw_but_CURVEPROFILE(), ui_draw_but_UNITVEC(), ui_draw_dropshadow(), ui_menu_scroll_apply_offset_y(), ui_numedit_begin(), ui_numedit_but_HISTOGRAM(), ui_numedit_but_HSVCIRCLE(), ui_numedit_set_active(), ui_popup_block_refresh(), UI_text_clip_middle_ex(), ui_update_flexible_spacing(), unified_findnearest(), blender::ed::sculpt_paint::expand::update_mask_bmesh(), blender::ed::sculpt_paint::expand::update_mask_grids(), uv_map_mirror(), uv_rip_single_from_loop(), versioning_eevee_material_blend_mode_settings(), vfont_to_curve(), view3d_center_camera_exec(), view3d_ruler_pick(), view_all_exec(), blender::ed::space_node::viewer_border_exec(), walkApply(), walkEvent(), WM_xr_session_state_vignette_activate(), WM_xr_session_state_vignette_update(), zbuf_add_to_span(), and zspan_scanconvert().
Definition at line 395 of file math_base_inline.cc.
References b, min_ff(), and MINLINE.
Referenced by BKE_mball_element_display_radius_calc(), BKE_mball_element_display_radius_calc_with_stiffness(), calculate_bezt_bounds_x(), calculate_bezt_bounds_y(), blender::bke::pbvh::pixels::do_encode_pixels(), dynamic_paint_effect_spread_cb(), gizmo_ruler_draw(), blender::ed::transform::graph_key_shortest_dist(), intersect_line_tri(), knifetool_draw_angle(), blender::seq::MaskSamplerDirectFloat::load_mask_min(), blender::seq::MaskSamplerTransformedFloat::load_mask_min(), min_ffff(), project_bucket_clip_face(), blender::seq::retiming_transition_key_frame_set(), rgb_to_hsl(), sb_detect_face_collisionCached(), sb_detect_face_pointCached(), blender::geometry::Occupancy::trace_triangle(), and view3d_ruler_pick().
Definition at line 413 of file math_base_inline.cc.
References b, min_ff(), min_fff(), and MINLINE.
Referenced by calculate_bezt_draw_resolution(), closest_seg_seg_v2(), dist_seg_seg_v2(), expand_key_bounds(), and blender::ed::space_node::node_link_draw_is_visible().
| MINLINE int min_ii | ( | int | a, |
| int | b ) |
Definition at line 363 of file math_base_inline.cc.
Referenced by accessor_get_ibuf(), add_bezt_vertices(), blender::bke::pbvh::uv_islands::add_uv_island(), animviz_calc_motionpaths(), blender::seq::AddEffectOp::apply(), area_move_set_limits(), azone_clipped_rect_calc(), BKE_autotrack_context_sync(), BKE_blendfile_userdef_from_defaults(), BKE_image_get_tile_info(), BKE_key_evaluate_object_ex(), BKE_keyblock_convert_to_curve(), BKE_keyblock_convert_to_lattice(), BKE_mask_spline_feather_collapse_inner_loops(), BKE_maskrasterize_handle_init(), BKE_mesh_remap_calc_edges_from_mesh(), BKE_tracking_get_projection_matrix(), BKE_tracking_reconstruction_context_new(), BKE_tracking_tracks_first_last_frame_minmax(), blend_color_add_alpha_byte(), blend_color_add_byte(), blend_color_darken_byte(), blend_color_dodge_byte(), blend_color_exclusion_byte(), blend_color_hardlight_byte(), blend_color_linearlight_byte(), blend_color_overlay_byte(), blend_color_pinlight_byte(), blend_color_vividlight_byte(), BLI_bitmap_draw_2d_poly_v2i_n(), BLI_rcti_do_minmax_rcti(), blo_do_versions_280(), BM_mesh_bm_from_me(), blender::ed::transform::bm_mesh_edges_select_get_n(), BM_mesh_partial_create_from_verts(), BM_mesh_partial_create_from_verts_group_multi(), BM_mesh_partial_create_from_verts_group_single(), blender::ed::transform::bm_mesh_verts_select_get_n(), bmo_bisect_plane_exec(), brush_painter_imbuf_partial_update(), brush_painter_mask_imbuf_partial_update(), butterworth_smooth_fcurve_segment(), calcknots(), calculate_autoscale_factor(), blender::bke::curves::nurbs::calculate_knots(), channels_bake_exec(), clamp_i(), cloth_record_result(), color_clamp_index(), colorband_init_from_table_rgba_simple(), console_select_to_buffer(), cp_cu_key(), blender::ed::transform::create_trans_seq_clamp_data(), CurveProfile_buttons_layout(), blender::bke::pbvh::pixels::do_encode_pixels(), do_history(), dopesheet_view_all_exec(), draw_movieclip_cache(), draw_textscroll(), blender::ed::vse::drawmeta_contents(), ED_region_header_layout(), ED_region_info_draw_multiline(), ED_region_panels_layout_ex(), ED_view3d_depth_read_cached(), edbm_fill_grid_prepare(), blender::eevee::DeferredLayer::end_sync(), blender::eevee::LightModule::end_sync(), blender::gpu::MTLContext::ensure_render_pipeline_state(), LayoutAbsolute::estimate_impl(), uiLayoutItemFlow::estimate_impl(), uiLayoutItemGridFlow::estimate_impl(), euler_filter_perform_filter(), fcurve_scene_coord_range_get(), file_draw_list(), filelist_file_cache_block(), find_next_key(), blender::bke::pbvh::pixels::Rows::find_second_source(), gesture_box_apply_rect(), blender::gpu::VKQueryPool::get_occlusion_result(), get_render_subsurf_level(), GPU_texture_size_with_limit(), gpu_texture_update_from_ibuf(), image_sample_apply(), imb_loadiris(), blender::eevee::ShadowModule::init(), blender::workbench::CavityEffect::init(), blender::workbench::SceneState::init(), ViewportColorSampleSession::init(), blender::gpu::Texture::init_1D(), blender::gpu::Texture::init_2D(), blender::gpu::Texture::init_3D(), blender::bke::image::partial_update::TileChangeset::init_chunks(), blender::gpu::Texture::init_cubemap(), blender::gpu::Texture::init_view(), blender::bke::image::partial_update::TileChangeset::mark_region(), mathutils_matrix_col_get(), mathutils_matrix_col_set(), Matrix_to_NxN(), matrix_unit_internal(), blender::color::ByteTraits::min(), min_iii(), min_iiii(), MOD_meshcache_calc_range(), motionpath_calculate_update_range(), motionpath_get_global_framerange(), blender::seq::multiply_ibuf(), blender::ed::space_node::node_update_basis_socket(), non_recursive_bvh_div_nodes(), paste_get_y_offset(), prefetch_get_final_frame(), blender::gpu::present(), psys_get_pointcache_start_end(), psys_tasks_create(), blender::seq::query_right_side_strips(), radial_control_invoke(), read_bone_collections(), blender::gpu::VKTexture::read_sub(), blender::ed::vse::realize_fake_keys_in_rect(), blender::eevee::DepthOfField::render(), LayoutAbsolute::resolve_impl(), LayoutRadial::resolve_impl(), LayoutRow::resolve_impl(), uiLayoutItemFlow::resolve_impl(), uiLayoutItemGridFlow::resolve_impl(), blender::ed::vse::right_fake_key_frame_get(), RNA_property_int_ui_range(), round_box__edges(), blender::eevee::ShadowModule::screen_pixel_radius(), seq_update_meta_disp_range(), blender::ed::vse::seq_view_collection_rect_timeline(), blender::seq::sequencer_all_free_anim_ibufs(), blender::ed::vse::sequencer_image_strip_get_minmax_frame(), blender::ed::vse::sequencer_meta_make_exec(), blender::ed::vse::sequencer_select_side_exec(), blender::ed::vse::sequencer_set_range_to_strips_exec(), blender::ed::vse::sequencer_visible_strips_get(), blender::eevee::ShadowTileMapPool::ShadowTileMapPool(), blender::ed::object::shape_key_move_exec(), blender::seq::shuffle_strip_time_offset_get(), SIM_hair_volume_add_segment(), blender::seq::strip_time_effect_range_set(), blender::seq::strip_update_sound_bounds_recursive_impl(), svd_m4(), blender::ed::asset::take_screenshot_crop(), blender::draw::TestDefrag::TestDefrag(), textview_draw_sel(), tile_remove_exec(), blender::seq::time_update_meta_strip_range(), track_init_markers(), tracking_dopesheet_calc_coverage(), ui_block_func_POPUP(), ui_but_drag_init(), ui_do_but_NUM(), ui_draw_but_HSVCIRCLE(), ui_hsvcircle_pos_from_vals(), ui_hsvcircle_vals_from_pos(), ui_item_array(), ui_panels_size(), ui_searchbox_region_draw_cb__operator(), ui_tooltip_create_with_data(), uilist_prepare(), uiTemplateReportsBanner(), blender::ed::sculpt_paint::update_curve_mask(), blender::gpu::MTLBufferPool::update_memory_pools(), vfont_to_curve(), blender::gpu::MTLShader::warm_cache(), widget_numbut_draw(), WM_operator_properties_checker_interval(), wm_xr_session_action_test_bimanual(), and zspan_scanconvert().
| MINLINE int min_iii | ( | int | a, |
| int | b, | ||
| int | c ) |
Definition at line 404 of file math_base_inline.cc.
References b, min_ii(), and MINLINE.
Referenced by blender::eevee::Instance::light_bake_irradiance(), blender::seq::MaskSamplerDirectByte::load_mask_min(), blender::seq::MaskSamplerTransformedByte::load_mask_min(), min_iiii(), and blender::ed::object::parent_set_vert_find().
| MINLINE int min_iiii | ( | int | a, |
| int | b, | ||
| int | c, | ||
| int | d ) |
Definition at line 422 of file math_base_inline.cc.
References b, min_ii(), min_iii(), and MINLINE.
Referenced by _bli_array_iter_spiral_square().
Definition at line 372 of file math_base_inline.cc.
Referenced by blender::gpu::VKBackend::capabilities_init(), blender::draw::command::Draw::Draw(), GPU_indexbuf_build_curves_on_device(), GPU_indexbuf_join(), ibJpegImageFromCinfo(), blender::draw::StorageArrayBuffer< float2, 16 >::resize(), blender::gpu::MTLContext::texture_unbind(), and blender::gpu::MTLContext::texture_unbind_all().
| MINLINE int mod_i | ( | int | i, |
| int | n ) |
Floored modulo that is useful for wrapping numbers over n, including when i is negative.
This is the same as Python % or GLSL mod(): mod_i(-5, 3) = 1.
Definition at line 254 of file math_base_inline.cc.
Referenced by blender::nodes::node_geo_instance_on_points_cc::add_instances_from_component(), BKE_nurb_index_from_uv(), bridge_loop_pair(), blender::compositor::convolve(), curve_dissolve_exec(), ed_dissolve_bez_segment(), edbm_fill_grid_prepare(), blender::nodes::node_geo_curve_topology_points_of_curve_cc::PointsOfCurveInput::get_varray_for_context(), blender::nodes::node_geo_mesh_topology_corners_of_edge_cc::CornersOfEdgeInput::get_varray_for_context(), blender::nodes::node_geo_mesh_topology_corners_of_face_cc::CornersOfFaceInput::get_varray_for_context(), blender::nodes::node_geo_mesh_topology_corners_of_vertex_cc::CornersOfVertInput::get_varray_for_context(), blender::nodes::node_geo_mesh_topology_edges_of_vertex_cc::EdgesOfVertInput::get_varray_for_context(), mat3_align_axis_to_v3(), project_paint_uvpixel_init(), RNA_property_enum_step(), setup_vertex_point(), smooth_exec(), WM_operator_properties_checker_interval_from_op(), and wm_software_cursor_draw().
Definition at line 29 of file math_base_inline.cc.
Referenced by blender::ed::spreadsheet::apply_row_filter(), BKE_brush_gen_radial_control_imbuf(), BKE_curveprofile_update(), BKE_kelvinlet_grab_triscale(), blender::ed::sculpt_paint::cache_paint_invariants_update(), blender::ed::sculpt_paint::filter::calc_sharpen_detail_translations(), blender::ed::sculpt_paint::CombOperationExecutor::comb_projected(), blender::ed::sculpt_paint::CombOperationExecutor::comb_spherical(), blender::ed::sculpt_paint::DeleteOperationExecutor::delete_projected(), blender::ed::sculpt_paint::DeleteOperationExecutor::delete_spherical(), draw_start_vertex_circle(), ease_sigmoid_function(), blender::draw::edituv_get_edituv_stretch_angle(), blender::ed::curves::find_closest_curve_to_screen_co(), blender::ed::curves::find_closest_point_to_screen_co(), blender::ed::sculpt_paint::PuffOperationExecutor::find_curve_weights_projected(), blender::ed::sculpt_paint::find_curves_brush_position(), blender::ed::sculpt_paint::SlideOperationExecutor::find_curves_to_slide(), blender::ed::sculpt_paint::PuffOperationExecutor::find_curves_weights_spherical(), blender::ed::sculpt_paint::SmoothOperationExecutor::find_projected_smooth_factors(), blender::ed::sculpt_paint::SmoothOperationExecutor::find_spherical_smooth_factors(), blender::ed::sculpt_paint::CurvesEffectOperationExecutor::gather_influences_projected(), blender::ed::sculpt_paint::CurvesEffectOperationExecutor::gather_influences_spherical(), blender::eevee::Film::init(), blender::ed::sculpt_paint::auto_mask::init_boundary_masking_bmesh(), blender::ed::sculpt_paint::auto_mask::init_boundary_masking_grids(), blender::ed::sculpt_paint::auto_mask::init_boundary_masking_mesh(), init_kelvinlet_grab(), kelvinlet_scale(), kelvinlet_twist(), blender::ed::sculpt_paint::filter::mesh_filter_sharpen_init(), blender::ed::sculpt_paint::SelectionPaintOperationExecutor::paint_curve_selection_projected(), blender::ed::sculpt_paint::SelectionPaintOperationExecutor::paint_curve_selection_spherical(), blender::ed::sculpt_paint::SelectionPaintOperationExecutor::paint_point_selection_projected(), blender::ed::sculpt_paint::SelectionPaintOperationExecutor::paint_point_selection_spherical(), blender::ed::sculpt_paint::PinchOperationExecutor::pinch_projected(), blender::ed::sculpt_paint::PinchOperationExecutor::pinch_spherical(), pow3f(), pow4f(), pow7f(), blender::ed::sculpt_paint::SnakeHookOperatorExecutor::projected_snake_hook(), blender::ed::sculpt_paint::DensitySubtractOperationExecutor::reduce_density_projected(), blender::ed::sculpt_paint::DensitySubtractOperationExecutor::reduce_density_spherical(), blender::ed::sculpt_paint::AddOperationExecutor::sample_spherical(), blender::ed::sculpt_paint::DensityAddOperationExecutor::sample_spherical_with_symmetry(), blender::bke::mesh_surface_sample::sample_surface_points_spherical(), SCULPT_calc_vertex_displacement(), blender::ed::curves::select_circle(), blender::ed::curves::select_circle_mask(), blender::geometry::curve_constraints::solve_length_and_collision_constraints(), sphclassical_force_cb(), blender::ed::sculpt_paint::SnakeHookOperatorExecutor::spherical_snake_hook(), ui_numedit_but_HISTOGRAM(), UI_view2d_dot_grid_draw(), blender::ed::sculpt_paint::use_add_density_mode(), and WM_gesture_lasso_modal().
Definition at line 33 of file math_base_inline.cc.
References MINLINE, pow2f(), and x.
Referenced by BKE_brush_calc_curve_factors(), BKE_brush_curve_strength(), blender::ed::sculpt_paint::brush_dynamic_size_get(), init_kelvinlet_grab(), kelvinlet_scale(), kelvinlet_twist(), pow7f(), samevolume_evaluate(), sphclassical_density_accum_cb(), sphclassical_force_cb(), and ui_hsvcircle_pos_from_vals().
Definition at line 37 of file math_base_inline.cc.
References MINLINE, pow2f(), and x.
Referenced by brush_strength(), cloth_apply_vgroup(), pow5f(), sphclassical_density_accum_cb(), and sphclassical_force_cb().
Definition at line 45 of file math_base_inline.cc.
References MINLINE, pow2f(), pow3f(), and x.
Referenced by sphclassical_force_cb().
| int pow_i | ( | int | base, |
| int | exp ) |
Definition at line 13 of file math_base.cc.
References BLI_assert, exp, and result.
Referenced by multires_create_grids_in_unsubdivided_base_mesh(), and paint_proj_new_stroke().
Used for zoom values.
Definition at line 99 of file math_base_inline.cc.
References ceil, log, M_LN2, MINLINE, and pow.
Referenced by clip_view_calculate_view_selection(), image_view_all(), rgb_to_rgbe(), blender::ed::vse::sequencer_view_all_preview_exec(), and view_all_exec().
| MINLINE int power_of_2_max_i | ( | int | n | ) |
Returns next (or previous) power of 2 or the input number if it is already a power of 2.
Definition at line 109 of file math_base_inline.cc.
References is_power_of_2_i(), and MINLINE.
Referenced by array_chunk_size_calc(), checker_board_color_fill(), blender::compositor::jump_flooding(), blender::eevee::RayTraceModule::render(), set_profile_spacing(), and blender::eevee::RayTraceModule::sync().
Definition at line 131 of file math_base_inline.cc.
Referenced by blender::draw::StorageVectorBuffer< IrradianceBrickPacked, 16 >::append_as(), BLI_array_store_at_size_ensure(), BLI_mempool_create(), blender::draw::StorageArrayBuffer< float2, 16 >::get_or_resize(), and blender::draw::StorageArrayBuffer< float2, 16 >::trim_to_next_power_of_2().
| MINLINE int power_of_2_min_i | ( | int | n | ) |
Definition at line 122 of file math_base_inline.cc.
References is_power_of_2_i(), and MINLINE.
Referenced by blender::bke::calc_edges::get_parallel_maps_count(), and smaller_power_of_2_limit().
| MINLINE double ratiod | ( | double | min, |
| double | max, | ||
| double | pos ) |
Definition at line 93 of file math_base_inline.cc.
References max, min, MINLINE, and pos.
Referenced by lineart_bounding_area_next(), lineart_do_closest_segment(), lineart_intersect_seg_seg(), lineart_line_isec_2d_ignore_line2pos(), lineart_point_on_line_segment(), lineart_shadow_cast_onto_triangle(), and lineart_triangle_edge_image_space_occlusion().
Definition at line 87 of file math_base_inline.cc.
References max, min, MINLINE, and pos.
Referenced by lineart_chain_create_crossing_point(), and blender::ed::vse::sequencer_draw_scopes().
| MINLINE int round_db_to_int | ( | double | a | ) |
Definition at line 195 of file math_base_inline.cc.
References _round_db_impl, and MINLINE.
Referenced by action_main_region_draw(), dopesheet_region_draw(), blender::ed::vse::draw_timeline_seq(), graph_main_region_draw(), graph_region_draw(), nla_main_region_draw(), UI_view2d_draw_lines_x__discrete_frames_or_seconds(), UI_view2d_draw_lines_x__frames_or_seconds(), and UI_view2d_grid_resolution_x__frames_or_seconds().
| MINLINE int round_db_to_int_clamp | ( | double | a | ) |
Definition at line 208 of file math_base_inline.cc.
References _round_clamp_db_impl.
Referenced by ui_but_value_set().
| MINLINE short round_db_to_short_clamp | ( | double | a | ) |
Definition at line 206 of file math_base_inline.cc.
References _round_clamp_db_impl.
Referenced by ui_but_value_set().
Definition at line 204 of file math_base_inline.cc.
References _round_clamp_db_impl, and MINLINE.
Referenced by ui_but_value_set().
Definition at line 192 of file math_base_inline.cc.
References _round_fl_impl.
Referenced by actkeys_framejump_exec(), blender::ed::vse::align_frame_with_pixel(), ANIM_channel_draw_widgets(), blender::ed::transform::applySeqSlide(), area_move_apply_do(), area_snap_calc_location(), BLF_position(), BLI_timecode_string_from_time(), BLI_timecode_string_from_time_seconds(), change_frame_apply(), blender::ed::transform::cmp_fn(), blender::seq::do_render_strip_uncached(), draw_background(), blender::ed::vse::draw_channels(), blender::ed::vse::draw_seq_waveform_overlay(), ED_annotation_draw_view3d(), ED_area_global_max_size_y(), ED_area_global_min_size_y(), ED_area_global_size_y(), ED_fileselect_init_layout(), ED_markers_find_nearest_marker_time(), ED_markers_post_apply_transform(), ED_region_panel_category_gutter_calc_rect(), ED_region_panels_draw(), blender::ed::sculpt_paint::greasepencil::EraseOperationExecutor::execute(), file_add_icon_but(), file_draw_list(), file_draw_string(), blender::ed::transform::flushTransSeq(), frame_from_event(), frame_from_event(), gather_frames_to_render_for_adt(), graphkeys_framejump_exec(), graphkeys_previewrange_exec(), graphview_cursor_apply(), icon_draw_rect(), blender::seq::image_size_to_thumb_size(), blender::ed::vse::label_str_get(), MOD_meshcache_calc_range(), blender::ed::vse::mouse_over_key_get_from_strip(), nlaedit_previewrange_exec(), blender::ed::space_node::node_draw_basis(), blender::ed::space_node::node_draw_collapsed(), blender::ed::outliner::outliner_draw_overrides_rna_buts(), panel_draw_aligned_widgets(), blender::ui::AbstractTreeView::persistent_state_apply(), previewrange_define_exec(), blender::ed::transform::recalcData_actedit(), blender::ed::transform::recalcData_sequencer_retiming(), blender::seq::render_give_stripelem(), blender::seq::retiming_key_speed_get(), blender::seq::retiming_key_speed_set(), blender::seq::retiming_key_timeline_frame_get(), blender::seq::seq_proxy_fetch(), blender::seq::seq_render_movie_strip_custom_file_proxy(), blender::seq::seq_render_movie_strip_view(), blender::ed::transform::seq_snap_threshold_get_frame_distance(), blender::seq::seq_split_set_left_hold_offset(), blender::seq::seq_split_set_right_hold_offset(), blender::ed::vse::sequencer_main_cursor(), blender::ed::vse::sequencer_slip_modal(), blender::ed::vse::sequencer_split_invoke(), blender::ed::transform::snap_calc_timeline(), blender::ed::greasepencil::snap_selected_frames(), blender::ed::vse::strip_get_thumb_image_dimensions(), blender::seq::strip_speed_effect_target_frame_get(), blender::ed::vse::sync_active_scene_and_time_with_scene_strip(), text_draw_rect_get(), blender::seq::time_get_rounded_sound_offset(), blender::ed::transform::transform_convert_sequencer_clamp(), ui_do_drag(), ui_numedit_but_NUM(), ui_numedit_but_SLI(), UI_panel_category_draw_all(), UI_preview_tile_size_x(), UI_preview_tile_size_y(), UI_preview_tile_size_y_no_label(), uiAlignPanelStep(), uilist_resize_update(), view2d_draw_lines(), widget_draw_text(), widget_draw_text_icon(), wm_drag_imbuf_icon_height_get(), wm_drag_imbuf_icon_width_get(), WM_event_drag_direction(), and wm_software_cursor_draw_bitmap().
Definition at line 202 of file math_base_inline.cc.
References _round_clamp_fl_impl.
Referenced by ui_do_but_NUM().
Definition at line 191 of file math_base_inline.cc.
References _round_fl_impl.
Referenced by screen_geom_find_area_split_point(), and screen_geom_vertices_scale_pass().
Definition at line 190 of file math_base_inline.cc.
References _round_fl_impl, and MINLINE.
Referenced by blender::color::ByteTraits::round().
Definition at line 200 of file math_base_inline.cc.
References _round_clamp_fl_impl, and MINLINE.
Referenced by blend_color_softlight_byte(), layerInterp_mcol(), and layerInterp_mloopcol().
Definition at line 193 of file math_base_inline.cc.
References _round_fl_impl.
Referenced by blf_ensure_size(), and blf_font_size().
Round to closest even number, halfway cases are rounded away from zero.
Definition at line 213 of file math_base_inline.cc.
Definition at line 565 of file math_base_inline.cc.
References ccl_device_inline, and MINLINE.
Referenced by BKE_texture_mapping_init(), blender::ed::sculpt_paint::auto_mask::calc_cavity_factor(), compatible_signf(), TextureMapping::compute_transform(), computeBindWeights(), blender::ed::transform::constraintScaleLim(), dither_random_value(), gizmo_cage2d_modal(), gizmo_cage3d_modal(), microfacet_beckmann_sample_vndf(), nonzerof(), shrinkwrap_snap_with_side(), sphg_dir(), svm_node_set_bump(), volume_draine_setup(), and volume_henyey_greenstein_setup().
Definition at line 592 of file math_base_inline.cc.
References MINLINE.
Referenced by bm_loop_collapse_is_degenerate(), get_uv_face_needle(), gizmo_cage2d_modal(), gizmo_cage3d_modal(), smooth_fcurve_segment(), and blender::ed::object::vgroup_smooth_subset().
Definition at line 581 of file math_base_inline.cc.
Referenced by BLI_polyfill_edge_calc_rotate_beauty__area().
| MINLINE double sqrt3d | ( | double | d | ) |
Definition at line 61 of file math_base_inline.cc.
References exp, log, MINLINE, and UNLIKELY.
Referenced by solve_cubic().
Definition at line 50 of file math_base_inline.cc.
References exp, float, log, MINLINE, and UNLIKELY.
Referenced by ui_numedit_but_HSVCIRCLE().
Definition at line 72 of file math_base_inline.cc.
References MINLINE, and sqrtf.
Referenced by blender::seq::invGammaCorrect(), mesh_calc_eigen_matrix(), and modify_mesh().
Definition at line 301 of file math_base_inline.cc.
References MINLINE.
Referenced by BKE_brush_jitter_pos(), bm_edge_symmetry_map(), bm_edgexedge_isect_impl(), bm_edgexvert_isect_impl(), BM_mesh_intersect_edges(), bmo_planar_faces_exec(), blender::ed::sculpt_paint::brush_delta_update(), calc_duplicates_fast(), calctrackballvec(), cloth_collision_response_static(), cloth_selfcollision_response_static(), contarget_get_mesh_mat(), blender::ed::curves::curve_draw_event_add(), curve_draw_event_add(), blender::ed::curves::curve_draw_exec_precalc(), curve_draw_exec_precalc(), curve_draw_modal(), blender::ed::curves::curves_draw_modal(), blender::deform_drawing(), deformVerts_do(), dist_squared_ray_to_seg_v3(), dynamic_paint_find_island_border(), EDBM_verts_mirror_cache_begin_ex(), execute_posetree(), gizmo_arrow_test_select(), blender::workbench::CavityEffect::init(), is_quad_convex_v3(), isect_seg_seg_v2_point_ex(), len_squared_vnvn(), blender::bke::pbvh::long_edge_queue_edge_add_recursive(), mat4_to_dquat(), blender::bke::mesh_edges_spherecast(), blender::geometry::mesh_merge_by_distance_connected(), mesh_remove_doubles_on_axis(), mouse_to_plane_slide_zone_distance_squared(), mouse_to_slide_zone_distance_squared(), object_mouse_select_menu(), blender::ed::sculpt_paint::paint_smooth_stroke(), py_bvhtree_find_nearest_range(), blender::eevee::Sampling::sample_ball(), blender::eevee::Sampling::sample_hemisphere(), blender::eevee::Sampling::sample_sphere(), blender::ed::transform::snap_object_project_view3d_ex(), blender::ed::transform::snap_target_uv_fn(), sphere_normal_from_uv(), spline_under_mouse_get(), blender::ed::vse::strip_select_from_preview(), blender::eevee::BackgroundPipeline::sync(), blender::bke::tests::TEST(), ui_do_but_CURVE(), ui_do_but_CURVEPROFILE(), uv_find_nearest_edge(), uv_find_nearest_vert(), uv_image_outset(), uv_nearest_hit_init_dist_px(), v3d_cursor_plane_draw(), warpModifier_do(), and WM_gesture_lasso_modal().
| MINLINE int square_i | ( | int | a | ) |
Definition at line 291 of file math_base_inline.cc.
References MINLINE.
Referenced by area_actionzone_refresh_xy(), BKE_pbvh_get_grid_num_faces(), ED_image_paint_tile_find(), ED_image_paint_tile_push(), blender::draw::pbvh::ensure_vbos_allocated_grids(), blender::draw::pbvh::fill_face_sets_grids(), blender::eevee::Sampling::init(), blender::eevee::ShadowModule::init(), blender::eevee::SphereProbeAtlasCoord::LocationFinder::LocationFinder(), multires_grid_paint_mask_downsample(), multires_mdisps_downsample_hidden(), blender::eevee::Film::pixel_jitter_get(), blender::eevee::Sampling::step(), blender::draw::test_eevee_shadow_page_mask_ex(), blender::draw::test_eevee_shadow_shift_clear(), and utile_alloc().
| MINLINE int square_s | ( | short | a | ) |
Definition at line 286 of file math_base_inline.cc.
References MINLINE.
Referenced by project_state_init().
Definition at line 296 of file math_base_inline.cc.
References MINLINE.
Referenced by blender::draw::pbvh::create_lines_index_grids_flat_layout(), and blender::draw::pbvh::create_tri_index_grids_flat_layout().
Computes the distance between two floats in ulps.
In other words, returns zero if the floats are exactly equal, and otherwise returns 1 plus the number of (unique) representable floats between a and b on the number line.
Notes:
Definition at line 461 of file math_base_inline.cc.
References b, BLI_assert, i, and MINLINE.
Referenced by compare_ff_relative(), normalization_factor_get(), blender::tests::TEST(), and blender::animrig::tests::AnimationEvaluationTest::test_evaluate_layer().
|
static |
Definition at line 56 of file BLI_math_base.h.