GradientPaint (Java 2 Platform SE 5.0) (original) (raw)
java.awt
Class GradientPaint
java.lang.Object
java.awt.GradientPaint
All Implemented Interfaces:
public class GradientPaint
extends Object
implements Paint
The GradientPaint
class provides a way to fill a Shape with a linear color gradient pattern. If Point P1 with Color C1 and Point
P2 withColor
C2 are specified in user space, theColor
on the P1, P2 connecting line is proportionally changed from C1 to C2. Any point P not on the extended P1, P2 connecting line has the color of the point P' that is the perpendicular projection of P on the extended P1, P2 connecting line. Points on the extended line outside of the P1, P2 segment can be colored in one of two ways.
- If the gradient is cyclic then the points on the extended P1, P2 connecting line cycle back and forth between the colors C1 and C2.
- If the gradient is acyclic then points on the P1 side of the segment have the constant
Color
C1 while points on the P2 side have the constantColor
C2.
See Also:
Paint, Graphics2D.setPaint(java.awt.Paint)
Field Summary |
---|
Fields inherited from interface java.awt.Transparency |
---|
BITMASK, OPAQUE, TRANSLUCENT |
Constructor Summary |
---|
[GradientPaint](../../java/awt/GradientPaint.html#GradientPaint%28float, float, java.awt.Color, float, float, java.awt.Color%29)(float x1, float y1,Color color1, float x2, float y2,Color color2) Constructs a simple acyclic GradientPaint object. |
[GradientPaint](../../java/awt/GradientPaint.html#GradientPaint%28float, float, java.awt.Color, float, float, java.awt.Color, boolean%29)(float x1, float y1,Color color1, float x2, float y2,Color color2, boolean cyclic) Constructs either a cyclic or acyclic GradientPaint object depending on the boolean parameter. |
[GradientPaint](../../java/awt/GradientPaint.html#GradientPaint%28java.awt.geom.Point2D, java.awt.Color, java.awt.geom.Point2D, java.awt.Color%29)(Point2D pt1,Color color1,Point2D pt2,Color color2) Constructs a simple acyclic GradientPaint object. |
[GradientPaint](../../java/awt/GradientPaint.html#GradientPaint%28java.awt.geom.Point2D, java.awt.Color, java.awt.geom.Point2D, java.awt.Color, boolean%29)(Point2D pt1,Color color1,Point2D pt2,Color color2, boolean cyclic) Constructs either a cyclic or acyclic GradientPaint object depending on the boolean parameter. |
Method Summary | |
---|---|
PaintContext | [createContext](../../java/awt/GradientPaint.html#createContext%28java.awt.image.ColorModel, java.awt.Rectangle, java.awt.geom.Rectangle2D, java.awt.geom.AffineTransform, java.awt.RenderingHints%29)(ColorModel cm,Rectangle deviceBounds,Rectangle2D userBounds,AffineTransform xform,RenderingHints hints) Creates and returns a context used to generate the color pattern. |
Color | getColor1() Returns the color C1 anchored by the point P1. |
Color | getColor2() Returns the color C2 anchored by the point P2. |
Point2D | getPoint1() Returns a copy of the point P1 that anchors the first color. |
Point2D | getPoint2() Returns a copy of the point P2 which anchors the second color. |
int | getTransparency() Returns the transparency mode for this GradientPaint. |
boolean | isCyclic() Returns true if the gradient cycles repeatedly between the two colors C1 and C2. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, [wait](../../java/lang/Object.html#wait%28long, int%29) |
Constructor Detail |
---|
GradientPaint
public GradientPaint(float x1, float y1, Color color1, float x2, float y2, Color color2)
Constructs a simple acyclic GradientPaint
object.
Parameters:
x1
- x coordinate of the first specifiedPoint
in user space
y1
- y coordinate of the first specifiedPoint
in user space
color1
- Color
at the first specified Point
x2
- x coordinate of the second specifiedPoint
in user space
y2
- y coordinate of the second specifiedPoint
in user space
color2
- Color
at the second specified Point
Throws:
[NullPointerException](../../java/lang/NullPointerException.html "class in java.lang")
- if either one of colors is null
GradientPaint
public GradientPaint(Point2D pt1, Color color1, Point2D pt2, Color color2)
Constructs a simple acyclic GradientPaint
object.
Parameters:
pt1
- the first specified Point
in user space
color1
- Color
at the first specified Point
pt2
- the second specified Point
in user space
color2
- Color
at the second specified Point
Throws:
[NullPointerException](../../java/lang/NullPointerException.html "class in java.lang")
- if either one of colors or points is null
GradientPaint
public GradientPaint(float x1, float y1, Color color1, float x2, float y2, Color color2, boolean cyclic)
Constructs either a cyclic or acyclic GradientPaint
object depending on the boolean
parameter.
Parameters:
x1
- x coordinate of the first specifiedPoint
in user space
y1
- y coordinate of the first specifiedPoint
in user space
color1
- Color
at the first specified Point
x2
- x coordinate of the second specifiedPoint
in user space
y2
- y coordinate of the second specifiedPoint
in user space
color2
- Color
at the second specified Point
cyclic
- true
if the gradient pattern should cycle repeatedly between the two colors; false
otherwise
GradientPaint
public GradientPaint(Point2D pt1, Color color1, Point2D pt2, Color color2, boolean cyclic)
Constructs either a cyclic or acyclic GradientPaint
object depending on the boolean
parameter.
Parameters:
pt1
- the first specified Point
in user space
color1
- Color
at the first specified Point
pt2
- the second specified Point
in user space
color2
- Color
at the second specified Point
cyclic
- true
if the gradient pattern should cycle repeatedly between the two colors; false
otherwise
Throws:
[NullPointerException](../../java/lang/NullPointerException.html "class in java.lang")
- if either one of colors or points is null
Method Detail |
---|
getPoint1
public Point2D getPoint1()
Returns a copy of the point P1 that anchors the first color.
Returns:
a Point2D object that is a copy of the point that anchors the first color of this GradientPaint
.
getColor1
public Color getColor1()
Returns the color C1 anchored by the point P1.
Returns:
a Color
object that is the color anchored by P1.
getPoint2
public Point2D getPoint2()
Returns a copy of the point P2 which anchors the second color.
Returns:
a Point2D object that is a copy of the point that anchors the second color of thisGradientPaint
.
getColor2
public Color getColor2()
Returns the color C2 anchored by the point P2.
Returns:
a Color
object that is the color anchored by P2.
isCyclic
public boolean isCyclic()
Returns true
if the gradient cycles repeatedly between the two colors C1 and C2.
Returns:
true
if the gradient cycles repeatedly between the two colors; false
otherwise.
createContext
public PaintContext createContext(ColorModel cm, Rectangle deviceBounds, Rectangle2D userBounds, AffineTransform xform, RenderingHints hints)
Creates and returns a context used to generate the color pattern.
Specified by:
[createContext](../../java/awt/Paint.html#createContext%28java.awt.image.ColorModel, java.awt.Rectangle, java.awt.geom.Rectangle2D, java.awt.geom.AffineTransform, java.awt.RenderingHints%29)
in interface [Paint](../../java/awt/Paint.html "interface in java.awt")
Parameters:
cm
- ColorModel that receives the Paint
data. This is used only as a hint.
deviceBounds
- the device space bounding box of the graphics primitive being rendered
userBounds
- the user space bounding box of the graphics primitive being rendered
xform
- the AffineTransform from user space into device space
hints
- the hints that the context object uses to choose between rendering alternatives
Returns:
the PaintContext that generates color patterns.
See Also:
getTransparency
public int getTransparency()
Returns the transparency mode for this GradientPaint
.
Specified by:
[getTransparency](../../java/awt/Transparency.html#getTransparency%28%29)
in interface [Transparency](../../java/awt/Transparency.html "interface in java.awt")
Returns:
an integer value representing this GradientPaint
object's transparency mode.
See Also:
Submit a bug or feature
For further API reference and developer documentation, see Java 2 SDK SE Developer Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 2004, 2010 Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.