X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Futil%2FColorUtils.java;h=5db333fa8d833589c55c4d7b6dfffa5c0dbbb9e2;hb=61ff8fb4efa315c35149c9d11850d99e3d00c441;hp=16ff25927b4e0dafa19e35be927cd774e6393d4a;hpb=37651a9d177de05ff938276071c16ba95ac44c73;p=jalview.git diff --git a/src/jalview/util/ColorUtils.java b/src/jalview/util/ColorUtils.java index 16ff259..5db333f 100644 --- a/src/jalview/util/ColorUtils.java +++ b/src/jalview/util/ColorUtils.java @@ -24,6 +24,8 @@ package jalview.util; +import java.util.Locale; + import java.awt.Color; import java.util.HashMap; import java.util.Map; @@ -31,9 +33,6 @@ import java.util.Random; public class ColorUtils { - // constant borrowed from java.awt.Color - private static final float FACTOR = 0.7f; - private static final int MAX_CACHE_SIZE = 1729; /* * a cache for colours generated from text strings @@ -327,7 +326,7 @@ public class ColorUtils return null; } Color col = null; - name = name.toLowerCase(); + name = name.toLowerCase(Locale.ROOT); // or make a static map; or use reflection on the field name switch (name) @@ -375,63 +374,4 @@ public class ColorUtils return col; } - - /** - * Generates a colour that is interpolated between - * colour.darker() and colour.brighter() in - * proportion as value is between min and - * max. Note that the 'neutral point' (unchanged colour) is - * closer to 'brighter' than to 'darker'as this is a geometric range. - * - * @param value - * @param min - * @param max - * @param colour - * @return - */ - public static Color getGraduatedColour(float value, float min, float max, - Color colour) - { - /* - * this computes the equivalent of - * getGraduatedColour(value, min, colour.darker(), max, colour.brighter()) - * but avoiding object creation except for the return value - */ - if (value < min) - { - value = min; - } - if (value > max) - { - value = max; - } - - int r = colour.getRed(); - int g = colour.getGreen(); - int b = colour.getBlue(); - - /* - * rgb for colour.darker(): - */ - float minR = r * FACTOR; - float minG = g * FACTOR; - float minB = b * FACTOR; - - /* - * rgb for colour.brighter(): - */ - float maxR = Math.min(255f, r / FACTOR); - float maxG = Math.min(255f, g / FACTOR); - float maxB = Math.min(255f, b / FACTOR); - - /* - * interpolation - */ - float p = (value - min) / (max - min); - int newR = (int) (minR + p * (maxR - minR)); - int newG = (int) (minG + p * (maxG - minG)); - int newB = (int) (minB + p * (maxB - minB)); - - return new Color(newR, newG, newB, colour.getAlpha()); - } }