You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pdfbox.apache.org by ti...@apache.org on 2014/08/09 17:11:35 UTC

svn commit: r1616964 [1/2] - /pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/

Author: tilman
Date: Sat Aug  9 15:11:34 2014
New Revision: 1616964

URL: http://svn.apache.org/r1616964
Log:
PDFBOX-1915: reformat the package

Modified:
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/AxialShadingContext.java
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/AxialShadingPaint.java
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/CoonsPatch.java
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/CubicBezierCurve.java
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/GouraudShadingContext.java
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/Line.java
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/PDShading.java
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/PDShadingType1.java
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/PDShadingType2.java
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/PDShadingType3.java
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/PDShadingType4.java
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/PDShadingType5.java
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/PDTriangleBasedShadingType.java
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/Patch.java
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/PatchMeshesShadingContext.java
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/RadialShadingContext.java
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/RadialShadingPaint.java
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/ShadedTriangle.java
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/ShadingContext.java
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/TensorPatch.java
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/TriangleBasedShadingContext.java
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/Type1ShadingContext.java
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/Type1ShadingPaint.java
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/Type4ShadingContext.java
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/Type4ShadingPaint.java
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/Type5ShadingContext.java
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/Type5ShadingPaint.java
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/Type6ShadingContext.java
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/Type6ShadingPaint.java
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/Type7ShadingContext.java
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/Type7ShadingPaint.java
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/Vertex.java
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/package.html

Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/AxialShadingContext.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/AxialShadingContext.java?rev=1616964&r1=1616963&r2=1616964&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/AxialShadingContext.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/AxialShadingContext.java Sat Aug  9 15:11:34 2014
@@ -33,12 +33,12 @@ import org.apache.pdfbox.util.Matrix;
 
 /**
  * AWT PaintContext for axial shading.
- * 
+ *
  * Performance improvement done as part of GSoC2014, Tilman Hausherr is the
  * mentor.
  *
  * @author Andreas Lehmkühler
- * @author Shaola Ren 
+ * @author Shaola Ren
  *
  */
 public class AxialShadingContext extends ShadingContext implements PaintContext
@@ -56,21 +56,22 @@ public class AxialShadingContext extends
     private final double y1y0;
     private final float d1d0;
     private double denom;
-    
+
     private final double axialLength;
     private final int[] colorTable;
 
     /**
      * Constructor creates an instance to be used for fill operations.
+     *
      * @param shading the shading type to be used
      * @param colorModel the color model to be used
      * @param xform transformation for user to device space
      * @param ctm the transformation matrix
      * @param pageHeight height of the current page
-     * @param dBounds device bounds 
+     * @param dBounds device bounds
      */
     public AxialShadingContext(PDShadingType2 shading, ColorModel colorModel, AffineTransform xform,
-                               Matrix ctm, int pageHeight, Rectangle dBounds) throws IOException
+            Matrix ctm, int pageHeight, Rectangle dBounds) throws IOException
     {
         super(shading, colorModel, xform, ctm, pageHeight, dBounds);
         this.axialShadingType = shading;
@@ -82,7 +83,7 @@ public class AxialShadingContext extends
             ctm.createAffineTransform().transform(coords, 0, coords, 0, 2);
         }
         xform.transform(coords, 0, coords, 0, 2);
-        
+
         // domain values
         if (shading.getDomain() != null)
         {
@@ -91,7 +92,10 @@ public class AxialShadingContext extends
         else
         {
             // set default values
-            domain = new float[] { 0, 1 };
+            domain = new float[]
+            {
+                0, 1
+            };
         }
         // extend values
         COSArray extendValues = shading.getExtend();
@@ -104,7 +108,10 @@ public class AxialShadingContext extends
         else
         {
             // set default values
-            extend = new boolean[] { false, false };
+            extend = new boolean[]
+            {
+                false, false
+            };
         }
         // calculate some constants to be used in getRaster
         x1x0 = coords[2] - coords[0];
@@ -122,7 +129,7 @@ public class AxialShadingContext extends
         }
         colorTable = calcColorTable();
     }
-    
+
     /**
      * Calculate the color on the axial line and store them in an array.
      *
@@ -148,7 +155,7 @@ public class AxialShadingContext extends
         {
             for (int i = 0; i <= axialLength; i++)
             {
-                float t = domain[0] + d1d0 * i / (float)axialLength;
+                float t = domain[0] + d1d0 * i / (float) axialLength;
                 try
                 {
                     float[] values = axialShadingType.evalFunction(t);
@@ -162,9 +169,9 @@ public class AxialShadingContext extends
         }
         return map;
     }
-    
+
     @Override
-    public void dispose() 
+    public void dispose()
     {
         outputColorModel = null;
         shadingColorSpace = null;
@@ -172,13 +179,13 @@ public class AxialShadingContext extends
     }
 
     @Override
-    public ColorModel getColorModel() 
+    public ColorModel getColorModel()
     {
         return outputColorModel;
     }
 
     @Override
-    public Raster getRaster(int x, int y, int w, int h) 
+    public Raster getRaster(int x, int y, int w, int h)
     {
         // create writable raster
         WritableRaster raster = getColorModel().createCompatibleWritableRaster(w, h);
@@ -204,7 +211,7 @@ public class AxialShadingContext extends
                         continue;
                     }
                 }
-                
+
                 useBackground = false;
                 double inputValue = x1x0 * (currentX - coords[0]);
                 inputValue += y1y0 * (currentY - coords[1]);
@@ -290,27 +297,30 @@ public class AxialShadingContext extends
 
     /**
      * Returns the coords values.
+     *
      * @return the coords values as array
      */
-    public float[] getCoords() 
+    public float[] getCoords()
     {
         return coords;
     }
-        
+
     /**
      * Returns the domain values.
+     *
      * @return the domain values as array
      */
-    public float[] getDomain() 
+    public float[] getDomain()
     {
         return domain;
     }
-        
+
     /**
      * Returns the extend values.
+     *
      * @return the extend values as array
      */
-    public boolean[] getExtend() 
+    public boolean[] getExtend()
     {
         return extend;
     }

Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/AxialShadingPaint.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/AxialShadingPaint.java?rev=1616964&r1=1616963&r2=1616964&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/AxialShadingPaint.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/AxialShadingPaint.java Sat Aug  9 15:11:34 2014
@@ -31,6 +31,7 @@ import org.apache.pdfbox.util.Matrix;
 
 /**
  * AWT Paint for axial shading.
+ *
  * @author Andreas Lehmkühler
  */
 public class AxialShadingPaint implements Paint
@@ -40,9 +41,10 @@ public class AxialShadingPaint implement
     private PDShadingType2 shading;
     private Matrix ctm;
     private int pageHeight;
-    
+
     /**
      * Constructor.
+     *
      * @param shadingType2 the shading resources
      * @param ctm current transformation matrix
      * @param pageHeight size of the current page
@@ -55,15 +57,15 @@ public class AxialShadingPaint implement
     }
 
     @Override
-    public int getTransparency() 
+    public int getTransparency()
     {
         return 0;
     }
 
     @Override
     public PaintContext createContext(ColorModel cm, Rectangle deviceBounds,
-                                      Rectangle2D userBounds, AffineTransform xform,
-                                      RenderingHints hints)
+            Rectangle2D userBounds, AffineTransform xform,
+            RenderingHints hints)
     {
         try
         {

Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/CoonsPatch.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/CoonsPatch.java?rev=1616964&r1=1616963&r2=1616964&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/CoonsPatch.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/CoonsPatch.java Sat Aug  9 15:11:34 2014
@@ -13,23 +13,24 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-
 package org.apache.pdfbox.pdmodel.graphics.shading;
 
 import java.awt.geom.Point2D;
 import java.util.ArrayList;
 
 /**
- * This class is used to describe a patch for type 6 shading.
- * This was done as part of GSoC2014, Tilman Hausherr is the mentor.
+ * This class is used to describe a patch for type 6 shading. This was done as
+ * part of GSoC2014, Tilman Hausherr is the mentor.
+ *
  * @author Shaola Ren
  */
 class CoonsPatch extends Patch
