Skip to content

Commit 489eeda

Browse files
committed
Update rand to 0.8
1 parent f8d3d27 commit 489eeda

File tree

17 files changed

+65
-65
lines changed

17 files changed

+65
-65
lines changed

examples/audio/hrtf-noise.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,7 @@ fn model(app: &App) -> Model {
8686
// Initialise the state that we want to live on the audio thread.
8787
let source_position = [0.0; 3].into();
8888
let audio_model = Audio {
89-
rng: SmallRng::from_seed([0; 16]),
89+
rng: SmallRng::seed_from_u64(0),
9090
hrtf_data: HrtfData::new(),
9191
hrtf_processor,
9292
source_position,

generative_design/color/p_1_2_3_03.rs

+4-4
Original file line numberDiff line numberDiff line change
@@ -107,7 +107,7 @@ fn view(app: &App, model: &Model, frame: Frame) {
107107
// count tiles
108108
let mut counter = 0;
109109
// row count and row height
110-
let row_count = rng.gen_range(5, 30);
110+
let row_count = rng.gen_range(5..30);
111111
let row_height = (app.window_rect().h() as i32 / row_count) as i32;
112112

113113
// seperate each line in parts
@@ -120,13 +120,13 @@ fn view(app: &App, model: &Model, frame: Frame) {
120120
// sub fragment of not?
121121
if rng.gen::<f32>() < 0.075 {
122122
// take care of big values
123-
let fragments = rng.gen_range(2, 20);
123+
let fragments = rng.gen_range(2..20);
124124
part_count = part_count + fragments - 1;
125125
for _ in 0..fragments {
126-
parts.push(rng.gen_range(0, 2));
126+
parts.push(rng.gen_range(0..2));
127127
}
128128
} else {
129-
parts.push(rng.gen_range(2, 20));
129+
parts.push(rng.gen_range(2..20));
130130
}
131131
}
132132

generative_design/color/p_1_2_3_04.rs

+4-4
Original file line numberDiff line numberDiff line change
@@ -107,7 +107,7 @@ fn view(app: &App, model: &Model, frame: Frame) {
107107
// count tiles
108108
let mut counter = 0;
109109
// row count and row height
110-
let row_count = rng.gen_range(5, 30);
110+
let row_count = rng.gen_range(5..30);
111111
let row_height = (app.window_rect().h() as i32 / row_count) as i32;
112112

113113
// seperate each line in parts
@@ -120,13 +120,13 @@ fn view(app: &App, model: &Model, frame: Frame) {
120120
// sub fragment of not?
121121
if rng.gen::<f32>() < 0.075 {
122122
// take care of big values
123-
let fragments = rng.gen_range(2, 20);
123+
let fragments = rng.gen_range(2..20);
124124
part_count = part_count + fragments - 1;
125125
for _ in 0..fragments {
126-
parts.push(rng.gen_range(0, 2));
126+
parts.push(rng.gen_range(0..2));
127127
}
128128
} else {
129-
parts.push(rng.gen_range(2, 20));
129+
parts.push(rng.gen_range(2..20));
130130
}
131131
}
132132

generative_design/oscillation_figures/m_2_5_02.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -181,8 +181,8 @@ fn calculate_lissajous_points(app: &App, model: &mut Model) {
181181
* (angle * model.mod_freq_x).cos();
182182
let mut y = (angle * model.freq_y * fmy).sin() * (angle * model.mod_freq_y).cos();
183183

184-
let rx = rng.gen_range(-model.random_offset, model.random_offset + 1.0);
185-
let ry = rng.gen_range(-model.random_offset, model.random_offset + 1.0);
184+
let rx = rng.gen_range(-model.random_offset..model.random_offset + 1.0);
185+
let ry = rng.gen_range(-model.random_offset..model.random_offset + 1.0);
186186

187187
x = (x * (win.w() / 2.0 - 30.0 - model.random_offset) + win.w() / 2.0) + rx;
188188
y = (y * (win.h() / 2.0 - 30.0 - model.random_offset) + win.h() / 2.0) + ry;

generative_design/random_and_noise/m_1_1_01.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ fn view(app: &App, model: &Model, frame: Frame) {
6363

6464
let range = win.w() as usize / 10;
6565
let vertices = (0..=range).map(|i| {
66-
let y = rng.gen_range(win.bottom(), win.top() + 1.0) as f32;
66+
let y = rng.gen_range(win.bottom()..win.top() + 1.0) as f32;
6767
pt2(win.left() + (i as f32 * 10.0), y as f32)
6868
});
6969
draw.polyline()
@@ -74,7 +74,7 @@ fn view(app: &App, model: &Model, frame: Frame) {
7474
let mut rng = StdRng::seed_from_u64(model.act_random_seed);
7575

7676
for x in (0..win.w() as usize).step_by(10) {
77-
let y = rng.gen_range(win.bottom(), win.top() + 1.0) as f32;
77+
let y = rng.gen_range(win.bottom()..win.top() + 1.0) as f32;
7878
draw.ellipse()
7979
.x_y(win.left() + x as f32, y as f32)
8080
.w_h(3.0, 3.0)

generative_design/random_and_noise/m_1_2_01.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -69,8 +69,8 @@ fn view(app: &App, model: &Model, frame: Frame) {
6969

7070
for i in 0..model.count {
7171
// positions
72-
let random_x = rng.gen_range(win.left(), win.right() + 1.0);
73-
let random_y = rng.gen_range(win.bottom(), win.top() + 1.0);
72+
let random_x = rng.gen_range(win.left()..win.right() + 1.0);
73+
let random_y = rng.gen_range(win.bottom()..win.top() + 1.0);
7474
let circle_x = (angle * i as f32).cos() * 300.0;
7575
let circle_y = (angle * i as f32).sin() * 300.0;
7676

generative_design/random_and_noise/m_1_3_02.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ fn view(app: &App, model: &Model, frame: Frame) {
7070
let mut rng = SmallRng::seed_from_u64(model.act_random_seed);
7171

7272
let image = image::ImageBuffer::from_fn(win.w() as u32, win.h() as u32, |_x, _y| {
73-
let r: u8 = rng.gen_range(0, std::u8::MAX);
73+
let r: u8 = rng.gen_range(0..std::u8::MAX);
7474
nannou::image::Rgba([r, r, r, std::u8::MAX])
7575
});
7676

generative_design/shape/p_2_1_2_01.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -79,8 +79,8 @@ fn view(app: &App, model: &Model, frame: Frame) {
7979
let mx = clamp(win.right() + app.mouse.x, 0.0, win.w());
8080
let my = clamp(win.top() - app.mouse.y, 0.0, win.h());
8181

82-
let shift_x = rng.gen_range(-mx, mx + 1.0) / 20.0;
83-
let shift_y = rng.gen_range(-mx, mx + 1.0) / 20.0;
82+
let shift_x = rng.gen_range(-mx..mx + 1.0) / 20.0;
83+
let shift_y = rng.gen_range(-mx..mx + 1.0) / 20.0;
8484

8585
draw.ellipse()
8686
.x_y(pos_x + shift_x, pos_y + shift_y)

generative_design/shape/p_2_1_2_02.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -95,8 +95,8 @@ fn view(app: &App, model: &Model, frame: Frame) {
9595
let pos_x = (win.left() + (tile_w / 2.0)) + tile_w * grid_x as f32;
9696
let pos_y = (win.top() - (tile_h / 2.0)) - tile_h * grid_y as f32;
9797

98-
let shift_x = rng.gen_range(-mx, mx + 1.0) / 20.0;
99-
let shift_y = rng.gen_range(-my, my + 1.0) / 20.0;
98+
let shift_x = rng.gen_range(-mx..mx + 1.0) / 20.0;
99+
let shift_y = rng.gen_range(-my..my + 1.0) / 20.0;
100100

101101
draw.ellipse()
102102
.x_y(pos_x + shift_x, pos_y + shift_y)

generative_design/shape/p_2_1_2_04.rs

+8-8
Original file line numberDiff line numberDiff line change
@@ -77,14 +77,14 @@ fn view(app: &App, model: &Model, frame: Frame) {
7777
let mx = clamp(win.right() + app.mouse.x, 0.0, win.w());
7878
let my = clamp(win.top() - app.mouse.y, 0.0, win.h());
7979

80-
let shift_x1 = mx / 20.0 * rng.gen_range(-1.0, 1.0);
81-
let shift_y1 = my / 20.0 * rng.gen_range(-1.0, 1.0);
82-
let shift_x2 = mx / 20.0 * rng.gen_range(-1.0, 1.0);
83-
let shift_y2 = my / 20.0 * rng.gen_range(-1.0, 1.0);
84-
let shift_x3 = mx / 20.0 * rng.gen_range(-1.0, 1.0);
85-
let shift_y3 = my / 20.0 * rng.gen_range(-1.0, 1.0);
86-
let shift_x4 = mx / 20.0 * rng.gen_range(-1.0, 1.0);
87-
let shift_y4 = my / 20.0 * rng.gen_range(-1.0, 1.0);
80+
let shift_x1 = mx / 20.0 * rng.gen_range(-1.0..1.0);
81+
let shift_y1 = my / 20.0 * rng.gen_range(-1.0..1.0);
82+
let shift_x2 = mx / 20.0 * rng.gen_range(-1.0..1.0);
83+
let shift_y2 = my / 20.0 * rng.gen_range(-1.0..1.0);
84+
let shift_x3 = mx / 20.0 * rng.gen_range(-1.0..1.0);
85+
let shift_y3 = my / 20.0 * rng.gen_range(-1.0..1.0);
86+
let shift_x4 = mx / 20.0 * rng.gen_range(-1.0..1.0);
87+
let shift_y4 = my / 20.0 * rng.gen_range(-1.0..1.0);
8888
let mut points = Vec::new();
8989
points.push(pt2(pos_x + shift_x1, pos_y + shift_y1));
9090
points.push(pt2(pos_x + model.rect_size + shift_x2, pos_y + shift_y2));

generative_design/shape/p_2_1_3_01.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@ fn view(app: &App, model: &Model, frame: Frame) {
9090
//println!("x {} || y {}", win.left() + model.tile_width * grid_x as f32, win.top() - model.tile_height * grid_y as f32);
9191
let scale = model.tile_width / model.tile_height;
9292
draw = draw.scale(scale);
93-
let toggle = rng.gen_range(0, 4);
93+
let toggle = rng.gen_range(0..4);
9494
let rotation = match toggle {
9595
0 => -(PI / 2.0),
9696
1 => 0.0,

generative_design/shape/p_2_1_3_05.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,7 @@ fn view(app: &App, model: &Model, frame: Frame) {
8585
let pos_y = (win.top() - (tile_height / 2.0)) - tile_height * grid_y as f32;
8686

8787
//modules
88-
let heading = rng.gen_range(0, 4);
88+
let heading = rng.gen_range(0..4);
8989

9090
for i in 0..step_size as usize {
9191
let radius = map_range(i, 0, step_size as usize, tile_width, end_size) / 2.0;

generative_design/type/p_3_1_3_03.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -123,7 +123,7 @@ fn view(app: &App, model: &Model, frame: Frame) {
123123
1.0,
124124
);
125125
let line_length = char_size;
126-
let line_angle = rng.gen_range(-PI, PI) * mx * (PI / 2.0);
126+
let line_angle = rng.gen_range(-PI..PI) * mx * (PI / 2.0);
127127
let new_pos_x = line_length * line_angle.cos();
128128
let new_pos_y = line_length * line_angle.sin();
129129

nannou_core/Cargo.toml

+2-2
Original file line numberDiff line numberDiff line change
@@ -12,15 +12,15 @@ num-traits = { version = "0.2.14", default-features = false }
1212
palette = { version = "0.5", default-features = false, features = ["named"] }
1313
# TODO: Need to check support for no-std.
1414
# pennereq = "0.3"
15-
rand = { version = "0.7", default-features = false, features = ["small_rng"] }
15+
rand = { version = "0.8", default-features = false, features = ["small_rng"] }
1616
# TODO: Needs no-std support before we can add text logic to this core.
1717
# rusttype = "0.8"
1818

1919
[features]
2020
default = ["std"]
2121
libm = ["glam/libm", "num-traits/libm", "palette/libm" ]
2222
serde = ["glam/serde", "palette/serializing"]
23-
std = ["glam/std", "num-traits/std", "palette/std", "rand/std"]
23+
std = ["glam/std", "num-traits/std", "palette/std", "rand/std", "rand/std_rng"]
2424

2525
[package.metadata.docs.rs]
2626
features = ["serde", "std"]

nannou_core/src/rand.rs

+5-5
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ pub use rand;
1616
/// the "std" feature enabled.
1717
#[cfg(feature = "std")]
1818
pub fn random_f32() -> f32 {
19-
random()
19+
rand::random()
2020
}
2121

2222
/// A wrapper function around the `random` function that avoids the need for specifying a type in
@@ -27,7 +27,7 @@ pub fn random_f32() -> f32 {
2727
/// the "std" feature enabled.
2828
#[cfg(feature = "std")]
2929
pub fn random_f64() -> f64 {
30-
random()
30+
rand::random()
3131
}
3232

3333
/// A function for generating a random value within the given range.
@@ -38,7 +38,7 @@ pub fn random_f64() -> f64 {
3838
/// If the given `min` is greater than the given `max`, they will be swapped before calling
3939
/// `gen_range` internally to avoid triggering a `panic!`.
4040
///
41-
/// This calls `rand::thread_rng().gen_range(min, max)` internally, in turn using the thread-local
41+
/// This calls `rand::thread_rng().gen_range(min..max)` internally, in turn using the thread-local
4242
/// default random number generator.
4343
///
4444
/// NOTE: This helper function relies on a thread-local RNG and is currently only available with
@@ -49,7 +49,7 @@ where
4949
T: PartialOrd + distributions::uniform::SampleUniform,
5050
{
5151
let (min, max) = if min <= max { (min, max) } else { (max, min) };
52-
rand::thread_rng().gen_range(min, max)
52+
rand::thread_rng().gen_range(min..max)
5353
}
5454

5555
/// Generates and returns a random ascii character.
@@ -68,6 +68,6 @@ pub fn random_ascii() -> char {
6868
abcdefghijklmnopqrstuvwxyz\
6969
0123456789)(*&^%$#@!~. ";
7070

71-
let idx = rand::thread_rng().gen_range(0, ASCIISET.len());
71+
let idx = rand::thread_rng().gen_range(0..ASCIISET.len());
7272
ASCIISET[idx] as char
7373
}

nannou_new/Cargo.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,4 +13,4 @@ edition = "2018"
1313
[dependencies]
1414
cargo = "0.42" # For retrieving the latest `nannou` version and working with cargo-clone.
1515
names = "0.11" # For generating random project names.
16-
rand = "0.7" # For generating random beverages (very important).
16+
rand = "0.8" # For generating random beverages (very important).

nature_of_code/Cargo.toml

+26-26
Original file line numberDiff line numberDiff line change
@@ -211,17 +211,17 @@ path = "chp_04_systems/4_10_exercise_particle_repel.rs"
211211
[[example]]
212212
name = "6_01_seek"
213213
path = "chp_06_agents/6_01_seek.rs"
214-
[[example]]
215-
name = "6_01_seek_trail"
214+
[[example]]
215+
name = "6_01_seek_trail"
216216
path = "chp_06_agents/6_01_seek_trail.rs"
217-
[[example]]
218-
name = "6_02_arrive"
217+
[[example]]
218+
name = "6_02_arrive"
219219
path = "chp_06_agents/6_02_arrive.rs"
220-
[[example]]
221-
name = "6_03_stay_within_walls"
220+
[[example]]
221+
name = "6_03_stay_within_walls"
222222
path = "chp_06_agents/6_03_stay_within_walls.rs"
223-
[[example]]
224-
name = "6_03_stay_within_walls_trail"
223+
[[example]]
224+
name = "6_03_stay_within_walls_trail"
225225
path = "chp_06_agents/6_03_stay_within_walls_trail.rs"
226226

227227
# Chapter 7 Cellular Automata
@@ -248,34 +248,34 @@ name = "7_hexagon_cells"
248248
path = "chp_07_cellular_automata/7_hexagon_cells.rs"
249249

250250
# Chapter 8 Fractals
251-
[[example]]
252-
name = "8_1_recursion"
251+
[[example]]
252+
name = "8_1_recursion"
253253
path = "chp_08_fractals/8_1_recursion.rs"
254-
[[example]]
255-
name = "8_2_recursion"
254+
[[example]]
255+
name = "8_2_recursion"
256256
path = "chp_08_fractals/8_2_recursion.rs"
257-
[[example]]
258-
name = "8_3_recursion"
257+
[[example]]
258+
name = "8_3_recursion"
259259
path = "chp_08_fractals/8_3_recursion.rs"
260-
[[example]]
261-
name = "8_4_cantor_set"
260+
[[example]]
261+
name = "8_4_cantor_set"
262262
path = "chp_08_fractals/8_4_cantor_set.rs"
263-
[[example]]
264-
name = "8_4_tree"
263+
[[example]]
264+
name = "8_4_tree"
265265
path = "chp_08_fractals/8_4_tree.rs"
266266

267267
# Chapter 9 Genetic Algorithms
268-
[[example]]
269-
name = "9_1_ga_shakespeare"
268+
[[example]]
269+
name = "9_1_ga_shakespeare"
270270
path = "chp_09_genetic_algorithms/9_1_ga_shakespeare.rs"
271271

272272
# Chapter 10 Neural Networks
273-
[[example]]
274-
name = "10_01_simple_perceptron"
273+
[[example]]
274+
name = "10_01_simple_perceptron"
275275
path = "chp_10_neural_networks/10_01_simple_perceptron.rs"
276-
[[example]]
277-
name = "10_02_seeking_neural"
276+
[[example]]
277+
name = "10_02_seeking_neural"
278278
path = "chp_10_neural_networks/10_02_seeking_neural.rs"
279-
[[example]]
280-
name = "10_03_network_viz"
279+
[[example]]
280+
name = "10_03_network_viz"
281281
path = "chp_10_neural_networks/10_03_network_viz.rs"

0 commit comments

Comments
 (0)