pub fn do_erosion(
    map_size_lg: MapSizeLg,
    _max_uplift: f32,
    n_steps: usize,
    seed: &RandomField,
    rock_strength_nz: &(impl NoiseFn<[f64; 3]> + Sync),
    oldh: impl Fn(usize) -> f32 + Sync,
    oldb: impl Fn(usize) -> f32 + Sync,
    is_ocean: impl Fn(usize) -> bool + Sync,
    uplift: impl Fn(usize) -> f64 + Sync,
    n: impl Fn(usize) -> f32 + Sync,
    theta: impl Fn(usize) -> f32 + Sync,
    kf: impl Fn(usize) -> f64 + Sync,
    kd: impl Fn(usize) -> f64 + Sync,
    g: impl Fn(usize) -> f32 + Sync,
    epsilon_0: impl Fn(usize) -> f32 + Sync,
    alpha: impl Fn(usize) -> f32 + Sync,
    height_scale: impl Fn(f32) -> f64 + Sync,
    k_d_scale: f64,
    k_da_scale: impl Fn(f64) -> f64,
    threadpool: &ThreadPool,
    report_progress: &dyn Fn(f64)
) -> (Box<[f64]>, Box<[f64]>)
Expand description

Perform erosion n times.