-{   
+{
     /**
      * Constructor of a patch for type 6 shading.
+     *
      * @param points 12 control points
-     * @param color  4 corner colors
+     * @param color 4 corner colors
      */
     protected CoonsPatch(Point2D[] points, float[][] color)
     {
@@ -38,39 +39,42 @@ class CoonsPatch extends Patch
         level = calcLevel();
         listOfTriangles = getTriangles();
     }
-    
+
     // adjust the 12 control points to 4 groups, each group defines one edge of a patch
     private Point2D[][] reshapeControlPoints(Point2D[] points)
     {
         Point2D[][] fourRows = new Point2D[4][4];
         fourRows[2] = new Point2D[]
-                                {
-                                    points[0], points[1], points[2], points[3]
-                                }; // d1
+        {
+            points[0], points[1], points[2], points[3]
+        }; // d1
         fourRows[1] = new Point2D[]
-                                {
-                                    points[3], points[4], points[5], points[6]
-                                }; // c2
+        {
+            points[3], points[4], points[5], points[6]
+        }; // c2
         fourRows[3] = new Point2D[]
-                                {
-                                    points[9], points[8], points[7], points[6]
-                                }; // d2
+        {
+            points[9], points[8], points[7], points[6]
+        }; // d2
         fourRows[0] = new Point2D[]
-                                {
-                                    points[0], points[11], points[10], points[9]
-                                }; // c1
+        {
+            points[0], points[11], points[10], points[9]
+        }; // c1
         return fourRows;
     }
-    
+
     // calculate the dividing level from control points
     private int[] calcLevel()
     {
-        int[] l = {4, 4};
+        int[] l =
+        {
+            4, 4
+        };
         // if two opposite edges are both lines, there is a possibility to reduce the dividing level
         if (isEdgeALine(controlPoints[0]) & isEdgeALine(controlPoints[1]))
         {
-            double lc1 = getLen(controlPoints[0][0], controlPoints[0][3]), 
-                                lc2 = getLen(controlPoints[1][0], controlPoints[1][3]);
+            double lc1 = getLen(controlPoints[0][0], controlPoints[0][3]),
+                    lc2 = getLen(controlPoints[1][0], controlPoints[1][3]);
             // determine the dividing level by the lengths of edges
             if (lc1 > 800 || lc2 > 800)
             {
@@ -88,12 +92,12 @@ class CoonsPatch extends Patch
                 l[0] = 1;
             }
         }
-        
+
         // the other two opposite edges
         if (isEdgeALine(controlPoints[2]) & isEdgeALine(controlPoints[3]))
         {
-            double ld1 = getLen(controlPoints[2][0], controlPoints[2][3]), 
-                                ld2 = getLen(controlPoints[3][0], controlPoints[3][3]);
+            double ld1 = getLen(controlPoints[2][0], controlPoints[2][3]),
+                    ld2 = getLen(controlPoints[3][0], controlPoints[3][3]);
             if (ld1 > 800 || ld2 > 800)
             {
             }
@@ -124,13 +128,13 @@ class CoonsPatch extends Patch
         CoordinateColorPair[][] patchCC = getPatchCoordinatesColor(eC1, eC2, eD1, eD2);
         return getShadedTriangles(patchCC);
     }
-    
+
     @Override
     protected Point2D[] getFlag1Edge()
     {
         return controlPoints[1].clone();
     }
-    
+
     @Override
     protected Point2D[] getFlag2Edge()
     {
@@ -141,7 +145,7 @@ class CoonsPatch extends Patch
         implicitEdge[3] = controlPoints[3][0];
         return implicitEdge;
     }
-    
+
     @Override
     protected Point2D[] getFlag3Edge()
     {
@@ -152,60 +156,60 @@ class CoonsPatch extends Patch
         implicitEdge[3] = controlPoints[0][0];
         return implicitEdge;
     }
-    
+
     /*
-    dividing a patch into a grid, return a matrix of the coordinate and color at the crossing points of the grid, 
-    the rule to calculate the coordinate is defined in page 195 of PDF32000_2008.pdf, the rule to calculate the 
-    cooresponding color is bilinear interpolation
-    */
+     dividing a patch into a grid, return a matrix of the coordinate and color at the crossing points of the grid, 
+     the rule to calculate the coordinate is defined in page 195 of PDF32000_2008.pdf, the rule to calculate the 
+     cooresponding color is bilinear interpolation
+     */
     private CoordinateColorPair[][] getPatchCoordinatesColor(CubicBezierCurve C1, CubicBezierCurve C2, CubicBezierCurve D1, CubicBezierCurve D2)
     {
         Point2D[] curveC1 = C1.getCubicBezierCurve();
         Point2D[] curveC2 = C2.getCubicBezierCurve();
         Point2D[] curveD1 = D1.getCubicBezierCurve();
         Point2D[] curveD2 = D2.getCubicBezierCurve();
-        
+
         int numberOfColorComponents = cornerColor[0].length;
         int szV = curveD1.length;
         int szU = curveC1.length;
-        
+
         CoordinateColorPair[][] patchCC = new CoordinateColorPair[szV][szU];
-        
+
         double stepV = (double) 1 / (szV - 1);
         double stepU = (double) 1 / (szU - 1);
-        double v = - stepV;
-        for(int i = 0; i < szV; i++)
+        double v = -stepV;
+        for (int i = 0; i < szV; i++)
         {
             // v and u are the assistant parameters
             v += stepV;
-            double u = - stepU;
-            for(int j = 0; j < szU; j++)
+            double u = -stepU;
+            for (int j = 0; j < szU; j++)
             {
                 u += stepU;
                 double scx = (1 - v) * curveC1[j].getX() + v * curveC2[j].getX();
                 double scy = (1 - v) * curveC1[j].getY() + v * curveC2[j].getY();
                 double sdx = (1 - u) * curveD1[i].getX() + u * curveD2[i].getX();
                 double sdy = (1 - u) * curveD1[i].getY() + u * curveD2[i].getY();
-                double sbx = (1 - v) * ((1 - u) * controlPoints[0][0].getX() + u * controlPoints[0][3].getX()) 
+                double sbx = (1 - v) * ((1 - u) * controlPoints[0][0].getX() + u * controlPoints[0][3].getX())
                         + v * ((1 - u) * controlPoints[1][0].getX() + u * controlPoints[1][3].getX());
-                double sby = (1 - v) * ((1 - u) * controlPoints[0][0].getY() + u * controlPoints[0][3].getY()) 
+                double sby = (1 - v) * ((1 - u) * controlPoints[0][0].getY() + u * controlPoints[0][3].getY())
                         + v * ((1 - u) * controlPoints[1][0].getY() + u * controlPoints[1][3].getY());
-                
+
                 double sx = scx + sdx - sbx;
                 double sy = scy + sdy - sby;
                 // the above code in this for loop defines the patch surface (coordinates)
-                
+
                 Point2D tmpC = new Point2D.Double(sx, sy);
-                
+
                 float[] paramSC = new float[numberOfColorComponents];
-                for(int ci = 0; ci < numberOfColorComponents; ci++)
+                for (int ci = 0; ci < numberOfColorComponents; ci++)
                 {
-                    paramSC[ci] = (float) ((1 - v) * ((1 - u) * cornerColor[0][ci] + u * cornerColor[3][ci]) 
+                    paramSC[ci] = (float) ((1 - v) * ((1 - u) * cornerColor[0][ci] + u * cornerColor[3][ci])
                             + v * ((1 - u) * cornerColor[1][ci] + u * cornerColor[2][ci])); // bilinear interpolation
                 }
                 patchCC[i][j] = new CoordinateColorPair(tmpC, paramSC);
             }
         }
         return patchCC;
-    }  
+    }
 }

Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/CubicBezierCurve.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/CubicBezierCurve.java?rev=1616964&r1=1616963&r2=1616964&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/CubicBezierCurve.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/CubicBezierCurve.java Sat Aug  9 15:11:34 2014
@@ -13,7 +13,6 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-
 package org.apache.pdfbox.pdmodel.graphics.shading;
 
 import java.awt.geom.Point2D;
@@ -21,21 +20,23 @@ import java.awt.geom.Point2D;
 /**
  * This class is used to describe the edge of each patch for type 6 shading.
  * This was done as part of GSoC2014, Tilman Hausherr is the mentor.
+ *
  * @author Shaola Ren
  */
-
 class CubicBezierCurve
 {
     protected final Point2D[] controlPoints;
-    
+
     private final int level;
     private final Point2D[] curve;
-    
+
     /**
      * Constructor of CubicBezierCurve
+     *
      * @param ctrlPnts, 4 control points [p0, p1, p2, p3]
-     * @param l, dividing level, if l = 0, one cubic Bezier curve is divided into 2^0 = 1 segments,
-     * if l = n, one cubic Bezier curve is divided into 2^n segments
+     * @param l, dividing level, if l = 0, one cubic Bezier curve is divided
+     * into 2^0 = 1 segments, if l = n, one cubic Bezier curve is divided into
+     * 2^n segments
      */
     public CubicBezierCurve(Point2D[] ctrlPnts, int l)
     {
@@ -43,16 +44,17 @@ class CubicBezierCurve
         level = l;
         curve = getPoints(level);
     }
-    
+
     /**
      * Get level parameter
-     * @return level 
+     *
+     * @return level
      */
     public int getLevel()
     {
         return level;
     }
-    
+
     // calculate sampled points on the cubic Bezier curve defined by the 4 given control points
     private Point2D[] getPoints(int l)
     {
@@ -63,32 +65,33 @@ class CubicBezierCurve
         int sz = (1 << l) + 1;
         Point2D[] res = new Point2D[sz];
         double step = (double) 1 / (sz - 1);
-        double t = - step;
-        for(int i = 0; i < sz; i++)
+        double t = -step;
+        for (int i = 0; i < sz; i++)
         {
             t += step;
-            double tmpX = (1 - t) * (1 - t)*( 1 - t) * controlPoints[0].getX() + 
-                    3 * t * (1 - t) * (1 - t) * controlPoints[1].getX() +
-                    3 * t * t * (1 - t) * controlPoints[2].getX() + 
-                    t * t * t * controlPoints[3].getX();
-            double tmpY = (1 - t) * (1 - t)*( 1 - t) * controlPoints[0].getY() + 
-                    3 * t * (1 - t) * (1 - t) * controlPoints[1].getY() +
-                    3 * t * t * (1 - t) * controlPoints[2].getY() + 
-                    t * t * t * controlPoints[3].getY();
+            double tmpX = (1 - t) * (1 - t) * (1 - t) * controlPoints[0].getX()
+                    + 3 * t * (1 - t) * (1 - t) * controlPoints[1].getX()
+                    + 3 * t * t * (1 - t) * controlPoints[2].getX()
+                    + t * t * t * controlPoints[3].getX();
+            double tmpY = (1 - t) * (1 - t) * (1 - t) * controlPoints[0].getY()
+                    + 3 * t * (1 - t) * (1 - t) * controlPoints[1].getY()
+                    + 3 * t * t * (1 - t) * controlPoints[2].getY()
+                    + t * t * t * controlPoints[3].getY();
             res[i] = new Point2D.Double(tmpX, tmpY);
         }
         return res;
     }
-    
+
     /**
      * Get sampled points of this cubic Bezier curve.
+     *
      * @return sampled points
      */
     public Point2D[] getCubicBezierCurve()
     {
         return curve;
     }
-    
+
     @Override
     public String toString()
     {

Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/GouraudShadingContext.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/GouraudShadingContext.java?rev=1616964&r1=1616963&r2=1616964&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/GouraudShadingContext.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/GouraudShadingContext.java Sat Aug  9 15:11:34 2014
@@ -14,7 +14,6 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-
 package org.apache.pdfbox.pdmodel.graphics.shading;
 
 import java.awt.PaintContext;
@@ -37,6 +36,7 @@ import org.apache.pdfbox.util.Matrix;
 
 /**
  * Shades Gouraud triangles for Type4ShadingContext and Type5ShadingContext.
+ *
  * @author Andreas Lehmkühler
  * @author Tilman Hausherr
  * @author Shaola Ren
@@ -45,13 +45,19 @@ abstract class GouraudShadingContext ext
 {
     private static final Log LOG = LogFactory.getLog(GouraudShadingContext.class);
 
-    /** number of color components. */
+    /**
+     * number of color components.
+     */
     protected int numberOfColorComponents;
 
-    /** triangle list. */
+    /**
+     * triangle list.
+     */
     protected ArrayList<ShadedTriangle> triangleList;
 
-    /** background values.*/
+    /**
+     * background values.
+     */
     protected float[] background;
     protected int rgbBackground;
 
@@ -59,6 +65,7 @@ abstract class GouraudShadingContext ext
 
     /**
      * Constructor creates an instance to be used for fill operations.
+     *
      * @param shading the shading type to be used
      * @param colorModel the color model to be used
      * @param xform transformation for user to device space
@@ -67,7 +74,7 @@ abstract class GouraudShadingContext ext
      * @throws IOException if something went wrong
      */
     protected GouraudShadingContext(PDShading shading, ColorModel colorModel, AffineTransform xform,
-                                    Matrix ctm, int pageHeight, Rectangle dBounds) throws IOException
+            Matrix ctm, int pageHeight, Rectangle dBounds) throws IOException
     {
         super(shading, colorModel, xform, ctm, pageHeight, dBounds);
         triangleList = new ArrayList<ShadedTriangle>();
@@ -83,6 +90,7 @@ abstract class GouraudShadingContext ext
 
     /**
      * Read a vertex from the bit input stream performs interpolations.
+     *
      * @param input bit input stream
      * @param flag the flag or any value if not relevant
      * @param maxSrcCoord max value for source coordinate (2^bits-1)
@@ -94,8 +102,8 @@ abstract class GouraudShadingContext ext
      * @throws IOException if something went wrong
      */
     protected Vertex readVertex(ImageInputStream input, long maxSrcCoord, long maxSrcColor,
-                                PDRange rangeX, PDRange rangeY, PDRange[] colRangeTab, Matrix ctm, 
-                                AffineTransform xform) throws IOException
+            PDRange rangeX, PDRange rangeY, PDRange[] colRangeTab, Matrix ctm,
+            AffineTransform xform) throws IOException
     {
         float[] colorComponentTab = new float[numberOfColorComponents];
         long x = input.readBits(bitsPerCoordinate);
@@ -105,7 +113,7 @@ abstract class GouraudShadingContext ext
         LOG.debug("coord: " + String.format("[%06X,%06X] -> [%f,%f]", x, y, dstX, dstY));
         Point2D tmp = new Point2D.Double(dstX, dstY);
         transformPoint(tmp, ctm, xform);
-        
+
         for (int n = 0; n < numberOfColorComponents; ++n)
         {
             int color = (int) input.readBits(bitsPerColorComponent);
@@ -115,7 +123,7 @@ abstract class GouraudShadingContext ext
         }
         return new Vertex(tmp, colorComponentTab);
     }
-    
+
     protected HashMap<Point, Integer> calcPixelTable()
     {
         HashMap<Point, Integer> map = new HashMap<Point, Integer>();
@@ -139,6 +147,7 @@ abstract class GouraudShadingContext ext
 
     /**
      * Calculate the interpolation, see p.345 pdf spec 1.7.
+     *
      * @param src src value
      * @param srcMax max src value (2^bits-1)
      * @param dstMin min dst value

Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/Line.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/Line.java?rev=1616964&r1=1616963&r2=1616964&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/Line.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/Line.java Sat Aug  9 15:11:34 2014
@@ -13,15 +13,15 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-
 package org.apache.pdfbox.pdmodel.graphics.shading;
 
 import java.awt.Point;
 import java.util.HashSet;
 
 /**
- * This class describes a rasterized line.
- * This was done as part of GSoC2014, Tilman Hausherr is the mentor.
+ * This class describes a rasterized line. This was done as part of GSoC2014,
+ * Tilman Hausherr is the mentor.
+ *
  * @author Shaola Ren
  */
 class Line
@@ -30,11 +30,12 @@ class Line
     private final Point point1;
     private final float[] color0;
     private final float[] color1;
-    
+
     protected final HashSet<Point> linePoints; // all the points in this rasterized line
-    
+
     /**
      * Constructor of class Line.
+     *
      * @param p0 one end of a line
      * @param p1 the other end of the line
      * @param c0 color of point p0
@@ -48,24 +49,27 @@ class Line
         color1 = c1.clone();
         linePoints = calcLine(point0.x, point0.y, point1.x, point1.y);
     }
-    
+
     /**
      * Calculate the points of a line with Bresenham's line algorithm
-     * <a href="http://en.wikipedia.org/wiki/Bresenham's_line_algorithm">Bresenham's line algorithm</a>
+     * <a
+     * href="http://en.wikipedia.org/wiki/Bresenham's_line_algorithm">Bresenham's
+     * line algorithm</a>
+     *
      * @param x0 coordinate
      * @param y0 coordinate
      * @param x1 coordinate
      * @param y1 coordinate
      * @return all the points on the rasterized line from (x0, y0) to (x1, y1)
      */
-    private HashSet<Point> calcLine(int x0, int y0, int x1, int y1) 
+    private HashSet<Point> calcLine(int x0, int y0, int x1, int y1)
     {
         HashSet<Point> points = new HashSet<Point>(3);
         int dx = (int) Math.round(Math.abs(x1 - x0));
         int dy = (int) Math.round(Math.abs(y1 - y0));
         int sx = x0 < x1 ? 1 : -1;
         int sy = y0 < y1 ? 1 : -1;
-        int err = dx - dy;	
+        int err = dx - dy;
         while (true)
         {
             points.add(new Point(x0, y0));
@@ -87,9 +91,11 @@ class Line
         }
         return points;
     }
-    
+
     /**
-     * Calculate the color of a point on a rasterized line by linear interpolation.
+     * Calculate the color of a point on a rasterized line by linear
+     * interpolation.
+     *
      * @param p target point, p should always be contained in linePoints
      * @return color
      */
@@ -106,8 +112,8 @@ class Line
             float l = point1.y - point0.y;
             for (int i = 0; i < numberOfColorComponents; i++)
             {
-                pc[i] = (float) (color0[i] * (point1.y - p.y) / l + 
-                                 color1[i] * (p.y - point0.y) / l);
+                pc[i] = (float) (color0[i] * (point1.y - p.y) / l
+                        + color1[i] * (p.y - point0.y) / l);
             }
         }
         else
@@ -115,8 +121,8 @@ class Line
             float l = point1.x - point0.x;
             for (int i = 0; i < numberOfColorComponents; i++)
             {
-                pc[i] = (float) (color0[i] * (point1.x - p.x) / l + 
-                                 color1[i] * (p.x - point0.x) / l);
+                pc[i] = (float) (color0[i] * (point1.x - p.x) / l
+                        + color1[i] * (p.x - point0.x) / l);
             }
         }
         return pc;

Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/PDShading.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/PDShading.java?rev=1616964&r1=1616963&r2=1616964&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/PDShading.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/PDShading.java Sat Aug  9 15:11:34 2014
@@ -31,6 +31,7 @@ import org.apache.pdfbox.util.Matrix;
 
 /**
  * A Shading Resource.
+ *
  * @author Andreas Lehmkühler
  */
 public abstract class PDShading implements COSObjectable
@@ -41,28 +42,42 @@ public abstract class PDShading implemen
     private PDColorSpace colorSpace = null;
     private PDFunction function = null;
     private PDFunction[] functionArray = null;
-    
-    /** shading type 1 = function based shading. */
+
+    /**
+     * shading type 1 = function based shading.
+     */
     public static final int SHADING_TYPE1 = 1;
 
-    /** shading type 2 = axial shading. */
+    /**
+     * shading type 2 = axial shading.
+     */
     public static final int SHADING_TYPE2 = 2;
 
-    /** shading type 3 = radial shading. */
+    /**
+     * shading type 3 = radial shading.
+     */
     public static final int SHADING_TYPE3 = 3;
 
-    /** shading type 4 = Free-Form Gouraud-Shaded Triangle Meshes. */
+    /**
+     * shading type 4 = Free-Form Gouraud-Shaded Triangle Meshes.
+     */
     public static final int SHADING_TYPE4 = 4;
 
-    /** shading type 5 = Lattice-Form Gouraud-Shaded Triangle Meshes. */
+    /**
+     * shading type 5 = Lattice-Form Gouraud-Shaded Triangle Meshes.
+     */
     public static final int SHADING_TYPE5 = 5;
 
-    /** shading type 6 = Coons Patch Meshes. */
+    /**
+     * shading type 6 = Coons Patch Meshes.
+     */
     public static final int SHADING_TYPE6 = 6;
 
-    /** shading type 7 = Tensor-Product Patch Meshes. */
+    /**
+     * shading type 7 = Tensor-Product Patch Meshes.
+     */
     public static final int SHADING_TYPE7 = 7;
-    
+
     /**
      * Default constructor.
      */
@@ -73,6 +88,7 @@ public abstract class PDShading implemen
 
     /**
      * Constructor using the given shading dictionary.
+     *
      * @param shadingDictionary the dictionary for this shading
      */
     public PDShading(COSDictionary shadingDictionary)
@@ -82,6 +98,7 @@ public abstract class PDShading implemen
 
     /**
      * This will get the underlying dictionary.
+     *
      * @return the dictionary for this shading
      */
     public COSDictionary getCOSDictionary()
@@ -91,6 +108,7 @@ public abstract class PDShading implemen
 
     /**
      * Convert this standard java object to a COS object.
+     *
      * @return the cos object that matches this Java object
      */
     public COSBase getCOSObject()
@@ -100,6 +118,7 @@ public abstract class PDShading implemen
 
     /**
      * This will return the type.
+     *
      * @return the type of object that this is
      */
     public String getType()
@@ -109,6 +128,7 @@ public abstract class PDShading implemen
 
     /**
      * This will set the shading type.
+     *
      * @param shadingType the new shading type
      */
     public void setShadingType(int shadingType)
@@ -118,12 +138,14 @@ public abstract class PDShading implemen
 
     /**
      * This will return the shading type.
+     *
      * @return the shading typ
      */
     public abstract int getShadingType();
 
     /**
      * This will set the background.
+     *
      * @param newBackground the new background
      */
     public void setBackground(COSArray newBackground)
@@ -134,31 +156,33 @@ public abstract class PDShading implemen
 
     /**
      * This will return the background.
+     *
      * @return the background
      */
     public COSArray getBackground()
     {
-        if (background == null) 
+        if (background == null)
         {
-            background = (COSArray)dictionary.getDictionaryObject( COSName.BACKGROUND );
+            background = (COSArray) dictionary.getDictionaryObject(COSName.BACKGROUND);
         }
         return background;
     }
 
     /**
      * An array of four numbers in the form coordinate system (see below),
-     * giving the coordinates of the left, bottom, right, and top edges, respectively,
-     * of the shading's bounding box.
+     * giving the coordinates of the left, bottom, right, and top edges,
+     * respectively, of the shading's bounding box.
+     *
      * @return the BBox of the form
      */
     public PDRectangle getBBox()
     {
-        if (bBox == null) 
+        if (bBox == null)
         {
-            COSArray array = (COSArray)dictionary.getDictionaryObject( COSName.BBOX );
-            if( array != null )
+            COSArray array = (COSArray) dictionary.getDictionaryObject(COSName.BBOX);
+            if (array != null)
             {
-                bBox = new PDRectangle( array );
+                bBox = new PDRectangle(array);
             }
         }
         return bBox;
@@ -166,23 +190,25 @@ public abstract class PDShading implemen
 
     /**
      * This will set the BBox (bounding box) for this Shading.
+     *
      * @param newBBox the new BBox
      */
     public void setBBox(PDRectangle newBBox)
     {
         bBox = newBBox;
-        if( bBox == null )
+        if (bBox == null)
         {
-            dictionary.removeItem( COSName.BBOX );
+            dictionary.removeItem(COSName.BBOX);
         }
         else
         {
-            dictionary.setItem( COSName.BBOX, bBox.getCOSArray() );
+            dictionary.setItem(COSName.BBOX, bBox.getCOSArray());
         }
     }
 
     /**
      * This will set the AntiAlias value.
+     *
      * @param antiAlias the new AntiAlias value
      */
     public void setAntiAlias(boolean antiAlias)
@@ -192,23 +218,25 @@ public abstract class PDShading implemen
 
     /**
      * This will return the AntiAlias value.
+     *
      * @return the AntiAlias value
      */
     public boolean getAntiAlias()
     {
-        return dictionary.getBoolean( COSName.ANTI_ALIAS, false );
+        return dictionary.getBoolean(COSName.ANTI_ALIAS, false);
     }
 
     /**
      * This will get the color space or null if none exists.
+     *
      * @return the color space for the shading
      * @throws IOException if there is an error getting the color space
      */
     public PDColorSpace getColorSpace() throws IOException
     {
-        if( colorSpace == null )
+        if (colorSpace == null)
         {
-            COSBase colorSpaceDictionary = dictionary.getDictionaryObject( COSName.CS, COSName.COLORSPACE );
+            COSBase colorSpaceDictionary = dictionary.getDictionaryObject(COSName.CS, COSName.COLORSPACE);
             colorSpace = PDColorSpace.create(colorSpaceDictionary);
         }
         return colorSpace;
@@ -216,23 +244,25 @@ public abstract class PDShading implemen
 
     /**
      * This will set the color space for the shading.
+     *
      * @param colorSpace the color space
      */
-    public void setColorSpace( PDColorSpace colorSpace )
+    public void setColorSpace(PDColorSpace colorSpace)
     {
         this.colorSpace = colorSpace;
-        if( colorSpace != null )
+        if (colorSpace != null)
         {
-            dictionary.setItem( COSName.COLORSPACE, colorSpace.getCOSObject() );
+            dictionary.setItem(COSName.COLORSPACE, colorSpace.getCOSObject());
         }
         else
         {
-            dictionary.removeItem( COSName.COLORSPACE );
+            dictionary.removeItem(COSName.COLORSPACE);
         }
     }
 
     /**
      * Create the correct PD Model shading based on the COS base shading.
+     *
      * @param resourceDictionary the COS shading dictionary
      * @return the newly created shading resources object
      * @throws IOException if we are unable to create the PDShading object
@@ -240,10 +270,10 @@ public abstract class PDShading implemen
     public static PDShading create(COSDictionary resourceDictionary) throws IOException
     {
         PDShading shading = null;
-        int shadingType = resourceDictionary.getInt( COSName.SHADING_TYPE, 0 );
-        switch (shadingType) 
+        int shadingType = resourceDictionary.getInt(COSName.SHADING_TYPE, 0);
+        switch (shadingType)
         {
-            case SHADING_TYPE1: 
+            case SHADING_TYPE1:
                 shading = new PDShadingType1(resourceDictionary);
                 break;
             case SHADING_TYPE2:
@@ -265,13 +295,14 @@ public abstract class PDShading implemen
                 shading = new PDShadingType7(resourceDictionary);
                 break;
             default:
-                throw new IOException( "Error: Unknown shading type " + shadingType );
+                throw new IOException("Error: Unknown shading type " + shadingType);
         }
         return shading;
     }
 
     /**
      * This will set the function for the color conversion.
+     *
      * @param newFunction the new function
      */
     public void setFunction(PDFunction newFunction)
@@ -290,6 +321,7 @@ public abstract class PDShading implemen
 
     /**
      * This will set the functions COSArray for the color conversion.
+     *
      * @param newFunctions the new COSArray containing all functions
      */
     public void setFunction(COSArray newFunctions)
@@ -308,6 +340,7 @@ public abstract class PDShading implemen
 
     /**
      * This will return the function used to convert the color values.
+     *
      * @return the function
      * @exception IOException if we are unable to create the PDFunction object
      */
@@ -326,7 +359,8 @@ public abstract class PDShading implemen
 
     /**
      * Provide the function(s) of the shading dictionary as array.
-     * @return an array containing the function(s) 
+     *
+     * @return an array containing the function(s)
      * @throws IOException if something went wrong
      */
     private PDFunction[] getFunctionsArray() throws IOException
@@ -341,10 +375,10 @@ public abstract class PDShading implemen
             }
             else
             {
-                COSArray functionCOSArray = (COSArray)functionObject;
+                COSArray functionCOSArray = (COSArray) functionObject;
                 int numberOfFunctions = functionCOSArray.size();
                 functionArray = new PDFunction[numberOfFunctions];
-                for (int i=0; i<numberOfFunctions; i++)
+                for (int i = 0; i < numberOfFunctions; i++)
                 {
                     functionArray[i] = PDFunction.create(functionCOSArray.get(i));
                 }
@@ -352,25 +386,30 @@ public abstract class PDShading implemen
         }
         return functionArray;
     }
-    
+
     /**
      * Convert the input value using the functions of the shading dictionary.
+     *
      * @param inputValue the input value
      * @return the output values
      * @throws IOException thrown if something went wrong
      */
     public float[] evalFunction(float inputValue) throws IOException
     {
-        return evalFunction(new float[] {inputValue});
+        return evalFunction(new float[]
+        {
+            inputValue
+        });
     }
-    
+
     /**
      * Convert the input values using the functions of the shading dictionary.
+     *
      * @param input the input values
      * @return the output values
      * @throws IOException thrown if something went wrong
      */
-    public float[] evalFunction(float [] input) throws IOException
+    public float[] evalFunction(float[] input) throws IOException
     {
         PDFunction[] functions = getFunctionsArray();
         int numberOfFunctions = functions.length;
@@ -382,7 +421,7 @@ public abstract class PDShading implemen
         else
         {
             returnValues = new float[numberOfFunctions];
-            for (int i=0; i<numberOfFunctions;i++)
+            for (int i = 0; i < numberOfFunctions; i++)
             {
                 float[] newValue = functions[i].eval(input);
                 returnValues[i] = newValue[0];
@@ -407,6 +446,7 @@ public abstract class PDShading implemen
 
     /**
      * Returns an AWT paint which corresponds to this shading
+     *
      * @param matrix the pattern matrix
      * @param pageHeight the height of the current page
      * @return an AWT Paint instance

Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/PDShadingType1.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/PDShadingType1.java?rev=1616964&r1=1616963&r2=1616964&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/PDShadingType1.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/PDShadingType1.java Sat Aug  9 15:11:34 2014
@@ -35,6 +35,7 @@ public class PDShadingType1 extends PDSh
 
     /**
      * Constructor using the given shading dictionary.
+     *
      * @param shadingDictionary the dictionary for this shading
      */
     public PDShadingType1(COSDictionary shadingDictionary)
@@ -50,6 +51,7 @@ public class PDShadingType1 extends PDSh
 
     /**
      * This will get the optional Matrix of a function based shading.
+     *
      * @return the matrix
      */
     public Matrix getMatrix()
@@ -71,6 +73,7 @@ public class PDShadingType1 extends PDSh
 
     /**
      * Sets the optional Matrix entry for the function based shading.
+     *
      * @param transform the transformation matrix
      */
     public void setMatrix(AffineTransform transform)
@@ -87,6 +90,7 @@ public class PDShadingType1 extends PDSh
 
     /**
      * This will get the optional Domain values of a function based shading.
+     *
      * @return the domain values
      */
     public COSArray getDomain()
@@ -100,6 +104,7 @@ public class PDShadingType1 extends PDSh
 
     /**
      * Sets the optional Domain entry for the function based shading.
+     *
      * @param newDomain the domain array
      */
     public void setDomain(COSArray newDomain)

Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/PDShadingType2.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/PDShadingType2.java?rev=1616964&r1=1616963&r2=1616964&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/PDShadingType2.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/PDShadingType2.java Sat Aug  9 15:11:34 2014
@@ -34,6 +34,7 @@ public class PDShadingType2 extends PDSh
 
     /**
      * Constructor using the given shading dictionary.
+     *
      * @param shadingDictionary the dictionary for this shading
      */
     public PDShadingType2(COSDictionary shadingDictionary)
@@ -49,6 +50,7 @@ public class PDShadingType2 extends PDSh
 
     /**
      * This will get the optional Extend values for this shading.
+     *
      * @return the extend values
      */
     public COSArray getExtend()
@@ -62,6 +64,7 @@ public class PDShadingType2 extends PDSh
 
     /**
      * Sets the optional Extend entry for this shading.
+     *
      * @param newExtend the extend array
      */
     public void setExtend(COSArray newExtend)
@@ -79,6 +82,7 @@ public class PDShadingType2 extends PDSh
 
     /**
      * This will get the optional Domain values for this shading.
+     *
      * @return the domain values
      */
     public COSArray getDomain()
@@ -92,6 +96,7 @@ public class PDShadingType2 extends PDSh
 
     /**
      * Sets the optional Domain entry for this shading.
+     *
      * @param newDomain the domain array
      */
     public void setDomain(COSArray newDomain)
@@ -109,6 +114,7 @@ public class PDShadingType2 extends PDSh
 
     /**
      * This will get the Coords values for this shading.
+     *
      * @return the coordinate values
      */
     public COSArray getCoords()
@@ -122,6 +128,7 @@ public class PDShadingType2 extends PDSh
 
     /**
      * Sets the Coords entry for this shading.
+     *
      * @param newCoords the coordinates array
      */
     public void setCoords(COSArray newCoords)

Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/PDShadingType3.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/PDShadingType3.java?rev=1616964&r1=1616963&r2=1616964&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/PDShadingType3.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/PDShadingType3.java Sat Aug  9 15:11:34 2014
@@ -28,6 +28,7 @@ public class PDShadingType3 extends PDSh
 {
     /**
      * Constructor using the given shading dictionary.
+     *
      * @param shadingDictionary the dictionary for this shading
      */
     public PDShadingType3(COSDictionary shadingDictionary)

Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/PDShadingType4.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/PDShadingType4.java?rev=1616964&r1=1616963&r2=1616964&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/PDShadingType4.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/PDShadingType4.java Sat Aug  9 15:11:34 2014
@@ -29,6 +29,7 @@ public class PDShadingType4 extends PDTr
 {
     /**
      * Constructor using the given shading dictionary.
+     *
      * @param shadingDictionary the dictionary for this shading
      */
     public PDShadingType4(COSDictionary shadingDictionary)
@@ -43,7 +44,9 @@ public class PDShadingType4 extends PDTr
     }
 
     /**
-     * The bits per flag of this shading. This will return -1 if one has not been set.
+     * The bits per flag of this shading. This will return -1 if one has not
+     * been set.
+     *
      * @return The number of bits per flag.
      */
     public int getBitsPerFlag()
@@ -53,6 +56,7 @@ public class PDShadingType4 extends PDTr
 
     /**
      * Set the number of bits per flag.
+     *
      * @param bitsPerFlag the number of bits per flag
      */
     public void setBitsPerFlag(int bitsPerFlag)

Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/PDShadingType5.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/PDShadingType5.java?rev=1616964&r1=1616963&r2=1616964&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/PDShadingType5.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/PDShadingType5.java Sat Aug  9 15:11:34 2014
@@ -29,6 +29,7 @@ public class PDShadingType5 extends PDTr
 {
     /**
      * Constructor using the given shading dictionary.
+     *
      * @param shadingDictionary the dictionary for this shading
      */
     public PDShadingType5(COSDictionary shadingDictionary)
@@ -43,7 +44,9 @@ public class PDShadingType5 extends PDTr
     }
 
     /**
-     * The vertices per row of this shading. This will return -1 if one has not been set.
+     * The vertices per row of this shading. This will return -1 if one has not
+     * been set.
+     *
      * @return the number of vertices per row
      */
     public int getVerticesPerRow()
@@ -53,6 +56,7 @@ public class PDShadingType5 extends PDTr
 
     /**
      * Set the number of vertices per row.
+     *
      * @param verticesPerRow the number of vertices per row
      */
     public void setVerticesPerRow(int verticesPerRow)

Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/PDTriangleBasedShadingType.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/PDTriangleBasedShadingType.java?rev=1616964&r1=1616963&r2=1616964&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/PDTriangleBasedShadingType.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/PDTriangleBasedShadingType.java Sat Aug  9 15:11:34 2014
@@ -13,7 +13,6 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-
 package org.apache.pdfbox.pdmodel.graphics.shading;
 
 import org.apache.pdfbox.cos.COSArray;
@@ -37,7 +36,9 @@ abstract class PDTriangleBasedShadingTyp
     }
 
     /**
-     * The bits per component of this shading. This will return -1 if one has not been set.
+     * The bits per component of this shading. This will return -1 if one has
+     * not been set.
+     *
      * @return the number of bits per component
      */
     public int getBitsPerComponent()
@@ -47,6 +48,7 @@ abstract class PDTriangleBasedShadingTyp
 
     /**
      * Set the number of bits per component.
+     *
      * @param bitsPerComponent the number of bits per component
      */
     public void setBitsPerComponent(int bitsPerComponent)
@@ -55,7 +57,9 @@ abstract class PDTriangleBasedShadingTyp
     }
 
     /**
-     * The bits per coordinate of this shading. This will return -1 if one has not been set.
+     * The bits per coordinate of this shading. This will return -1 if one has
+     * not been set.
+     *
      * @return the number of bits per coordinate
      */
     public int getBitsPerCoordinate()
@@ -65,6 +69,7 @@ abstract class PDTriangleBasedShadingTyp
 
     /**
      * Set the number of bits per coordinate.
+     *
      * @param bitsPerComponent the number of bits per coordinate
      */
     public void setBitsPerCoordinate(int bitsPerComponent)
@@ -74,6 +79,7 @@ abstract class PDTriangleBasedShadingTyp
 
     /**
      * Returns all decode values as COSArray.
+     *
      * @return the decode array
      */
     private COSArray getDecodeValues()
@@ -87,6 +93,7 @@ abstract class PDTriangleBasedShadingTyp
 
     /**
      * This will set the decode values.
+     *
      * @param decodeValues the new decode values
      */
     public void setDecodeValues(COSArray decodeValues)
@@ -97,6 +104,7 @@ abstract class PDTriangleBasedShadingTyp
 
     /**
      * Get the decode for the input parameter.
+     *
      * @param paramNum the function parameter number
      * @return the decode parameter range or null if none is set
      */

Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/Patch.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/Patch.java?rev=1616964&r1=1616963&r2=1616964&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/Patch.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/Patch.java Sat Aug  9 15:11:34 2014
@@ -13,22 +13,22 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-
 package org.apache.pdfbox.pdmodel.graphics.shading;
 
 import java.awt.geom.Point2D;
 import java.util.ArrayList;
 
 /**
- * Patch is extended by CoonsPatch and TensorPatch.
- * This was done as part of GSoC2014, Tilman Hausherr is the mentor.
+ * Patch is extended by CoonsPatch and TensorPatch. This was done as part of
+ * GSoC2014, Tilman Hausherr is the mentor.
+ *
  * @author Shaola Ren
  */
 abstract class Patch
 {
     protected Point2D[][] controlPoints;
     protected float[][] cornerColor;
-    
+
     /*
      level = {levelU, levelV}, levelU defines the patch's u direction edges should be 
      divided into 2^levelU parts, level V defines the patch's v direction edges should
@@ -36,37 +36,43 @@ abstract class Patch
      */
     protected int[] level;
     protected ArrayList<ShadedTriangle> listOfTriangles;
-    
+
     /**
      * Constructor of Patch.
-     * @param ctl control points, size is 12 (for type 6 shading) or 16 (for type 7 shading)
+     *
+     * @param ctl control points, size is 12 (for type 6 shading) or 16 (for
+     * type 7 shading)
      * @param color 4 corner's colors
      */
     public Patch(Point2D[] ctl, float[][] color)
     {
         cornerColor = color.clone();
     }
-    
+
     /**
      * Get the implicit edge for flag = 1.
+     *
      * @return implicit control points
      */
     protected abstract Point2D[] getFlag1Edge();
-    
+
     /**
      * Get the implicit edge for flag = 2.
+     *
      * @return implicit control points
      */
     protected abstract Point2D[] getFlag2Edge();
-    
+
     /**
      * Get the implicit edge for flag = 3.
+     *
      * @return implicit control points
      */
     protected abstract Point2D[] getFlag3Edge();
-    
+
     /**
      * Get the implicit color for flag = 1.
+     *
      * @return color
      */
     protected float[][] getFlag1Color()
@@ -80,9 +86,10 @@ abstract class Patch
         }
         return implicitCornerColor;
     }
-    
+
     /**
      * Get implicit color for flag = 2.
+     *
      * @return color
      */
     protected float[][] getFlag2Color()
@@ -96,9 +103,10 @@ abstract class Patch
         }
         return implicitCornerColor;
     }
-    
+
     /**
      * Get implicit color for flag = 3.
+     *
      * @return color
      */
     protected float[][] getFlag3Color()
@@ -112,9 +120,10 @@ abstract class Patch
         }
         return implicitCornerColor;
     }
