javafx.scene.image.WritablePixelFormat#sun.awt.image.IntegerComponentRaster源码实例Demo

下面列出了javafx.scene.image.WritablePixelFormat#sun.awt.image.IntegerComponentRaster 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

/**
 * Return a Raster containing the colors generated for the graphics
 * operation.
 * @param x,y,w,h The area in device space for which colors are
 * generated.
 */
public Raster getRaster(int x, int y, int w, int h) {
    double rowrel = (x - x1) * dx + (y - y1) * dy;

    Raster rast = saved;
    if (rast == null || rast.getWidth() < w || rast.getHeight() < h) {
        rast = getCachedRaster(model, w, h);
        saved = rast;
    }
    IntegerComponentRaster irast = (IntegerComponentRaster) rast;
    int off = irast.getDataOffset(0);
    int adjust = irast.getScanlineStride() - w;
    int[] pixels = irast.getDataStorage();

    if (cyclic) {
        cycleFillRaster(pixels, off, adjust, w, h, rowrel, dx, dy);
    } else {
        clipFillRaster(pixels, off, adjust, w, h, rowrel, dx, dy);
    }

    irast.markDirty();

    return rast;
}
 
public synchronized Raster getRaster(int x, int y, int w, int h) {
    WritableRaster t = savedTile;

    if (t == null || w > t.getWidth() || h > t.getHeight()) {
        t = getColorModel().createCompatibleWritableRaster(w, h);
        IntegerComponentRaster icr = (IntegerComponentRaster) t;
        Arrays.fill(icr.getDataStorage(), color);
        // Note - markDirty is probably unnecessary since icr is brand new
        icr.markDirty();
        if (w <= 64 && h <= 64) {
            savedTile = t;
        }
    }

    return t;
}
 
源代码3 项目: dragonwell8_jdk   文件: GradientPaintContext.java
/**
 * Return a Raster containing the colors generated for the graphics
 * operation.
 * @param x,y,w,h The area in device space for which colors are
 * generated.
 */
public Raster getRaster(int x, int y, int w, int h) {
    double rowrel = (x - x1) * dx + (y - y1) * dy;

    Raster rast = saved;
    if (rast == null || rast.getWidth() < w || rast.getHeight() < h) {
        rast = getCachedRaster(model, w, h);
        saved = rast;
    }
    IntegerComponentRaster irast = (IntegerComponentRaster) rast;
    int off = irast.getDataOffset(0);
    int adjust = irast.getScanlineStride() - w;
    int[] pixels = irast.getDataStorage();

    if (cyclic) {
        cycleFillRaster(pixels, off, adjust, w, h, rowrel, dx, dy);
    } else {
        clipFillRaster(pixels, off, adjust, w, h, rowrel, dx, dy);
    }

    irast.markDirty();

    return rast;
}
 
源代码4 项目: jdk8u_jdk   文件: ColorPaintContext.java
public synchronized Raster getRaster(int x, int y, int w, int h) {
    WritableRaster t = savedTile;

    if (t == null || w > t.getWidth() || h > t.getHeight()) {
        t = getColorModel().createCompatibleWritableRaster(w, h);
        IntegerComponentRaster icr = (IntegerComponentRaster) t;
        Arrays.fill(icr.getDataStorage(), color);
        // Note - markDirty is probably unnecessary since icr is brand new
        icr.markDirty();
        if (w <= 64 && h <= 64) {
            savedTile = t;
        }
    }

    return t;
}
 
源代码5 项目: dragonwell8_jdk   文件: WTrayIconPeer.java
void createNativeImage(BufferedImage bimage) {
    Raster raster = bimage.getRaster();
    byte[] andMask = new byte[TRAY_ICON_MASK_SIZE];
    int  pixels[] = ((DataBufferInt)raster.getDataBuffer()).getData();
    int npixels = pixels.length;
    int ficW = raster.getWidth();

    for (int i = 0; i < npixels; i++) {
        int ibyte = i / 8;
        int omask = 1 << (7 - (i % 8));

        if ((pixels[i] & 0xff000000) == 0) {
            // Transparent bit
            if (ibyte < andMask.length) {
                andMask[ibyte] |= omask;
            }
        }
    }

    if (raster instanceof IntegerComponentRaster) {
        ficW = ((IntegerComponentRaster)raster).getScanlineStride();
    }
    setNativeIcon(((DataBufferInt)bimage.getRaster().getDataBuffer()).getData(),
                  andMask, ficW, raster.getWidth(), raster.getHeight());
}
 
