7022931: GradientPaint class spec clarification: 7022931, 7016391, 7017246, 7019386
authordav
Mon, 14 Mar 2011 18:57:38 +0300
changeset 8753 1d3d51072dad
parent 8752 b8b7c54b0c7a
child 8754 0c97cc803f5b
7022931: GradientPaint class spec clarification: 7022931, 7016391, 7017246, 7019386 Reviewed-by: flar
jdk/src/share/classes/java/awt/LinearGradientPaint.java
jdk/src/share/classes/java/awt/MultipleGradientPaint.java
jdk/src/share/classes/java/awt/RadialGradientPaint.java
jdk/src/share/classes/java/awt/doc-files/RadialGradientPaint-3.png
jdk/src/share/classes/java/awt/doc-files/RadialGradientPaint-4.png
--- a/jdk/src/share/classes/java/awt/LinearGradientPaint.java	Wed Mar 09 17:29:17 2011 +0300
+++ b/jdk/src/share/classes/java/awt/LinearGradientPaint.java	Mon Mar 14 18:57:38 2011 +0300
@@ -57,8 +57,14 @@
  * </pre>
  *
  * <p>
- * The user may also select what action the {@code LinearGradientPaint}
- * should take when filling color outside the start and end points.
+ * The user may also select what action the {@code LinearGradientPaint} object
+ * takes when it is filling the space outside the start and end points by
+ * setting {@code CycleMethod} to either {@code REFLECTION} or {@code REPEAT}.
+ * The distances between any two colors in any of the reflected or repeated
+ * copies of the gradient are the same as the distance between those same two
+ * colors between the start and end points.
+ * Note that some minor variations in distances may occur due to sampling at
+ * the granularity of a pixel.
  * If no cycle method is specified, {@code NO_CYCLE} will be chosen by
  * default, which means the endpoint colors will be used to fill the
  * remaining area.
--- a/jdk/src/share/classes/java/awt/MultipleGradientPaint.java	Wed Mar 09 17:29:17 2011 +0300
+++ b/jdk/src/share/classes/java/awt/MultipleGradientPaint.java	Mon Mar 14 18:57:38 2011 +0300
@@ -286,6 +286,10 @@
     /**
      * Returns a copy of the transform applied to the gradient.
      *
+     * <p>
+     * Note that if no transform is applied to the gradient
+     * when it is created, the identity transform is used.
+     *
      * @return a copy of the transform applied to the gradient
      */
     public final AffineTransform getTransform() {
@@ -293,10 +297,12 @@
     }
 
     /**
-     * Returns the transparency mode for this Paint object.
+     * Returns the transparency mode for this {@code Paint} object.
      *
-     * @return an integer value representing the transparency mode for
-     * this Paint object
+     * @return {@code OPAQUE} if all colors used by this
+     *         {@code Paint} object are opaque,
+     *         {@code TRANSLUCENT} if at least one of the
+     *         colors used by this {@code Paint} object is not opaque.
      * @see java.awt.Transparency
      */
     public final int getTransparency() {
--- a/jdk/src/share/classes/java/awt/RadialGradientPaint.java	Wed Mar 09 17:29:17 2011 +0300
+++ b/jdk/src/share/classes/java/awt/RadialGradientPaint.java	Mon Mar 14 18:57:38 2011 +0300
@@ -71,8 +71,24 @@
  * </pre>
  *
  * <p>
- * The user may also select what action the {@code RadialGradientPaint}
- * should take when filling color outside the bounds of the circle's radius.
+ * The user may also select what action the {@code RadialGradientPaint} object
+ * takes when it is filling the space outside the circle's radius by
+ * setting {@code CycleMethod} to either {@code REFLECTION} or {@code REPEAT}.
+ * The gradient color proportions are equal for any particular line drawn
+ * from the focus point. The following figure shows that the distance AB
+ * is equal to the distance BC, and the distance AD is equal to the distance DE.
+ * <center>
+ * <img src = "doc-files/RadialGradientPaint-3.png">
+ * </center>
+ * If the gradient and graphics rendering transforms are uniformly scaled and
+ * the user sets the focus so that it coincides with the center of the circle,
+ * the gradient color proportions are equal for any line drawn from the center.
+ * The following figure shows the distances AB, BC, AD, and DE. They are all equal.
+ * <center>
+ * <img src = "doc-files/RadialGradientPaint-4.png">
+ * </center>
+ * Note that some minor variations in distances may occur due to sampling at
+ * the granularity of a pixel.
  * If no cycle method is specified, {@code NO_CYCLE} will be chosen by
  * default, which means the the last keyframe color will be used to fill the
  * remaining area.
@@ -604,7 +620,7 @@
     }
 
     /**
-     * Returns a copy of the end point of the gradient axis.
+     * Returns a copy of the focus point of the radial gradient.
      *
      * @return a {@code Point2D} object that is a copy of the focus point
      */
Binary file jdk/src/share/classes/java/awt/doc-files/RadialGradientPaint-3.png has changed
Binary file jdk/src/share/classes/java/awt/doc-files/RadialGradientPaint-4.png has changed