Class AxialShading

  • All Implemented Interfaces:
    java.awt.Paint, java.awt.PaintContext, java.awt.Transparency

    public class AxialShading
    extends ShadingPattern
    Implementation of Type 2 shadings, which vary color along a linear axis.

    The shading takes a pixel in the area to be to filled and drops a perpendicular to the axis defined by coords[]. It then calculates the parametric point t of the intersection, with t running from domain[0] to domain[1] along the axis. t is then turned into a color value using the supplied pdf function. TODO: currently ignores transform

    • Constructor Detail

      • AxialShading

        public AxialShading​(java.util.Map patternDict,
                            java.util.Map shadingDict,
                            PDFFile srcFile)
    • Method Detail

      • doShading

        public void doShading​(int[] samples,
                              int x,
                              int y,
                              int w,
                              int h)
        Description copied from class: ShadingPattern
        Subclasses should implement this method to draw the shading. Samples is defined to be an array of 8 bit persample/4 samples per pixel ARGB pixels. There is no padding, so all scanlines are w integers wide.
        Specified by:
        doShading in class ShadingPattern
      • setDeviceTransform

        public void setDeviceTransform​(java.awt.geom.AffineTransform x,
                                       java.awt.Rectangle devRect)
        Sets the transform from user space to device space
        Overrides:
        setDeviceTransform in class ShadingPattern