Switch to full style
General Java code examples
Post a reply

Gradient Color in java

Tue Nov 11, 2008 6:04 pm

Gradient Color in java
Code:
import java.awt.*;
import javax.swing.*;
import java.awt.geom.Ellipse2D;
import java.awt.geom.Rectangle2D;

public class ColorGradientExample extends JPanel{
    public void paint(Graphics g) {
        Graphics2D g2 = (Graphics2D)g;
        Dimension dim = getSize();
        g2.translate(dim.width / 2, dim.height / 2);
        Color[] color = {
        Color.white, Color.lightGray, Color.gray, Color.darkGray,
        Color.black, Color.red, Color.pink, Color.orange,
        Color.yellow, Color.green, Color.magenta, Color.cyan, Color.blue
        
};
        float size = 30;
        float x = -size * color.length / 2;
        float y = -size * 3 / 2;
        for (int j = 0; j < color.length; j++) {
        Ellipse2D shape = new Ellipse2D.Float(+ size * (float)j, y, size, size);
          g2.setPaint(color[j]);
          g2.fill(shape);
        }
        y += size;
        Color color1 = Color.green;
        Color color2 = Color.blue;
        for (int j = 0; j < color.length; j++) {
        float num = (float)/ (float)color.length;
        int red = (int)(color2.getRed() * num + color1.getRed() * (- num));
        int green = (int)(color2.getGreen() * num +
                            color1.getGreen() * (- num));
        int blue = (int)(color2.getBlue() * num +
                           color1.getBlue() * (- num));
          Color co = new Color(red, green, blue);
         Ellipse2D shape = new Ellipse2D.Float(
              x + size * (float)j, y, size, size);
          g2.setPaint(co);
          g2.fill(shape);
        }
        y += size;
        color1 = Color.red;
        for (int j = 0; j < color.length; j++) {
          int alpha = (int)(255 * (float)/ (float)color.length);
          Color co = new Color(color1.getRed(), color1.getGreen(),
                              color1.getBlue(), alpha);
         Ellipse2D shape = new Ellipse2D.Float(
              x + size * (float)j, y, size, size);
          g2.setPaint(co);
          g2.fill(shape);
        }
   y -= size * 2;
   Rectangle2D frame = new Rectangle2D.Float(x, y, size * color.length, size * 3);
   g2.setPaint(Color.black);
   g2.draw(frame);
      }
   public static void main(String[] args) {
    JFrame frame = new JFrame("Color Gradient Example");
    frame.getContentPane().add(new ColorGradientExample());
    frame.setSize(450, 300);
    frame.show();
  }
}
 



Attachments
colorGradient.gif
output
colorGradient.gif (9.84 KiB) Viewed 9123 times

Post a reply
  Related Posts  to : Gradient Color in java
 gradient background color using CSS     -  
 java Color Components     -  
 Color representation in Java     -  
 Changing the color of a graph draw in java     -  
 Ball Color Match 2D Java Game Version 1.0     -  
 draw Round gradient     -  
 Calculating image Gradient     -  
 Color and CSS     -  
 Help needed in Color class     -  
 change background color with RGB     -  

Topic Tags

Java Graphics