源代码6 项目: TencentKona-8   文件: GradientPaintContext.java
/**
 * Return a Raster containing the colors generated for the graphics
 * operation.
 * @param x,y,w,h The area in device space for which colors are
 * generated.
 */
public Raster getRaster(int x, int y, int w, int h) {
    double rowrel = (x - x1) * dx + (y - y1) * dy;

    Raster rast = saved;
    if (rast == null || rast.getWidth() < w || rast.getHeight() < h) {
        rast = getCachedRaster(model, w, h);
        saved = rast;
    }
    IntegerComponentRaster irast = (IntegerComponentRaster) rast;
    int off = irast.getDataOffset(0);
    int adjust = irast.getScanlineStride() - w;
    int[] pixels = irast.getDataStorage();

    if (cyclic) {
        cycleFillRaster(pixels, off, adjust, w, h, rowrel, dx, dy);
    } else {
        clipFillRaster(pixels, off, adjust, w, h, rowrel, dx, dy);
    }

    irast.markDirty();

    return rast;
}
 
源代码7 项目: TencentKona-8   文件: ColorPaintContext.java
public synchronized Raster getRaster(int x, int y, int w, int h) {
    WritableRaster t = savedTile;

    if (t == null || w > t.getWidth() || h > t.getHeight()) {
        t = getColorModel().createCompatibleWritableRaster(w, h);
        IntegerComponentRaster icr = (IntegerComponentRaster) t;
        Arrays.fill(icr.getDataStorage(), color);
        // Note - markDirty is probably unnecessary since icr is brand new
        icr.markDirty();
        if (w <= 64 && h <= 64) {
            savedTile = t;
        }
    }

    return t;
}
 
源代码8 项目: jdk8u_jdk   文件: GradientPaintContext.java
/**
 * Return a Raster containing the colors generated for the graphics
 * operation.
 * @param x,y,w,h The area in device space for which colors are
 * generated.
 */
public Raster getRaster(int x, int y, int w, int h) {
    double rowrel = (x - x1) * dx + (y - y1) * dy;

    Raster rast = saved;
    if (rast == null || rast.getWidth() < w || rast.getHeight() < h) {
        rast = getCachedRaster(model, w, h);
        saved = rast;
    }
    IntegerComponentRaster irast = (IntegerComponentRaster) rast;
    int off = irast.getDataOffset(0);
    int adjust = irast.getScanlineStride() - w;
    int[] pixels = irast.getDataStorage();

    if (cyclic) {
        cycleFillRaster(pixels, off, adjust, w, h, rowrel, dx, dy);
    } else {
        clipFillRaster(pixels, off, adjust, w, h, rowrel, dx, dy);
    }

    irast.markDirty();

    return rast;
}
 
源代码9 项目: TencentKona-8   文件: WTrayIconPeer.java
void createNativeImage(BufferedImage bimage) {
    Raster raster = bimage.getRaster();
    byte[] andMask = new byte[TRAY_ICON_MASK_SIZE];
    int  pixels[] = ((DataBufferInt)raster.getDataBuffer()).getData();
    int npixels = pixels.length;
    int ficW = raster.getWidth();

    for (int i = 0; i < npixels; i++) {
        int ibyte = i / 8;
        int omask = 1 << (7 - (i % 8));

        if ((pixels[i] & 0xff000000) == 0) {
            // Transparent bit
            if (ibyte < andMask.length) {
                andMask[ibyte] |= omask;
            }
        }
    }

    if (raster instanceof IntegerComponentRaster) {
        ficW = ((IntegerComponentRaster)raster).getScanlineStride();
    }
    setNativeIcon(((DataBufferInt)bimage.getRaster().getDataBuffer()).getData(),
                  andMask, ficW, raster.getWidth(), raster.getHeight());
}
 
源代码10 项目: jdk8u60   文件: GradientPaintContext.java
/**
 * Return a Raster containing the colors generated for the graphics
 * operation.
 * @param x,y,w,h The area in device space for which colors are
 * generated.
 */
public Raster getRaster(int x, int y, int w, int h) {
    double rowrel = (x - x1) * dx + (y - y1) * dy;

    Raster rast = saved;
    if (rast == null || rast.getWidth() < w || rast.getHeight() < h) {
        rast = getCachedRaster(model, w, h);
        saved = rast;
    }
    IntegerComponentRaster irast = (IntegerComponentRaster) rast;
    int off = irast.getDataOffset(0);
    int adjust = irast.getScanlineStride() - w;
    int[] pixels = irast.getDataStorage();

    if (cyclic) {
        cycleFillRaster(pixels, off, adjust, w, h, rowrel, dx, dy);
    } else {
        clipFillRaster(pixels, off, adjust, w, h, rowrel, dx, dy);
    }

    irast.markDirty();

    return rast;
}
 
