Java examples for 2D Graphics:Color
Creates a color that is the darker version of the color parameter c.
/*//from w w w. j a v a 2s. c om * Copyright (c) 2002 and later by MH Software-Entwicklung. All Rights Reserved. * * JTattoo is multiple licensed. If your are an open source developer you can use * it under the terms and conditions of the GNU General Public License version 2.0 * or later as published by the Free Software Foundation. * * see: gpl-2.0.txt * * If you pay for a license you will become a registered user who could use the * software under the terms and conditions of the GNU Lesser General Public License * version 2.0 or later with classpath exception as published by the Free Software * Foundation. * * see: lgpl-2.0.txt * see: classpath-exception.txt * * Registered users could also use JTattoo under the terms and conditions of the * Apache License, Version 2.0 as published by the Apache Software Foundation. * * see: APACHE-LICENSE-2.0.txt */ //package com.java2s; import java.awt.Color; public class Main { /** * Creates a color that is the darker version of the color parameter c. * * @param c the color * @param p the factor to shade the color c in percent from 0 to 100 * * @return a new color value that is a darker version of the color parameter c */ public static Color darker(Color c, double p) { if (c == null) { return null; } double r = c.getRed(); double g = c.getGreen(); double b = c.getBlue(); r -= (r * p) / 100.0; g -= (g * p) / 100.0; b -= (b * p) / 100.0; return createColor((int) r, (int) g, (int) b); } /** * Creates a color object. * * @param r the Red component * @param g the Green component * @param b the Blue component * * @return a color object */ public static Color createColor(int r, int g, int b) { return new Color(((r & 0xFF) << 16) | ((g & 0xFF) << 8) | ((b & 0xFF))); } }