From 9d8a28fb25943a6a86b556ff20bd554103f4b0ef Mon Sep 17 00:00:00 2001 From: Sebastian Cabrera Date: Wed, 31 Jan 2018 14:21:31 -0500 Subject: [PATCH] speed limit --- Painter/src/bz/bronze/painter/Tick.java | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/Painter/src/bz/bronze/painter/Tick.java b/Painter/src/bz/bronze/painter/Tick.java index 4877bdd..9d9bd3c 100644 --- a/Painter/src/bz/bronze/painter/Tick.java +++ b/Painter/src/bz/bronze/painter/Tick.java @@ -2,6 +2,8 @@ package bz.bronze.painter; public class Tick implements Runnable { public Thread tick = new Thread(this); + long taskTime = 0; + long sleepTime = 1000/60; public Tick() { @@ -11,6 +13,8 @@ public class Tick implements Runnable { public void run() { while(Painter.isRunning) { + taskTime = System.currentTimeMillis(); + Window.opacitySliderLabel.setText("Opacity: " + Window.opacitySlider.getValue()); Window.sizeSliderLabel.setText("Size: " + Window.sizeSlider.getValue()); @@ -28,6 +32,15 @@ public class Tick implements Runnable { } Context.swapBuffers(Window.paintArea.getGraphics()); + + taskTime = System.currentTimeMillis()-taskTime; + if (sleepTime-taskTime > 0 ) { + try { + Thread.sleep(sleepTime-taskTime); + } catch (InterruptedException e) { + e.printStackTrace(); + } + } } } } \ No newline at end of file