pub fn arange_grid<R, S, const N: usize>(
    range: R,
    step: S
) -> ArangeGrid<R::Item, N>where
    R: ToArangeGrid<S, N>,
Expand description

Creates a grid space over the range made up of fixed step intervals

use iter_num_tools::arange_grid;

let it = arange_grid([0.0, 0.0]..[1.0, 2.0], 0.5);
assert!(it.eq([
    [0.0, 0.0], [0.5, 0.0],
    [0.0, 0.5], [0.5, 0.5],
    [0.0, 1.0], [0.5, 1.0],
    [0.0, 1.5], [0.5, 1.5],
]));

// different step count in each direction
let it = arange_grid([0.0, 0.0]..[1.0, 2.0], [0.5, 1.0]);
assert!(it.eq([
    [0.0, 0.0], [0.5, 0.0],
    [0.0, 1.0], [0.5, 1.0],
]));

// even nd spaces
let it = arange_grid([0.0, 0.0, 0.0]..[2.0, 2.0, 2.0], 1.0);
assert!(it.eq([
    [0.0, 0.0, 0.0], [1.0, 0.0, 0.0],
    [0.0, 1.0, 0.0], [1.0, 1.0, 0.0],

    [0.0, 0.0, 1.0], [1.0, 0.0, 1.0],
    [0.0, 1.0, 1.0], [1.0, 1.0, 1.0],
]));