当前位置: 首页>>代码示例>>Java>>正文


Java SunWritableRaster类代码示例

本文整理汇总了Java中sun.awt.image.SunWritableRaster的典型用法代码示例。如果您正苦于以下问题:Java SunWritableRaster类的具体用法?Java SunWritableRaster怎么用?Java SunWritableRaster使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


SunWritableRaster类属于sun.awt.image包,在下文中一共展示了SunWritableRaster类的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: getRaster

import sun.awt.image.SunWritableRaster; //导入依赖的package包/类
/**
 * 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) {
    if (outRas == null ||
        outRas.getWidth() < w ||
        outRas.getHeight() < h)
    {
        // If h==1, we will probably get lots of "scanline" rects
        outRas = makeRaster((h == 1 ? Math.max(w, maxWidth) : w), h);
    }
    double X = mod(xOrg + x * incXAcross + y * incXDown, bWidth);
    double Y = mod(yOrg + x * incYAcross + y * incYDown, bHeight);

    setRaster((int) X, (int) Y, fractAsInt(X), fractAsInt(Y),
              w, h, bWidth, bHeight,
              colincx, colincxerr,
              colincy, colincyerr,
              rowincx, rowincxerr,
              rowincy, rowincyerr);

    SunWritableRaster.markDirty(outRas);

    return outRas;
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:29,代码来源:TexturePaintContext.java

示例2: finishPainting

import sun.awt.image.SunWritableRaster; //导入依赖的package包/类
/**
 * Called to indicate that painting is finished. We create a new
 * BufferedImage from the offscreen buffer, (optionally) cache it,
 * and paint it.
 */
public void finishPainting(boolean useCache) {
    DataBufferInt dataBuffer = new DataBufferInt(w0 * h0);
    // Note that stealData() requires a markDirty() afterwards
    // since we modify the data in it.
    int transparency =
        nativeFinishPainting(SunWritableRaster.stealData(dataBuffer, 0),
                             w0, h0);
    SunWritableRaster.markDirty(dataBuffer);

    int[] bands = BAND_OFFSETS[transparency - 1];
    WritableRaster raster = Raster.createPackedRaster(
            dataBuffer, w0, h0, w0, bands, null);

    ColorModel cm = COLOR_MODELS[transparency - 1];
    Image img = new BufferedImage(cm, raster, false, null);
    if (useCache) {
        cache.setImage(getClass(), null, w0, h0, cacheArgs, img);
    }
    graphics.drawImage(img, x0, y0, null);
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:26,代码来源:GTKEngine.java

示例3: paintToImage

import sun.awt.image.SunWritableRaster; //导入依赖的package包/类
protected void paintToImage(Component c, Image image, Graphics g,
                            int w, int h, Object[] args) {
    boolean accEnabled = false;
    Skin skin = (Skin)args[0];
    Part part = skin.part;
    State state = (State)args[1];
    if (state == null) {
        state = skin.state;
    }
    if (c == null) {
        c = skin.component;
    }
    BufferedImage bi = (BufferedImage)image;

    WritableRaster raster = bi.getRaster();
    DataBufferInt dbi = (DataBufferInt)raster.getDataBuffer();
    // Note that stealData() requires a markDirty() afterwards
    // since we modify the data in it.
    ThemeReader.paintBackground(SunWritableRaster.stealData(dbi, 0),
                                part.getControlName(c), part.getValue(),
                                State.getValue(part, state),
                                0, 0, w, h, w);
    SunWritableRaster.markDirty(dbi);
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:25,代码来源:XPStyle.java

示例4: finishPainting

import sun.awt.image.SunWritableRaster; //导入依赖的package包/类
/**
 * Called to indicate that painting is finished. We create a new
 * BufferedImage from the offscreen buffer, (optionally) cache it,
 * and paint it.
 */
public BufferedImage finishPainting(boolean useCache) {
    DataBufferInt dataBuffer = new DataBufferInt(w0 * h0);
    // Note that stealData() requires a markDirty() afterwards
    // since we modify the data in it.
    int transparency =
        nativeFinishPainting(SunWritableRaster.stealData(dataBuffer, 0),
                             w0, h0);
    SunWritableRaster.markDirty(dataBuffer);

    int[] bands = BAND_OFFSETS[transparency - 1];
    WritableRaster raster = Raster.createPackedRaster(
            dataBuffer, w0, h0, w0, bands, null);

    ColorModel cm = COLOR_MODELS[transparency - 1];
    BufferedImage img = new BufferedImage(cm, raster, false, null);
    if (useCache) {
        cache.setImage(getClass(), null, w0, h0, cacheArgs, img);
    }
    graphics.drawImage(img, x0, y0, null);
    return img;
}
 
开发者ID:AdoptOpenJDK,项目名称:openjdk-jdk10,代码行数:27,代码来源:GTKEngine.java

示例5: paintToImage

import sun.awt.image.SunWritableRaster; //导入依赖的package包/类
protected void paintToImage(Component c, Image image, Graphics g,
                            int w, int h, Object[] args) {
    Skin skin = (Skin)args[0];
    Part part = skin.part;
    State state = (State)args[1];
    if (state == null) {
        state = skin.state;
    }
    if (c == null) {
        c = skin.component;
    }
    BufferedImage bi = (BufferedImage)image;
    w = bi.getWidth();
    h = bi.getHeight();

    WritableRaster raster = bi.getRaster();
    DataBufferInt dbi = (DataBufferInt)raster.getDataBuffer();
    // Note that stealData() requires a markDirty() afterwards
    // since we modify the data in it.
    ThemeReader.paintBackground(SunWritableRaster.stealData(dbi, 0),
                                part.getControlName(c), part.getValue(),
                                State.getValue(part, state),
                                0, 0, w, h, w);
    SunWritableRaster.markDirty(dbi);
}
 
开发者ID:AdoptOpenJDK,项目名称:openjdk-jdk10,代码行数:26,代码来源:XPStyle.java


注:本文中的sun.awt.image.SunWritableRaster类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。