Blender V5.0
node_math.h File Reference
#include "vector2.h"
#include "vector4.h"

Go to the source code of this file.

Macros

#define vector3   point

Functions

float safe_divide (float a, float b)
vector safe_divide (vector a, vector b)
float safe_modulo (float a, float b)
float safe_floored_modulo (float a, float b)
float sqr (float a)
vector2 round (vector2 a)
vector4 round (vector4 a)
float fract (float a)
float smoothmin (float a, float b, float c)
float pingpong (float a, float b)
float safe_sqrt (float a)
float safe_log (float a, float b)
vector project (vector v, vector v_proj)
vector snap (vector a, vector b)
float wrap (float value, float max, float min)
point wrap (point value, point max, point min)
point compatible_faceforward (point vec, point incident, point reference)
matrix euler_to_mat (point euler)
float average (point a)

Macro Definition Documentation

◆ vector3

#define vector3   point

Definition at line 8 of file node_math.h.

Function Documentation

◆ average()

float average ( point a)

Definition at line 144 of file node_math.h.

Referenced by background_cdf(), bsdf_alloc(), bsdf_hair_huang_sample(), bsdf_microfacet_eval(), bsdf_microfacet_sample(), bsdf_microfacet_setup_fresnel_conductor(), bsdf_microfacet_setup_fresnel_dielectric(), bsdf_microfacet_setup_fresnel_dielectric_tint(), bsdf_microfacet_setup_fresnel_f82_tint(), bsdf_microfacet_setup_fresnel_generalized_schlick(), bsdf_ray_portal_setup(), bsdf_transparent_setup(), bssrdf_alloc(), bssrdf_setup(), Object::compute_volume_step_size(), ConvertNode::constant_fold(), btSoftBodyHelpers::Draw(), film_calculate_shadow_catcher_matte_with_shadow(), film_write_data_passes(), fresnel_dielectric(), SkyTextureNode::get_sun_average_radiance(), integrate_background(), integrate_surface_holdout(), kernel_curve_shadow_transparency_evaluate(), LightTreeEmitter::LightTreeEmitter(), merge_layer_render_time(), merge_render_time(), microfacet_ggx_preserve_energy(), osl_closure_generalized_schlick_bsdf_setup(), blender::ed::sculpt_paint::paint_stroke_sample_average(), precompute_ggx_E(), precompute_ggx_glass_E(), blender::ed::sculpt_paint::expand::reposition_pivot(), set_attribute(), set_attribute(), set_attribute(), set_attribute(), set_attribute(), set_attribute(), blender::io::usd::USDMaterialReader::set_node_input(), surface_shader_ao(), surface_shader_average_normal(), surface_shader_average_roughness(), svm_node_attr_store(), svm_node_attr_store(), svm_node_convert(), svm_node_tex_magic(), and ColorSpaceManager::to_scene_linear().

◆ compatible_faceforward()

point compatible_faceforward ( point vec,
point incident,
point reference )

Definition at line 118 of file node_math.h.

References dot().

◆ euler_to_mat()

matrix euler_to_mat ( point euler)

Definition at line 123 of file node_math.h.

References cos, and sin.

◆ fract()

float fract ( float a)

Definition at line 59 of file node_math.h.

References floor.

Referenced by pingpong().

◆ pingpong()

float pingpong ( float a,
float b )

Definition at line 76 of file node_math.h.

References abs, b, and fract().

◆ project()

vector project ( vector v,
vector v_proj )

◆ round() [1/2]

vector2 round ( vector2 a)

Definition at line 49 of file node_math.h.

References floor.

◆ round() [2/2]

vector4 round ( vector4 a)

Definition at line 54 of file node_math.h.

References floor.

◆ safe_divide() [1/2]

float safe_divide ( float a,
float b )

Definition at line 10 of file node_math.h.

References b.

Referenced by snap().

◆ safe_divide() [2/2]

vector safe_divide ( vector a,
vector b )

Definition at line 15 of file node_math.h.

References b.

◆ safe_floored_modulo()

float safe_floored_modulo ( float a,
float b )

Definition at line 27 of file node_math.h.

References b, and floor.

Referenced by svm_math().

◆ safe_log()

float safe_log ( float a,
float b )

Definition at line 86 of file node_math.h.

References b, and log.

◆ safe_modulo()

