Skip to main content

fui_core/common/
rounding.rs

1pub fn round_layout_value(value: f32, dpi_scale: f32) -> f32 {
2    if (dpi_scale - 1.0f32).abs() < 0.0000015f32 {
3        value.round()
4    } else {
5        let mut new_value = (value * dpi_scale).round() / dpi_scale;
6        if new_value.is_infinite()
7            || new_value.is_nan()
8            || (std::f32::MAX - new_value) < 0.0000015f32
9        {
10            new_value = value;
11        }
12        new_value
13    }
14}