From 5f23fe020645f52fed2b7f16e1ff9cc968a6cf71 Mon Sep 17 00:00:00 2001 From: TFiFiE Date: Sat, 28 Jul 2018 19:18:37 +0200 Subject: [PATCH] Configurable threshold for displaying move statistics. --- src/main/java/featurecat/lizzie/Config.java | 1 + .../java/featurecat/lizzie/gui/BoardRenderer.java | 11 +++++------ 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/main/java/featurecat/lizzie/Config.java b/src/main/java/featurecat/lizzie/Config.java index ba25e3330..c44467aa3 100644 --- a/src/main/java/featurecat/lizzie/Config.java +++ b/src/main/java/featurecat/lizzie/Config.java @@ -272,6 +272,7 @@ private JSONObject createDefaultConfig() { ui.put("window-size", new JSONArray("[1024, 768]")); ui.put("window-maximized", false); ui.put("show-dynamic-komi", true); + ui.put("min-playout-ratio-for-stats", 0.0); config.put("ui", ui); return config; diff --git a/src/main/java/featurecat/lizzie/gui/BoardRenderer.java b/src/main/java/featurecat/lizzie/gui/BoardRenderer.java index 51835c1f0..bdc437d7f 100644 --- a/src/main/java/featurecat/lizzie/gui/BoardRenderer.java +++ b/src/main/java/featurecat/lizzie/gui/BoardRenderer.java @@ -503,12 +503,10 @@ private void drawLeelazSuggestions(Graphics2D g) { return; final int MIN_ALPHA = 32; - final int MIN_ALPHA_TO_DISPLAY_TEXT = 64; - final int MAX_ALPHA = maxAlpha = Math.max(maxAlpha, MIN_ALPHA_TO_DISPLAY_TEXT); final double HUE_SCALING_FACTOR = 3.0; final double ALPHA_SCALING_FACTOR = 5.0; - final float GREEN_HUE = Color.RGBtoHSB(0,1,0,null)[0]; - final float CYAN_HUE = Color.RGBtoHSB(0,1,1,null)[0]; + final float GREEN_HUE = Color.RGBtoHSB(0, 1, 0, null)[0]; + final float CYAN_HUE = Color.RGBtoHSB(0, 1, 1, null)[0]; if (!bestMoves.isEmpty()) { @@ -558,7 +556,7 @@ private void drawLeelazSuggestions(Graphics2D g) { float hue = isBestMove ? CYAN_HUE : (float) (-GREEN_HUE * Math.max(0, Math.log(percentPlayouts) / HUE_SCALING_FACTOR + 1)); float saturation = 0.75f; //saturation float brightness = 0.85f; //brightness - int alpha = (int) (MIN_ALPHA + (MAX_ALPHA - MIN_ALPHA) * Math.max(0, Math.log(percentPlayouts) / + int alpha = (int) (MIN_ALPHA + (maxAlpha - MIN_ALPHA) * Math.max(0, Math.log(percentPlayouts) / ALPHA_SCALING_FACTOR + 1)); // if (uiConfig.getBoolean("shadows-enabled")) // alpha = 255; @@ -586,7 +584,8 @@ private void drawLeelazSuggestions(Graphics2D g) { } - if (branch == null && (alpha >= MIN_ALPHA_TO_DISPLAY_TEXT || hasMaxWinrate) || (Lizzie.frame.mouseHoverCoordinate != null && coordinates[0] == Lizzie.frame.mouseHoverCoordinate[0] && coordinates[1] == Lizzie.frame.mouseHoverCoordinate[1])) { + if ((branch == null && (hasMaxWinrate || percentPlayouts >= uiConfig.getDouble("min-playout-ratio-for-stats"))) || + (Lizzie.frame.mouseHoverCoordinate != null && coordinates[0] == Lizzie.frame.mouseHoverCoordinate[0] && coordinates[1] == Lizzie.frame.mouseHoverCoordinate[1])) { double roundedWinrate = Math.round(move.winrate * 10) / 10.0; if (uiConfig.getBoolean("win-rate-always-black") && !Lizzie.board.getData().blackToPlay) { roundedWinrate = 100.0 - roundedWinrate;