源代码11 项目: jdk8u60   文件: ColorPaintContext.java
public synchronized Raster getRaster(int x, int y, int w, int h) {
    WritableRaster t = savedTile;

    if (t == null || w > t.getWidth() || h > t.getHeight()) {
        t = getColorModel().createCompatibleWritableRaster(w, h);
        IntegerComponentRaster icr = (IntegerComponentRaster) t;
        Arrays.fill(icr.getDataStorage(), color);
        // Note - markDirty is probably unnecessary since icr is brand new
        icr.markDirty();
        if (w <= 64 && h <= 64) {
            savedTile = t;
        }
    }

    return t;
}
 
源代码12 项目: jdk8u60   文件: WTrayIconPeer.java
void createNativeImage(BufferedImage bimage) {
    Raster raster = bimage.getRaster();
    byte[] andMask = new byte[TRAY_ICON_MASK_SIZE];
    int  pixels[] = ((DataBufferInt)raster.getDataBuffer()).getData();
    int npixels = pixels.length;
    int ficW = raster.getWidth();

    for (int i = 0; i < npixels; i++) {
        int ibyte = i / 8;
        int omask = 1 << (7 - (i % 8));

        if ((pixels[i] & 0xff000000) == 0) {
            // Transparent bit
            if (ibyte < andMask.length) {
                andMask[ibyte] |= omask;
            }
        }
    }

    if (raster instanceof IntegerComponentRaster) {
        ficW = ((IntegerComponentRaster)raster).getScanlineStride();
    }
    setNativeIcon(((DataBufferInt)bimage.getRaster().getDataBuffer()).getData(),
                  andMask, ficW, raster.getWidth(), raster.getHeight());
}
 
源代码13 项目: JDKSourceCode1.8   文件: GradientPaintContext.java
/**
 * Return a Raster containing the colors generated for the graphics
 * operation.
 * @param x,y,w,h The area in device space for which colors are
 * generated.
 */
public Raster getRaster(int x, int y, int w, int h) {
    double rowrel = (x - x1) * dx + (y - y1) * dy;

    Raster rast = saved;
    if (rast == null || rast.getWidth() < w || rast.getHeight() < h) {
        rast = getCachedRaster(model, w, h);
        saved = rast;
    }
    IntegerComponentRaster irast = (IntegerComponentRaster) rast;
    int off = irast.getDataOffset(0);
    int adjust = irast.getScanlineStride() - w;
    int[] pixels = irast.getDataStorage();

    if (cyclic) {
        cycleFillRaster(pixels, off, adjust, w, h, rowrel, dx, dy);
    } else {
        clipFillRaster(pixels, off, adjust, w, h, rowrel, dx, dy);
    }

    irast.markDirty();

    return rast;
}
 
源代码14 项目: JDKSourceCode1.8   文件: ColorPaintContext.java
public synchronized Raster getRaster(int x, int y, int w, int h) {
    WritableRaster t = savedTile;

    if (t == null || w > t.getWidth() || h > t.getHeight()) {
        t = getColorModel().createCompatibleWritableRaster(w, h);
        IntegerComponentRaster icr = (IntegerComponentRaster) t;
        Arrays.fill(icr.getDataStorage(), color);
        // Note - markDirty is probably unnecessary since icr is brand new
        icr.markDirty();
        if (w <= 64 && h <= 64) {
            savedTile = t;
        }
    }

    return t;
}
 
源代码15 项目: openjdk-jdk8u   文件: ColorPaintContext.java
public synchronized Raster getRaster(int x, int y, int w, int h) {
    WritableRaster t = savedTile;

    if (t == null || w > t.getWidth() || h > t.getHeight()) {
        t = getColorModel().createCompatibleWritableRaster(w, h);
        IntegerComponentRaster icr = (IntegerComponentRaster) t;
        Arrays.fill(icr.getDataStorage(), color);
        // Note - markDirty is probably unnecessary since icr is brand new
        icr.markDirty();
        if (w <= 64 && h <= 64) {
            savedTile = t;
        }
    }

    return t;
}
 
