From a9f688aa41ce8077de889f90648d5c1656794d78 Mon Sep 17 00:00:00 2001 From: James Ball Date: Thu, 15 Jul 2021 19:52:19 +0100 Subject: [PATCH] Implement logarithmic frequency slider --- src/main/java/sh/ball/gui/Controller.java | 3 ++- src/main/resources/fxml/osci-render.fxml | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/main/java/sh/ball/gui/Controller.java b/src/main/java/sh/ball/gui/Controller.java index 4b185ce..7618ec1 100644 --- a/src/main/java/sh/ball/gui/Controller.java +++ b/src/main/java/sh/ball/gui/Controller.java @@ -52,6 +52,7 @@ import sh.ball.shapes.Vector2; public class Controller implements Initializable, FrequencyListener, MidiListener, Listener { private static final InputStream DEFAULT_OBJ = Controller.class.getResourceAsStream("/models/cube.obj"); + private static final double MAX_FREQUENCY = 20000; private final FileChooser fileChooser = new FileChooser(); private final DirectoryChooser folderChooser = new DirectoryChooser(); @@ -208,7 +209,7 @@ public class Controller implements Initializable, FrequencyListener, MidiListene private Map> initializeSliderMap() { return Map.of( - frequencySlider, audioPlayer::setFrequency, + frequencySlider, f -> audioPlayer.setFrequency(Math.pow(MAX_FREQUENCY, f)), rotateSpeedSlider, rotateEffect::setSpeed, translationSpeedSlider, translateEffect::setSpeed, scaleSlider, scaleEffect::setScale, diff --git a/src/main/resources/fxml/osci-render.fxml b/src/main/resources/fxml/osci-render.fxml index 915f66f..a4f6dbd 100644 --- a/src/main/resources/fxml/osci-render.fxml +++ b/src/main/resources/fxml/osci-render.fxml @@ -100,7 +100,7 @@