Blender  V3.3
Functions
math_base.c File Reference
#include "BLI_math.h"
#include "BLI_strict_flags.h"

Go to the source code of this file.

Functions

int pow_i (int base, int exp)
 
double double_round (double x, int ndigits)
 
float floor_power_of_10 (float f)
 
float ceil_power_of_10 (float f)
 

Function Documentation

◆ ceil_power_of_10()

float ceil_power_of_10 ( float  f)

Ceiling to the nearest power of 10, e.g.:

  • 15.0 -> 100.0
  • 0.015 -> 0.1
  • 1.0 -> 1.0
Parameters
fValue to ceiling, must be over 0.0.
Note
If we wanted to support signed values we could if this becomes necessary.

Definition at line 73 of file math_base.c.

References BLI_assert, floorf, and powf.

Referenced by blender::tests::TEST(), and v3d_cursor_plane_draw().

◆ double_round()

double double_round ( double  x,
int  ndigits 
)
Parameters
ndigitsmust be between 0 and 21.

Definition at line 27 of file math_base.c.

References fabs(), CCL_NAMESPACE_BEGIN::isfinite(), pow(), x, y, and z.

Referenced by bc_sanitize_v3(), Color_to_tuple_ex(), Euler_to_tuple_ex(), Quaternion_to_tuple_ext(), BCMatrix::sanitize(), and Vector_to_tuple_ex().

◆ floor_power_of_10()

float floor_power_of_10 ( float  f)

Floor to the nearest power of 10, e.g.:

  • 15.0 -> 10.0
  • 0.015 -> 0.01
  • 1.0 -> 1.0
Parameters
fValue to floor, must be over 0.0.
Note
If we wanted to support signed values we could if this becomes necessary.

Definition at line 64 of file math_base.c.

References BLI_assert, ceilf, and powf.

Referenced by blender::tests::TEST().

◆ pow_i()

int pow_i ( int  base,
int  exp 
)

Definition at line 12 of file math_base.c.

References BLI_assert, exp(), and result.

Referenced by multires_create_grids_in_unsubdivided_base_mesh(), and paint_proj_new_stroke().