源代码16 项目: openjdk-jdk8u   文件: WTrayIconPeer.java
void createNativeImage(BufferedImage bimage) {
    Raster raster = bimage.getRaster();
    byte[] andMask = new byte[TRAY_ICON_MASK_SIZE];
    int  pixels[] = ((DataBufferInt)raster.getDataBuffer()).getData();
    int npixels = pixels.length;
    int ficW = raster.getWidth();

    for (int i = 0; i < npixels; i++) {
        int ibyte = i / 8;
        int omask = 1 << (7 - (i % 8));

        if ((pixels[i] & 0xff000000) == 0) {
            // Transparent bit
            if (ibyte < andMask.length) {
                andMask[ibyte] |= omask;
            }
        }
    }

    if (raster instanceof IntegerComponentRaster) {
        ficW = ((IntegerComponentRaster)raster).getScanlineStride();
    }
    setNativeIcon(((DataBufferInt)bimage.getRaster().getDataBuffer()).getData(),
                  andMask, ficW, raster.getWidth(), raster.getHeight());
}
 
/**
 * Return a Raster containing the colors generated for the graphics
 * operation.
 * @param x,y,w,h The area in device space for which colors are
 * generated.
 */
public Raster getRaster(int x, int y, int w, int h) {
    double rowrel = (x - x1) * dx + (y - y1) * dy;

    Raster rast = saved;
    if (rast == null || rast.getWidth() < w || rast.getHeight() < h) {
        rast = getCachedRaster(model, w, h);
        saved = rast;
    }
    IntegerComponentRaster irast = (IntegerComponentRaster) rast;
    int off = irast.getDataOffset(0);
    int adjust = irast.getScanlineStride() - w;
    int[] pixels = irast.getDataStorage();

    if (cyclic) {
        cycleFillRaster(pixels, off, adjust, w, h, rowrel, dx, dy);
    } else {
        clipFillRaster(pixels, off, adjust, w, h, rowrel, dx, dy);
    }

    irast.markDirty();

    return rast;
}
 
源代码18 项目: openjdk-jdk8u-backup   文件: ColorPaintContext.java
public synchronized Raster getRaster(int x, int y, int w, int h) {
    WritableRaster t = savedTile;

    if (t == null || w > t.getWidth() || h > t.getHeight()) {
        t = getColorModel().createCompatibleWritableRaster(w, h);
        IntegerComponentRaster icr = (IntegerComponentRaster) t;
        Arrays.fill(icr.getDataStorage(), color);
        // Note - markDirty is probably unnecessary since icr is brand new
        icr.markDirty();
        if (w <= 64 && h <= 64) {
            savedTile = t;
        }
    }

    return t;
}
 
源代码19 项目: openjdk-jdk8u-backup   文件: WTrayIconPeer.java
void createNativeImage(BufferedImage bimage) {
    Raster raster = bimage.getRaster();
    byte[] andMask = new byte[TRAY_ICON_MASK_SIZE];
    int  pixels[] = ((DataBufferInt)raster.getDataBuffer()).getData();
    int npixels = pixels.length;
    int ficW = raster.getWidth();

    for (int i = 0; i < npixels; i++) {
        int ibyte = i / 8;
        int omask = 1 << (7 - (i % 8));

        if ((pixels[i] & 0xff000000) == 0) {
            // Transparent bit
            if (ibyte < andMask.length) {
                andMask[ibyte] |= omask;
            }
        }
    }

    if (raster instanceof IntegerComponentRaster) {
        ficW = ((IntegerComponentRaster)raster).getScanlineStride();
    }
    setNativeIcon(((DataBufferInt)bimage.getRaster().getDataBuffer()).getData(),
                  andMask, ficW, raster.getWidth(), raster.getHeight());
}
 
源代码20 项目: Bytecoder   文件: GradientPaintContext.java
/**
 * Return a Raster containing the colors generated for the graphics
 * operation.
 * @param x,y,w,h The area in device space for which colors are
 * generated.
 */
public Raster getRaster(int x, int y, int w, int h) {
    double rowrel = (x - x1) * dx + (y - y1) * dy;

    Raster rast = saved;
    if (rast == null || rast.getWidth() < w || rast.getHeight() < h) {
        rast = getCachedRaster(model, w, h);
        saved = rast;
    }
    IntegerComponentRaster irast = (IntegerComponentRaster) rast;
    int off = irast.getDataOffset(0);
    int adjust = irast.getScanlineStride() - w;
    int[] pixels = irast.getDataStorage();

    if (cyclic) {
        cycleFillRaster(pixels, off, adjust, w, h, rowrel, dx, dy);
    } else {
        clipFillRaster(pixels, off, adjust, w, h, rowrel, dx, dy);
    }

    irast.markDirty();

    return rast;
}
 
