- java.lang.Object
-
- java.awt.GradientPaint
-
- All Implemented Interfaces:
-
Paint,Transparency
public class GradientPaint extends Object implements Paint
GradientPaint类提供了一种填充Shape线性颜色渐变模式的方式。 如果PointP1与ColorC1和PointP2与ColorC2在用户空间中指定,P1,P2连接线上的Color将从C1到C2成比例地更改。 扩展P1,P2连接线上的任何点P都不具有在扩展P1,P2连接线上的P的垂直投影点P'的颜色。 P1,P2段外的扩展线上的点可以以两种方式之一进行着色。- 如果梯度是循环的,则扩展的P1,P2连接线上的点在颜色C1和C2之间来回循环。
- 如果梯度是非循环的,那么该段的P1侧上的点具有常数
ColorC1,P2侧的点具有常数ColorC2。
- Version:
- 1997年2月10日
- 另请参见:
-
Paint,Graphics2D.setPaint(java.awt.Paint)
-
-
Field Summary
-
Fields inherited from interface java.awt.Transparency
BITMASK, OPAQUE, TRANSLUCENT
-
-
构造方法摘要
构造方法 Constructor 描述 GradientPaint(float x1, float y1, Color color1, float x2, float y2, Color color2)构造一个简单的无环GradientPaint对象。GradientPaint(float x1, float y1, Color color1, float x2, float y2, Color color2, boolean cyclic)根据boolean参数构造循环或非循环GradientPaint对象。GradientPaint(Point2D pt1, Color color1, Point2D pt2, Color color2)构造一个简单的非循环GradientPaint对象。GradientPaint(Point2D pt1, Color color1, Point2D pt2, Color color2, boolean cyclic)根据boolean参数构造循环或非循环GradientPaint对象。
-
方法摘要
所有方法 接口方法 具体的方法 Modifier and Type 方法 描述 PaintContextcreateContext(ColorModel cm, Rectangle deviceBounds, Rectangle2D userBounds, AffineTransform xform, RenderingHints hints)创建并返回一个用于生成线性颜色渐变模式的PaintContext。ColorgetColor1()返回由点P1锚定的颜色C1。ColorgetColor2()返回由点P2锚定的颜色C2。Point2DgetPoint1()返回锚点第一个颜色的点P1的副本。Point2DgetPoint2()返回锚定第二种颜色的点P2的副本。intgetTransparency()返回此GradientPaint的透明度模式。booleanisCyclic()如果梯度在两种颜色C1和C2之间重复循环,则返回true。
-
-
-
构造方法详细信息
-
GradientPaint
public GradientPaint(float x1, float y1, Color color1, float x2, float y2, Color color2)构造一个简单的无环GradientPaint对象。- 参数
-
x1- 用户空间中第一个指定的Pointx坐标 -
y1- 用户空间中第一个指定的Pointy坐标 -
color1-Color在第一个指定的Point -
x2- 用户空间中第二个指定的Pointx坐标 -
y2- 用户空间中第二个指定的Pointy坐标 -
color2-Color在第二个指定的Point - 异常
-
NullPointerException- 如果任何一种颜色为空
-
GradientPaint
public GradientPaint(Point2D pt1, Color color1, Point2D pt2, Color color2)
构造一个简单的无环GradientPaint对象。- 参数
-
pt1- 用户空间中第一个指定的Point -
color1-Color在第一个指定的Point -
pt2- 第二个用户空间中指定的Point -
color2-Color在第二个指定的Point - 异常
-
NullPointerException- 如果颜色或点中的任何一个为空
-
GradientPaint
public GradientPaint(float x1, float y1, Color color1, float x2, float y2, Color color2, boolean cyclic)根据boolean参数构建循环或非循环GradientPaint对象。- 参数
-
x1- 用户空间中第一个指定的Pointx坐标 -
y1- 用户空间中第一个指定的Pointy坐标 -
color1-Color在第一个指定的Point -
x2- 用户空间中第二个指定的Pointx坐标 -
y2- 用户空间中第二个指定的Pointy坐标 -
color2-Color在第二个指定的Point -
cyclic-true如果梯度图案应该在两种颜色之间重复循环; 否则为false
-
GradientPaint
@ConstructorProperties({"point1","color1","point2","color2","cyclic"}) public GradientPaint(Point2D pt1, Color color1, Point2D pt2, Color color2, boolean cyclic)
根据boolean参数构造循环或非循环GradientPaint对象。- 参数
-
pt1- 用户空间中第一个指定的Point -
color1-Color在第一个指定的Point -
pt2- 第二个用户空间中指定的Point -
color2-Color在第二个指定的Point -
cyclic-true如果梯度图案应该在两种颜色之间重复循环; 否则为false - 异常
-
NullPointerException- 如果颜色或点中的任一个为空
-
-
方法详细信息
-
getPoint1
public Point2D getPoint1()
返回锚点第一个颜色的点P1的副本。- 结果
-
一个
Point2D对象,它是锚定此GradientPaint的第一个颜色的点的副本。
-
getColor1
public Color getColor1()
返回由点P1锚定的颜色C1。- 结果
-
一个
Color对象,它是由P1锚定的颜色。
-
getPoint2
public Point2D getPoint2()
返回锚定第二种颜色的点P2的副本。- 结果
-
一个
Point2D对象,它是锚定此GradientPaint的第二个颜色的点的副本。
-
getColor2
public Color getColor2()
返回由点P2锚定的颜色C2。- 结果
-
一个
Color对象,是由P2锚定的颜色。
-
isCyclic
public boolean isCyclic()
如果梯度在两种颜色C1和C2之间重复循环,则返回true。- 结果
-
true如果梯度在两种颜色之间重复循环;false否则。
-
createContext
public PaintContext createContext(ColorModel cm, Rectangle deviceBounds, Rectangle2D userBounds, AffineTransform xform, RenderingHints hints)
创建并返回一个用于生成线性颜色渐变模式的PaintContext。 见specification方法在Paint界面上的空参数处理信息。- Specified by:
-
createContext接口Paint - 参数
-
cm- 首选的ColorModel,表示呼叫者接收像素数据最方便的格式,如果没有偏好,则表示null。 -
deviceBounds- 正在渲染的图形基元的设备空间边界框。 -
userBounds- 呈现的图形基元的用户空间边界框。 -
xform- 从用户空间到设备空间的AffineTransform。 -
hints- 上下文对象可用于在呈现替代方案之间进行选择的一组提示。 - 结果
-
用于生成颜色图案的
PaintContext。 - 另请参见:
-
Paint,PaintContext,ColorModel,Rectangle,Rectangle2D,AffineTransform,RenderingHints
-
getTransparency
public int getTransparency()
返回此GradientPaint的透明度模式。- Specified by:
-
getTransparency在接口Transparency - 结果
-
一个整数值,表示这个
GradientPaint对象的透明度模式。 - 另请参见:
-
Transparency
-
-