Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package stackoverflow;
- import java.awt.Color;
- public class Colors {
- public static void main(String[] args) {
- Color src = new Color(0x8302FA);
- float factor = 1.1f;
- printColor(src.getRGB(), "given");
- printColor(attemptHSV(src, factor), "HSV");
- printColor(attemptRGB(src, factor), "RGB");
- }
- public static int attemptHSV(Color src, float factor) {
- float[] hsv = new float[3];
- Color.RGBtoHSB(src.getRed(), src.getGreen(), src.getBlue(), hsv);
- return Color.HSBtoRGB(hsv[0], hsv[1], cappedValue(factor * hsv[2]));
- }
- public static int attemptRGB(Color src, float factor) {
- factor /= 255.0f;
- return new Color(cappedValue(src.getRed() * factor),
- cappedValue(src.getGreen() * factor),
- cappedValue(src.getBlue() * factor)).getRGB();
- }
- public static void printColor(int color, String message) {
- System.out.println(String.format("%X %s", color & 0x00FFFFFF, message));
- }
- public static float cappedValue(float value) {
- return Math.min(1.0f, value);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement