From 7eea1aaee90792c2d57fc73be3612d50785f9dde Mon Sep 17 00:00:00 2001 From: Ahmet Inan Date: Mon, 15 Apr 2024 16:04:39 +0200 Subject: [PATCH] clamp before taking the square root --- app/src/main/java/xdsopl/robot36/MainActivity.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/xdsopl/robot36/MainActivity.java b/app/src/main/java/xdsopl/robot36/MainActivity.java index 8bf73f9..fc99a4f 100644 --- a/app/src/main/java/xdsopl/robot36/MainActivity.java +++ b/app/src/main/java/xdsopl/robot36/MainActivity.java @@ -75,8 +75,8 @@ public class MainActivity extends AppCompatActivity { syncPulse = syncPulseFilter.avg(syncPulse.set(baseBand).mul(syncPulseOscillator.rotate())); scanLine = scanLineFilter.avg(scanLine.set(baseBand).mul(scanLineOscillator.rotate())); float level = powerDelay.push(syncPulse.norm()) / powerAvg.avg(baseBand.norm()); - float value = 0.5f * (scanLineDemod.demod(scanLine) + 1); - int x = (int) Math.round(Math.min(Math.max(255 * Math.sqrt(value), 0), 255)); + float value = Math.min(Math.max(0.5f * (scanLineDemod.demod(scanLine) + 1), 0), 1); + int x = (int) Math.round(255 * Math.sqrt(value)); scopePixels[scopeWidth * curLine + curColumn] = 0xff000000 | 0x00010101 * x; if (++curColumn >= scopeWidth) { curColumn = 0;