-    
+
     /**
      * Calculate the distance from point ps to point pe.
+     *
      * @param ps one end of a line
      * @param pe the other end of the line
      * @return length of the line
@@ -125,9 +134,10 @@ abstract class Patch
         double y = pe.getY() - ps.getY();
         return Math.sqrt(x * x + y * y);
     }
-    
+
     /**
      * Whether the for control points are on a line.
+     *
      * @param ctl an edge's control points, the size of ctl is 4
      * @return true when 4 control points are on a line, otherwise false
      */
@@ -139,11 +149,12 @@ abstract class Patch
         double y = Math.abs(ctl[0].getY() - ctl[3].getY());
         return (ctl1 <= x && ctl2 <= x) || (ctl1 <= y && ctl2 <= y);
     }
-    
+
     /**
-     * A line from point p1 to point p2 defines an equation, adjust the form of the equation 
-     * to let the rhs equals 0, then calculate the lhs value by plugging the coordinate of p 
-     * in the lhs expression.
+     * A line from point p1 to point p2 defines an equation, adjust the form of
+     * the equation to let the rhs equals 0, then calculate the lhs value by
+     * plugging the coordinate of p in the lhs expression.
+     *
      * @param p target point
      * @param p1 one end of a line
      * @param p2 the other end of a line
@@ -153,9 +164,10 @@ abstract class Patch
     {
         return (p2.getY() - p1.getY()) * (p.getX() - p1.getX()) - (p2.getX() - p1.getX()) * (p.getY() - p1.getY());
     }
-    
+
     /**
      * An assistant method to accomplish type 6 and type 7 shading.
+     *
      * @param patchCC all the crossing point coordinates and color of a grid
      * @return a ShadedTriangle list which can compose the grid patch
      */