float safe_modulo ( float a,
float b )

Definition at line 22 of file node_math.h.

References b, and fmod().

Referenced by svm_math().

◆ safe_sqrt()

float safe_sqrt ( float a)

Definition at line 81 of file node_math.h.

References sqrt.

Referenced by microfacet_fresnel().

◆ smoothmin()

float smoothmin ( float a,
float b,
float c )

Definition at line 65 of file node_math.h.

References abs, b, max, and min.

◆ snap()

◆ sqr()

float sqr ( float a)

Definition at line 32 of file node_math.h.

◆ wrap() [1/2]

float wrap ( float value,
float max,
float min )

Definition at line 103 of file node_math.h.

References floor, max, and min.

Referenced by acf_fcurve_name(), achannel_is_part_of_disconnected_slot(), blender::bke::action_blend_read_data(), blender::bke::action_blend_write(), blender::bke::action_foreach_id(), blender::bke::action_free_data(), action_preview_render_prepare(), ANIM_animchannel_keyframes_loop(), ANIM_animdata_filter(), animchannels_delete_containers(), blender::ed::greasepencil::apply_eval_grease_pencil_data(), blender::ed::object::apply_objects_internal(), BKE_grease_pencil_has_curve_with_type(), BKE_grease_pencil_material_index_remove(), BKE_grease_pencil_material_index_used(), BKE_grease_pencil_material_remap(), BKE_grease_pencil_nomain_to_grease_pencil(), BKE_grease_pencil_point_coords_apply(), BKE_grease_pencil_point_coords_apply_with_mat4(), BKE_grease_pencil_point_coords_get(), BKE_grease_pencil_stroke_point_count(), BKE_grease_pencil_vgroup_name_update(), BKE_image_stamp_buf(), blf_font_wrap_apply(), blinn_specular(), BPy_IDGroup_MapDataToPy(), blender::bke::greasepencil::clear_vertex_groups(), click_select_channel_grease_pencil_layer_group(), convert_grease_pencil_stroke_hardness_to_softness(), blender::ed::greasepencil::copy_layer_group_content(), blender::io::usd::create_usd_preview_shader(), blender::bke::CurvesFieldContext::CurvesFieldContext(), blender::ed::greasepencil::undo::StepDrawingGeometryBase::decode_valid_drawingtype_at_index_ensure(), do_2d_mapping(), draw_nla_main_data(), ED_anim_ale_fcurve_delete(), ED_grease_pencil_join_objects_exec(), fix_curve_nurbs_knot_mode_custom(), blender::bke::GeometryFieldContext::GeometryFieldContext(), get_keyframe_extents(), blender::io::usd::get_node_tex_image_wrap(), blender::ed::object::grease_pencil_clear_from_vgroup(), grease_pencil_initialize_drawing_user_counts_after_read(), blender::ed::transform::grease_pencil_layer_apply_trans_data(), blender::bke::tests::ArmatureDeformTestBase::grease_pencil_test(), blender::ed::transform::grease_pencil_transdata_add_fake_drawing_users(), blender::ed::transform::grease_pencil_transdata_remove_fake_drawing_users(), idprop_py_from_idp_idparray(), blender::ed::greasepencil::join_object_with_active(), blender::ui::greasepencil::LayerViewItemDragController::LayerViewItemDragController(), metadata_box_height_get(), blender::ed::object::object_origin_set_exec(), blender::ed::animation::pastebuf_find_matching_copybuf_item(), blender::bke::bake::prepare_geometry_for_bake_recursive(), blender::io::usd::USDBasisCurvesReader::read_curve_sample(), rearrange_layered_action_slots(), blender::ed::vse::sequencer_write_copy_paste_file(), blender::io::grease_pencil::shift_to_bounds_center(), space_text_draw_wrapped(), svm_vector_math(), template_search_add_button_name(), txt_find_string(), ui_rna_collection_search_update_fn(), blender::bke::greasepencil::validate_drawing_vertex_groups(), versioning_grease_pencil_stroke_radii_scaling(), WM_cursor_grab_enable(), wm_macro_modal(), wm_operator_invoke(), wrap(), and blender::math::wrap_coord().

◆ wrap() [2/2]

point wrap ( point value,
point max,
point min )

Definition at line 109 of file node_math.h.

References max, min, and wrap().