Drawing with a Gradient Color : Gradient Paint « 2D Graphics « Java Tutorial






import java.awt.Color;
import java.awt.GradientPaint;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.Rectangle;

import javax.swing.JComponent;
import javax.swing.JFrame;

public class BasicDraw {
  public static void main(String[] args) {
    new BasicDraw();
  }

  BasicDraw() {
    JFrame frame = new JFrame();

    frame.add(new MyComponent());

    frame.setSize(300, 300);
    frame.setVisible(true);
  }

}

class MyComponent extends JComponent {

  public void paint(Graphics g) {
    Graphics2D g2d = (Graphics2D) g;

    Color startColor = Color.red;
    Color endColor = Color.blue;

    int startX = 10, startY = 20, endX = 30, endY = 40;
    
    GradientPaint gradient = new GradientPaint(startX, startY, startColor, endX, endY, endColor);
    g2d.setPaint(gradient);

    g2d.draw(new Rectangle(20,20,200,200));

  }
}








16.18.Gradient Paint
16.18.1.Gradients: a smooth blending of shades from light to dark or from one color to another
16.18.2.Control the direction of Gradients
16.18.3.Horizontal Gradients
16.18.4.Vertical Gradient Paint
16.18.5.Gradients in the middle
16.18.6.Cyclic Gradient PaintCyclic Gradient Paint
16.18.7.Acyclic Gradient PaintAcyclic Gradient Paint
16.18.8.String gradient paintString gradient paint
16.18.9.A non-cyclic gradient
16.18.10.Drawing with a Gradient Color