@@ -168,17 +180,24 @@ abstract class Patch
         {
             for (int j = 1; j < szU; j++)
             {
-                Point2D p0 = patchCC[i-1][j-1].coordinate, p1 = patchCC[i-1][j].coordinate, p2 = patchCC[i][j].coordinate, 
-                                p3 = patchCC[i][j-1].coordinate;
+                Point2D p0 = patchCC[i - 1][j - 1].coordinate, p1 = patchCC[i - 1][j].coordinate, p2 = patchCC[i][j].coordinate,
+                        p3 = patchCC[i][j - 1].coordinate;
                 boolean ll = true;
                 if (overlaps(p0, p1) || overlaps(p0, p3))
                 {
                     ll = false;
                 }
-                else{
+                else
+                {
                     // p0, p1 and p3 are in counter clock wise order, p1 has priority over p0, p3 has priority over p1
-                    Point2D[] llCorner = {p0, p1, p3};
-                    float[][] llColor = {patchCC[i-1][j-1].color, patchCC[i-1][j].color, patchCC[i][j-1].color};
+                    Point2D[] llCorner =
+                    {
+                        p0, p1, p3
+                    };
+                    float[][] llColor =
+                    {
+                        patchCC[i - 1][j - 1].color, patchCC[i - 1][j].color, patchCC[i][j - 1].color
+                    };
                     ShadedTriangle tmpll = new ShadedTriangle(llCorner, llColor); // lower left triangle
                     list.add(tmpll);
                 }
@@ -188,8 +207,14 @@ abstract class Patch
                 else
                 {
                     // p3, p1 and p2 are in counter clock wise order, p1 has priority over p3, p2 has priority over p1
-                    Point2D[] urCorner = {p3, p1, p2};
-                    float[][] urColor = {patchCC[i][j-1].color, patchCC[i-1][j].color, patchCC[i][j].color};
+                    Point2D[] urCorner =
+                    {
+                        p3, p1, p2
+                    };
+                    float[][] urColor =
+                    {
+                        patchCC[i][j - 1].color, patchCC[i - 1][j].color, patchCC[i][j].color
+                    };
                     ShadedTriangle tmpur = new ShadedTriangle(urCorner, urColor); // upper right triangle
                     list.add(tmpur);
                 }
@@ -197,10 +222,10 @@ abstract class Patch
         }
         return list;
     }
-    
+
     // whether two points p0 and p1 are degenerated into one point within the coordinates' accuracy 0.001
     private boolean overlaps(Point2D p0, Point2D p1)
     {
         return Math.abs(p0.getX() - p1.getX()) < 0.001 && Math.abs(p0.getY() - p1.getY()) < 0.001;
-    }  
+    }
 }

Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/PatchMeshesShadingContext.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/PatchMeshesShadingContext.java?rev=1616964&r1=1616963&r2=1616964&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/PatchMeshesShadingContext.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/PatchMeshesShadingContext.java Sat Aug  9 15:11:34 2014
@@ -13,7 +13,6 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-
 package org.apache.pdfbox.pdmodel.graphics.shading;
 
 import java.awt.PaintContext;
