pub fn log_grid_spacer(log_base: i64) -> GridSpacer {
    let log_base = log_base as f64;
    let get_step_sizes = move |input: GridInput| -> Vec<GridMark> {
        // The distance between two of the thinnest grid lines is "rounded" up
        // to the next-bigger power of base
        let smallest_visible_unit = next_power(input.base_step_size, log_base);

        let step_sizes = [
            smallest_visible_unit,
            smallest_visible_unit * log_base,
            smallest_visible_unit * log_base * log_base,
        ];

        generate_marks(step_sizes, input.bounds)
    };

    Box::new(get_step_sizes)
}
/// Recursively splits the grid into `base` subdivisions (e.g. 100, 10, 1).
///
/// The logarithmic base, expressing how many times each grid unit is subdivided.
/// 10 is a typical value, others are possible though.
Recursively splits the grid into `base` subdivisions .
The logarithmic base, expressing how many times each grid unit is subdivided.
10 is a typical value, others are possible though.
Recursively splits the grid into ` base ` subdivisions . The logarithmic base expressing how many times each grid unit is subdivided . 10 is a typical value others are possible though .
pub fn log_grid_spacer(log_base: i64) -> GridSpacer {
    let log_base = log_base as f64;
    let get_step_sizes = move |input: GridInput| -> Vec<GridMark> {
        // The distance between two of the thinnest grid lines is "rounded" up
        // to the next-bigger power of base
        let smallest_visible_unit = next_power(input.base_step_size, log_base);
        let step_sizes = [
            smallest_visible_unit,
            smallest_visible_unit * log_base,
            smallest_visible_unit * log_base * log_base,
        ];
        generate_marks(step_sizes, input.bounds)
    };
    Box::new(get_step_sizes)
}
pub fn log_grid_spacer ( log_base : i64 ) -> GridSpacer { let log_base = log_base as f64 ; let get_step_sizes = move | input : GridInput | -> Vec < GridMark > { // The distance between two of the thinnest grid lines is "rounded" up // to the next-bigger power of base let smallest_visible_unit = next_power ( input . base_step_size , log_base ) ; let step_sizes = [ smallest_visible_unit , smallest_visible_unit * log_base , smallest_visible_unit * log_base * log_base , ] ; generate_marks ( step_sizes , input . bounds ) } ; Box :: new ( get_step_sizes ) }
Recursively splits the grid into `base` subdivisions (e.g.
Recursively splits the grid into ` base ` subdivisions ( e . g .
log_base
i64
log_base
i64