Skip to content

Commit bd16983

Browse files
committed
Replace pause with speed
1 parent 6af98e8 commit bd16983

1 file changed

Lines changed: 8 additions & 10 deletions

File tree

src/app.rs

Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -25,8 +25,8 @@ pub struct KinematicsApp {
2525

2626
/// Current direction.
2727
current_target_pos: Pos2,
28-
/// Stop following.
29-
paused: bool,
28+
/// Movement speed.
29+
speed: f32,
3030
/// Shows that parameters have changed.
3131
regenerate: bool,
3232
}
@@ -40,7 +40,7 @@ impl Default for KinematicsApp {
4040
width: 1.0,
4141
width_factor: 0.0,
4242
current_target_pos: Pos2::default(),
43-
paused: false,
43+
speed: 1.0,
4444
regenerate: true,
4545
}
4646
}
@@ -59,9 +59,7 @@ impl KinematicsApp {
5959
ui.available_rect_before_wrap(),
6060
);
6161

62-
if !self.paused {
63-
self.current_target_pos = target_pos;
64-
};
62+
self.current_target_pos = target_pos;
6563
self.paint(&painter, self.current_target_pos);
6664

6765
// Make sure we allocate what we used (everything)
@@ -86,16 +84,15 @@ impl KinematicsApp {
8684

8785
/// Adds UI options for the app.
8886
fn add_ui_options(&mut self, ui: &mut Ui) {
89-
ui.checkbox(&mut self.paused, "Paused");
90-
87+
let speed = ui.add(Slider::new(&mut self.speed, 0.0..=10.0).text("Speed"));
9188
let n_segments =
9289
ui.add(Slider::new(&mut self.segments_amount, 1..=500).text("segments number"));
9390
let length = ui.add(Slider::new(&mut self.length, 0.1..=100.0).text("length"));
9491
let width = ui.add(Slider::new(&mut self.width, 0.1..=100.0).text("width"));
9592
let width_factor =
9693
ui.add(Slider::new(&mut self.width_factor, -5.0..=5.0).text("width factor"));
9794

98-
if [n_segments, length, width, width_factor]
95+
if [n_segments, length, width, width_factor, speed]
9996
.iter()
10097
.any(eframe::egui::Response::changed)
10198
{
@@ -155,7 +152,8 @@ impl App for KinematicsApp {
155152
.last()
156153
.is_none_or(|segment| segment.end().x > 0.0)
157154
{
158-
vec2(-1.0, 1.0)
155+
let speed = self.speed;
156+
vec2(-speed, speed)
159157
} else {
160158
Vec2::ZERO
161159
};

0 commit comments

Comments
 (0)