@@ -39,43 +38,45 @@ import org.apache.pdfbox.pdmodel.common.
 import org.apache.pdfbox.util.Matrix;
 
 /**
- * This class is extended in Type6ShadingContext and Type7ShadingContext.
- * This was done as part of GSoC2014, Tilman Hausherr is the mentor.
+ * This class is extended in Type6ShadingContext and Type7ShadingContext. This
+ * was done as part of GSoC2014, Tilman Hausherr is the mentor.
+ *
  * @author Shaola Ren
  */
 abstract class PatchMeshesShadingContext extends TriangleBasedShadingContext implements PaintContext
 {
     private static final Log LOG = LogFactory.getLog(PatchMeshesShadingContext.class);
-    
+
     protected final int numberOfColorComponents; // number of color components
     protected float[] background; // background values.
     protected int rgbBackground;
     protected final PDShading patchMeshesShadingType;
-    
+
     // the following fields are not intialized in this abstract class
     protected ArrayList<Patch> patchList; // patch list
     protected int bitsPerFlag; // bits per flag
     protected HashMap<Point, Integer> pixelTable;
-    
+
     /**
      * Constructor creates an instance to be used for fill operations.
+     *
      * @param shading the shading type to be used
      * @param colorModel the color model to be used
      * @param xform transformation for user to device space
      * @param ctm current transformation matrix
      * @param pageHeight height of the current page
-     * @param dBounds device bounds 
+     * @param dBounds device bounds
      * @throws IOException if something went wrong
      */
     protected PatchMeshesShadingContext(PDShading shading, ColorModel colorModel, AffineTransform xform,
-                                Matrix ctm, int pageHeight, Rectangle dBounds) throws IOException
+            Matrix ctm, int pageHeight, Rectangle dBounds) throws IOException
     {
         super(shading, colorModel, xform, ctm, pageHeight, dBounds);
         patchMeshesShadingType = shading;
         bitsPerFlag = ((PDShadingType6) shading).getBitsPerFlag();
         patchList = new ArrayList<Patch>();
         numberOfColorComponents = hasFunction ? 1 : shadingColorSpace.getNumberOfComponents();
-        
+
         COSArray bg = shading.getBackground();
         if (bg != null)
         {
@@ -83,35 +84,37 @@ abstract class PatchMeshesShadingContext
             rgbBackground = convertToRGB(background);
         }
     }
