Java Color Darker darker(Color c, double p)

Here you can find the source of darker(Color c, double p)

Description

Creates a color that is the darker version of the color parameter c.

License

Open Source License

Parameter

Parameter Description
c the color
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

Declaration

public static Color darker(Color c, double p) 

Method Source Code


//package com.java2s;
/*/*  w ww.  java 2  s . c  o  m*/
* 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
*/

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)));
    }
}

Related

  1. darkenColor(Color color)
  2. darker(Color c)
  3. darker(Color c)
  4. darker(Color c, double factor)
  5. darker(Color c, double p)
  6. darker(Color c, float factor)
  7. darker(Color col, double FACTOR)
  8. darker(Color color)
  9. darker(Color color)