源代码21 项目: Bytecoder   文件: ColorPaintContext.java
public synchronized Raster getRaster(int x, int y, int w, int h) {
    WritableRaster t = savedTile;

    if (t == null || w > t.getWidth() || h > t.getHeight()) {
        t = getColorModel().createCompatibleWritableRaster(w, h);
        IntegerComponentRaster icr = (IntegerComponentRaster) t;
        Arrays.fill(icr.getDataStorage(), color);
        // Note - markDirty is probably unnecessary since icr is brand new
        icr.markDirty();
        if (w <= 64 && h <= 64) {
            savedTile = t;
        }
    }

    return t;
}
 
源代码22 项目: openjdk-jdk9   文件: GradientPaintContext.java
/**
 * Return a Raster containing the colors generated for the graphics
 * operation.
 * @param x,y,w,h The area in device space for which colors are
 * generated.
 */
public Raster getRaster(int x, int y, int w, int h) {
    double rowrel = (x - x1) * dx + (y - y1) * dy;

    Raster rast = saved;
    if (rast == null || rast.getWidth() < w || rast.getHeight() < h) {
        rast = getCachedRaster(model, w, h);
        saved = rast;
    }
    IntegerComponentRaster irast = (IntegerComponentRaster) rast;
    int off = irast.getDataOffset(0);
    int adjust = irast.getScanlineStride() - w;
    int[] pixels = irast.getDataStorage();

    if (cyclic) {
        cycleFillRaster(pixels, off, adjust, w, h, rowrel, dx, dy);
    } else {
        clipFillRaster(pixels, off, adjust, w, h, rowrel, dx, dy);
    }

    irast.markDirty();

    return rast;
}
 
源代码23 项目: openjdk-jdk9   文件: ColorPaintContext.java
public synchronized Raster getRaster(int x, int y, int w, int h) {
    WritableRaster t = savedTile;

    if (t == null || w > t.getWidth() || h > t.getHeight()) {
        t = getColorModel().createCompatibleWritableRaster(w, h);
        IntegerComponentRaster icr = (IntegerComponentRaster) t;
        Arrays.fill(icr.getDataStorage(), color);
        // Note - markDirty is probably unnecessary since icr is brand new
        icr.markDirty();
        if (w <= 64 && h <= 64) {
            savedTile = t;
        }
    }

    return t;
}
 
源代码24 项目: openjdk-jdk9   文件: WTrayIconPeer.java
void createNativeImage(BufferedImage bimage) {
    Raster raster = bimage.getRaster();
    byte[] andMask = new byte[TRAY_ICON_MASK_SIZE];
    int  pixels[] = ((DataBufferInt)raster.getDataBuffer()).getData();
    int npixels = pixels.length;
    int ficW = raster.getWidth();

    for (int i = 0; i < npixels; i++) {
        int ibyte = i / 8;
        int omask = 1 << (7 - (i % 8));

        if ((pixels[i] & 0xff000000) == 0) {
            // Transparent bit
            if (ibyte < andMask.length) {
                andMask[ibyte] |= omask;
            }
        }
    }

    if (raster instanceof IntegerComponentRaster) {
        ficW = ((IntegerComponentRaster)raster).getScanlineStride();
    }
    setNativeIcon(((DataBufferInt)bimage.getRaster().getDataBuffer()).getData(),
                  andMask, ficW, raster.getWidth(), raster.getHeight());
}
 
源代码25 项目: jdk8u-jdk   文件: ColorPaintContext.java
public synchronized Raster getRaster(int x, int y, int w, int h) {
    WritableRaster t = savedTile;

    if (t == null || w > t.getWidth() || h > t.getHeight()) {
        t = getColorModel().createCompatibleWritableRaster(w, h);
        IntegerComponentRaster icr = (IntegerComponentRaster) t;
        Arrays.fill(icr.getDataStorage(), color);
        // Note - markDirty is probably unnecessary since icr is brand new
        icr.markDirty();
        if (w <= 64 && h <= 64) {
            savedTile = t;
        }
    }

    return t;
}
 