-    
+
     /**
-     * Create a patch list from a data stream, the returned list contains all the patches 
-     * contained in the data stream.
+     * Create a patch list from a data stream, the returned list contains all
+     * the patches contained in the data stream.
+     *
      * @param xform transformation for user to device space
      * @param ctm current transformation matrix
      * @param cosDictionary dictionary object to give the image information
      * @param rangeX range for coordinate x
      * @param rangeY range for coordinate y
      * @param colRange range for color
-     * @param numP number of control points, 12 for type 6 shading and 16 for type 7 shading
+     * @param numP number of control points, 12 for type 6 shading and 16 for
+     * type 7 shading
      * @return the obtained patch list
      * @throws IOException when something went wrong
      */
-    protected ArrayList<Patch> getPatchList(AffineTransform xform,Matrix ctm, COSDictionary cosDictionary, 
-                                PDRange rangeX, PDRange rangeY, PDRange[] colRange, int numP) throws IOException
+    protected ArrayList<Patch> getPatchList(AffineTransform xform, Matrix ctm, COSDictionary cosDictionary,
+            PDRange rangeX, PDRange rangeY, PDRange[] colRange, int numP) throws IOException
     {
         ArrayList<Patch> list = new ArrayList<Patch>();
         long maxSrcCoord = (long) Math.pow(2, bitsPerCoordinate) - 1;
         long maxSrcColor = (long) Math.pow(2, bitsPerColorComponent) - 1;
         COSStream cosStream = (COSStream) cosDictionary;
-        
+
         ImageInputStream mciis = new MemoryCacheImageInputStream(cosStream.getUnfilteredStream());
-        
+
         Point2D[] implicitEdge = new Point2D[4];
         float[][] implicitCornerColor = new float[2][numberOfColorComponents];
-        
+
         byte flag = (byte) 0;
-        
+
         try
         {
             flag = (byte) (mciis.readBits(bitsPerFlag) & 3);
@@ -120,14 +123,14 @@ abstract class PatchMeshesShadingContext
         {
             LOG.error(ex);
         }
-        
+
         while (true)
         {
             try
             {
                 boolean isFree = (flag == 0);
                 Patch current = readPatch(mciis, isFree, implicitEdge, implicitCornerColor,
-                                maxSrcCoord, maxSrcColor, rangeX, rangeY, colRange, ctm, xform, numP);
+                        maxSrcCoord, maxSrcColor, rangeX, rangeY, colRange, ctm, xform, numP);
                 if (current == null)
                 {
                     break;
@@ -153,7 +156,7 @@ abstract class PatchMeshesShadingContext
                     default:
                         LOG.warn("bad flag: " + flag);
                         break;
-                } 
+                }
             }
             catch (EOFException ex)
             {
@@ -163,29 +166,34 @@ abstract class PatchMeshesShadingContext
         mciis.close();
         return list;
     }
-    
+
     /**
-     * Read a single patch from a data stream, a patch contains information of 
+     * Read a single patch from a data stream, a patch contains information of
      * its coordinates and color parameters.
+     *
      * @param input the image source data stream
      * @param isFree whether this is a free patch
-     * @param implicitEdge implicit edge when a patch is not free, otherwise it's not used
-     * @param implicitCornerColor implicit colors when a patch is not free, otherwise it's not used
-     * @param maxSrcCoord the maximum coordinate value calculated from source data
+     * @param implicitEdge implicit edge when a patch is not free, otherwise
+     * it's not used
+     * @param implicitCornerColor implicit colors when a patch is not free,
+     * otherwise it's not used
+     * @param maxSrcCoord the maximum coordinate value calculated from source
+     * data
      * @param maxSrcColor the maximum color value calculated from source data
      * @param rangeX range for coordinate x
      * @param rangeY range for coordinate y
      * @param colRange range for color
      * @param ctm current transformation matrix
      * @param xform transformation for user to device space
-     * @param numP number of control points, 12 for type 6 shading and 16 for type 7 shading
+     * @param numP number of control points, 12 for type 6 shading and 16 for
+     * type 7 shading
      * @return a single patch
      * @throws IOException when something went wrong
      */
-    protected Patch readPatch(ImageInputStream input, boolean isFree, Point2D[] implicitEdge, 
-                                float[][] implicitCornerColor, long maxSrcCoord, long maxSrcColor, 
-                                PDRange rangeX, PDRange rangeY, PDRange[] colRange, 
-                                Matrix ctm, AffineTransform xform, int numP) throws IOException
+    protected Patch readPatch(ImageInputStream input, boolean isFree, Point2D[] implicitEdge,
+            float[][] implicitCornerColor, long maxSrcCoord, long maxSrcColor,
+            PDRange rangeX, PDRange rangeY, PDRange[] colRange,
+            Matrix ctm, AffineTransform xform, int numP) throws IOException
     {
         float[][] color = new float[4][numberOfColorComponents];
         Point2D[] points = new Point2D[numP];
@@ -201,14 +209,14 @@ abstract class PatchMeshesShadingContext
             points[1] = implicitEdge[1];
             points[2] = implicitEdge[2];
             points[3] = implicitEdge[3];
-            
+
             for (int i = 0; i < numberOfColorComponents; i++)
             {
                 color[0][i] = implicitCornerColor[0][i];
                 color[1][i] = implicitCornerColor[1][i];
             }
         }
-        
+
         try
         {
             for (int i = pStart; i < numP; i++)
@@ -230,7 +238,7 @@ abstract class PatchMeshesShadingContext
                 }
             }
         }
-        catch(EOFException ex)
+        catch (EOFException ex)
         {
             LOG.debug("EOF");
             return null;
@@ -239,23 +247,27 @@ abstract class PatchMeshesShadingContext
     }
 
     /**
-     * Create a patch using control points and 4 corner color values, in Type6ShadingContext, 
-     * a CoonsPatch is returned; in Type6ShadingContext, a TensorPatch is returned.
+     * Create a patch using control points and 4 corner color values, in
+     * Type6ShadingContext, a CoonsPatch is returned; in Type6ShadingContext, a
+     * TensorPatch is returned.
+     *
      * @param points 12 or 16 control points
      * @param color 4 corner colors
      * @return a patch instance
      */
     abstract Patch generatePatch(Point2D[] points, float[][] color);
-    
+
     // get a point coordinate on a line by linear interpolation
     private double interpolate(double x, long maxValue, float rangeMin, float rangeMax)
     {
         return rangeMin + (x / maxValue) * (rangeMax - rangeMin);
     }
-    
+
     /**
      * Calculate every point and its color and store them in a Hash table.
-     * @return a Hash table which contains all the points' positions and colors of one image
+     *
+     * @return a Hash table which contains all the points' positions and colors
+     * of one image
      */
     protected HashMap<Point, Integer> calcPixelTable()
     {
@@ -274,18 +286,18 @@ abstract class PatchMeshesShadingContext
         outputColorModel = null;
         shadingColorSpace = null;
     }