源代码26 项目: jdk8u_jdk   文件: WTrayIconPeer.java
void createNativeImage(BufferedImage bimage) {
    Raster raster = bimage.getRaster();
    byte[] andMask = new byte[TRAY_ICON_MASK_SIZE];
    int  pixels[] = ((DataBufferInt)raster.getDataBuffer()).getData();
    int npixels = pixels.length;
    int ficW = raster.getWidth();

    for (int i = 0; i < npixels; i++) {
        int ibyte = i / 8;
        int omask = 1 << (7 - (i % 8));

        if ((pixels[i] & 0xff000000) == 0) {
            // Transparent bit
            if (ibyte < andMask.length) {
                andMask[ibyte] |= omask;
            }
        }
    }

    if (raster instanceof IntegerComponentRaster) {
        ficW = ((IntegerComponentRaster)raster).getScanlineStride();
    }
    setNativeIcon(((DataBufferInt)bimage.getRaster().getDataBuffer()).getData(),
                  andMask, ficW, raster.getWidth(), raster.getHeight());
}
 
源代码27 项目: jdk8u-jdk   文件: WTrayIconPeer.java
void createNativeImage(BufferedImage bimage) {
    Raster raster = bimage.getRaster();
    byte[] andMask = new byte[TRAY_ICON_MASK_SIZE];
    int  pixels[] = ((DataBufferInt)raster.getDataBuffer()).getData();
    int npixels = pixels.length;
    int ficW = raster.getWidth();

    for (int i = 0; i < npixels; i++) {
        int ibyte = i / 8;
        int omask = 1 << (7 - (i % 8));

        if ((pixels[i] & 0xff000000) == 0) {
            // Transparent bit
            if (ibyte < andMask.length) {
                andMask[ibyte] |= omask;
            }
        }
    }

    if (raster instanceof IntegerComponentRaster) {
        ficW = ((IntegerComponentRaster)raster).getScanlineStride();
    }
    setNativeIcon(((DataBufferInt)bimage.getRaster().getDataBuffer()).getData(),
                  andMask, ficW, raster.getWidth(), raster.getHeight());
}
 
源代码28 项目: Java8CN   文件: GradientPaintContext.java
/**
 * Return a Raster containing the colors generated for the graphics
 * operation.
 * @param x,y,w,h The area in device space for which colors are
 * generated.
 */
public Raster getRaster(int x, int y, int w, int h) {
    double rowrel = (x - x1) * dx + (y - y1) * dy;

    Raster rast = saved;
    if (rast == null || rast.getWidth() < w || rast.getHeight() < h) {
        rast = getCachedRaster(model, w, h);
        saved = rast;
    }
    IntegerComponentRaster irast = (IntegerComponentRaster) rast;
    int off = irast.getDataOffset(0);
    int adjust = irast.getScanlineStride() - w;
    int[] pixels = irast.getDataStorage();

    if (cyclic) {
        cycleFillRaster(pixels, off, adjust, w, h, rowrel, dx, dy);
    } else {
        clipFillRaster(pixels, off, adjust, w, h, rowrel, dx, dy);
    }

    irast.markDirty();

    return rast;
}
 
源代码29 项目: Java8CN   文件: ColorPaintContext.java
public synchronized Raster getRaster(int x, int y, int w, int h) {
    WritableRaster t = savedTile;

    if (t == null || w > t.getWidth() || h > t.getHeight()) {
        t = getColorModel().createCompatibleWritableRaster(w, h);
        IntegerComponentRaster icr = (IntegerComponentRaster) t;
        Arrays.fill(icr.getDataStorage(), color);
        // Note - markDirty is probably unnecessary since icr is brand new
        icr.markDirty();
        if (w <= 64 && h <= 64) {
            savedTile = t;
        }
    }

    return t;
}
 
源代码30 项目: hottub   文件: GradientPaintContext.java
/**
 * Return a Raster containing the colors generated for the graphics
 * operation.
 * @param x,y,w,h The area in device space for which colors are
 * generated.
 */
public Raster getRaster(int x, int y, int w, int h) {
    double rowrel = (x - x1) * dx + (y - y1) * dy;

    Raster rast = saved;
    if (rast == null || rast.getWidth() < w || rast.getHeight() < h) {
        rast = getCachedRaster(model, w, h);
        saved = rast;
    }
    IntegerComponentRaster irast = (IntegerComponentRaster) rast;
    int off = irast.getDataOffset(0);
    int adjust = irast.getScanlineStride() - w;
    int[] pixels = irast.getDataStorage();

    if (cyclic) {
        cycleFillRaster(pixels, off, adjust, w, h, rowrel, dx, dy);
    } else {
        clipFillRaster(pixels, off, adjust, w, h, rowrel, dx, dy);
    }

    irast.markDirty();

    return rast;
}