-    
+
     @Override
     public final ColorModel getColorModel()
     {
         return outputColorModel;
     }
-    
+
     @Override
     public final Raster getRaster(int x, int y, int w, int h)
     {
         WritableRaster raster = getColorModel().createCompatibleWritableRaster(w, h);
-        int[] data = new int[w * h * 4];       
+        int[] data = new int[w * h * 4];
         if (!patchList.isEmpty() || background != null)
         {
             for (int row = 0; row < h; row++)

Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/RadialShadingContext.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/RadialShadingContext.java?rev=1616964&r1=1616963&r2=1616964&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/RadialShadingContext.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/RadialShadingContext.java Sat Aug  9 15:11:34 2014
@@ -38,7 +38,7 @@ import org.apache.pdfbox.util.Matrix;
  * mentor.
  *
  * @author Andreas Lehmkühler
- * @author Shaola Ren 
+ * @author Shaola Ren
  */
 public class RadialShadingContext extends ShadingContext implements PaintContext
 {
@@ -51,7 +51,7 @@ public class RadialShadingContext extend
     private float[] background;
     private int rgbBackground;
     private final boolean[] extend;
-    private final double x1x0; 
+    private final double x1x0;
     private final double y1y0;
     private final double r1r0;
     private final double x1x0pow2;
@@ -65,15 +65,16 @@ public class RadialShadingContext extend
 
     /**
      * Constructor creates an instance to be used for fill operations.
+     *
      * @param shading the shading type to be used
      * @param colorModel the color model to be used
      * @param xform transformation for user to device space
      * @param ctm the transformation matrix
-     * @param dBounds device bounds 
+     * @param dBounds device bounds
      * @param pageHeight height of the current page
      */
     public RadialShadingContext(PDShadingType3 shading, ColorModel colorModel, AffineTransform xform,
-                                Matrix ctm, int pageHeight, Rectangle dBounds) throws IOException
+            Matrix ctm, int pageHeight, Rectangle dBounds) throws IOException
     {
         super(shading, colorModel, xform, ctm, pageHeight, dBounds);
         this.radialShadingType = shading;
@@ -103,9 +104,12 @@ public class RadialShadingContext extend
         else
         {
             // set default values
-            domain = new float[] { 0, 1 };
+            domain = new float[]
+            {
+                0, 1
+            };
         }
-        
+
         // extend values
         COSArray extendValues = shading.getExtend();
         if (shading.getExtend() != null)
@@ -117,7 +121,10 @@ public class RadialShadingContext extend
         else
         {
             // set default values
-            extend = new boolean[] { false, false };
+            extend = new boolean[]
+            {
+                false, false
+            };
         }
         // calculate some constants to be used in getRaster
         x1x0 = coords[3] - coords[0];
@@ -139,7 +146,7 @@ public class RadialShadingContext extend
         longestDistance = getLongestDis();
         colorTable = calcColorTable();
     }
-    
+
     // get the longest distance of two points which are located on these two circles
     private double getLongestDis()
     {
@@ -164,10 +171,13 @@ public class RadialShadingContext extend
             return rmin + centerToCenter + coords[5];
         }
     }
-    
+
     /**
-     * Calculate the color on the line connects two circles' centers and store the result in an array.
-     * @return an array, index denotes the relative position, the corresponding value the color
+     * Calculate the color on the line connects two circles' centers and store
+     * the result in an array.
+     *
+     * @return an array, index denotes the relative position, the corresponding
+     * value the color
      */
     private int[] calcColorTable()
     {
@@ -188,7 +198,7 @@ public class RadialShadingContext extend
         {
             for (int i = 0; i <= longestDistance; i++)
             {
-                float t = domain[0] + d1d0 * i / (float)longestDistance;
+                float t = domain[0] + d1d0 * i / (float) longestDistance;
                 try
                 {
                     float[] values = radialShadingType.evalFunction(t);
@@ -202,9 +212,9 @@ public class RadialShadingContext extend
         }
         return map;
     }
-    
+
     @Override
-    public void dispose() 
+    public void dispose()
     {
         outputColorModel = null;
         radialShadingType = null;
@@ -212,13 +222,13 @@ public class RadialShadingContext extend
     }
 
     @Override
-    public ColorModel getColorModel() 
+    public ColorModel getColorModel()
     {
         return outputColorModel;
     }
 
     @Override
-    public Raster getRaster(int x, int y, int w, int h) 
+    public Raster getRaster(int x, int y, int w, int h)
     {
         // create writable raster
         WritableRaster raster = getColorModel().createCompatibleWritableRaster(w, h);
@@ -397,41 +407,50 @@ public class RadialShadingContext extend
         float root2 = (float) ((-p - root) / denom);
         if (denom < 0)
         {
-            return new float[] { root1, root2 };
+            return new float[]
+            {
+                root1, root2
+            };
         }
         else
         {
-            return new float[] { root2, root1 };
+            return new float[]
+            {
+                root2, root1
+            };
         }
     }
 
     /**
      * Returns the coords values.
+     *
      * @return the coords values as array
      */
-    public float[] getCoords() 
+    public float[] getCoords()
     {
         return coords;
     }
-        
+
     /**
      * Returns the domain values.
+     *
      * @return the domain values as array
      */
-    public float[] getDomain() 
+    public float[] getDomain()
     {
         return domain;
     }
-        
+
     /**
      * Returns the extend values.
+     *
      * @return the extend values as array
      */
-    public boolean[] getExtend() 
+    public boolean[] getExtend()
     {
         return extend;
     }
-    
+
     /**
      * Returns the function.
      *

Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/RadialShadingPaint.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/RadialShadingPaint.java?rev=1616964&r1=1616963&r2=1616964&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/RadialShadingPaint.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/RadialShadingPaint.java Sat Aug  9 15:11:34 2014
@@ -31,6 +31,7 @@ import org.apache.pdfbox.util.Matrix;
 
 /**
  * AWT Paint for radial shading.
+ *
  * @author Andreas Lehmkühler
  */
 public class RadialShadingPaint implements Paint
@@ -40,9 +41,10 @@ public class RadialShadingPaint implemen
     private PDShadingType3 shading;
     private Matrix ctm;
     private int pageHeight;
-    
+
     /**
      * Constructor.
+     *
      * @param shading the shading resources
      * @param ctm current transformation matrix
      * @param pageHeight size of the current page
@@ -55,14 +57,14 @@ public class RadialShadingPaint implemen
     }
 
     @Override
-    public int getTransparency() 
+    public int getTransparency()
     {
         return 0;
     }
 
     @Override
     public PaintContext createContext(ColorModel cm, Rectangle deviceBounds, Rectangle2D userBounds,
-                                      AffineTransform xform, RenderingHints hints)
+            AffineTransform xform, RenderingHints hints)
     {
         try
         {