Package java.awt.image

Examples of java.awt.image.Raster


    private Raster getUncompressedTile(int tileX, int tileY)
        throws IOException {
        int tx = tileXToX(tileX);
        int ty = tileYToY(tileY);
        Raster ras =
            RasterFactory.createInterleavedRaster(DataBuffer.TYPE_BYTE,
                                                  tileWidth,
                                                  tileHeight,
                                                  numChannels*tileWidth,
                                                  numChannels,
                                                  bandOffsets,
                                                  new Point(tx, ty));
        // System.out.println("Uncompressed tile.");

        DataBufferByte dataBuffer = (DataBufferByte)ras.getDataBuffer();
        byte[] data = dataBuffer.getData();

        int tileIndex = tileY*tilesAcross + tileX;
        subimageDataStream.seek(getTileOffset(tileIndex));
        subimageDataStream.readFully(data, 0,
View Full Code Here


        throws IOException {
        // System.out.println("Single color compressed tile.");

        int tx = tileXToX(tileX);
        int ty = tileYToY(tileY);
        Raster ras =
            RasterFactory.createInterleavedRaster(DataBuffer.TYPE_BYTE,
                                                  tileWidth,
                                                  tileHeight,
                                                  numChannels*tileWidth,
                                                  numChannels,
                                                  bandOffsets,
                                                  new Point(tx, ty));

        int subimageColorType = subimageColor[resolution][0] >> 16;

        DataBufferByte dataBuffer = (DataBufferByte)ras.getDataBuffer();
        byte[] data = dataBuffer.getData();

        int tileIndex = tileY*tilesAcross + tileX;
        int color = getCompressionSubtype(tileIndex);
        byte c0 = (byte)((color >> 0) & 0xff);
View Full Code Here

        if (table != 0) {
            InputStream tableStream =
                new ByteArrayInputStream(JPEGTable[table]);
            dec = JPEGCodec.createJPEGDecoder(tableStream);
            Raster junk = dec.decodeAsRaster();
            param = dec.getJPEGDecodeParam();
        }

        subimageDataStream.seek(getTileOffset(tileIndex));
        if (param != null) {
            dec = JPEGCodec.createJPEGDecoder(subimageDataStream, param);
        } else {
            dec = JPEGCodec.createJPEGDecoder(subimageDataStream);
        }
        Raster ras = dec.decodeAsRaster().createTranslatedChild(tx, ty);

        DataBufferByte dataBuffer = (DataBufferByte)ras.getDataBuffer();
        byte[] data = dataBuffer.getData();

        int subimageColorType = subimageColor[resolution][0] >> 16;

        int size = tileWidth*tileHeight;
 
View Full Code Here

        result.put(TINT, (double) 0);
        return result;
    }

    int[] getPixel(PlanarImage image, int x, int y, int[] pixel) {
        Raster tile = image.getTile(image.XToTileX(x), image.YToTileY(y));
        return tile != null ? tile.getPixel(x, y, pixel) : null;
    }
View Full Code Here

                if (back.getBounds().contains(x, y)) {
                    int tx = back.XToTileX(x);
                    int ty = back.YToTileY(y);

                    Raster tile = back.getTile(tx, ty);

                    int[] pixel = null;

                    int averagePixels = 3;

                    if (averagePixels > 1) {
                        Rectangle tileBounds = tile.getBounds();
                        Rectangle sampleRect = new Rectangle(x - averagePixels / 2,
                                                             y - averagePixels / 2,
                                                             averagePixels,
                                                             averagePixels);

                        Rectangle intersection = tileBounds.intersection(sampleRect);

                        pixel = new int[]{0, 0, 0};
                        int currentPixel[] = new int[3];

                        for (int i = intersection.x; i < intersection.x + intersection.width; i++)
                            for (int j = intersection.y; j < intersection.y + intersection.height; j++) {
                                currentPixel = tile.getPixel(i, j, currentPixel);
                                for (int k = 0; k < 3; k++)
                                    pixel[k] = (pixel[k] + currentPixel[k]) / 2;
                            }
                    } else
                        pixel = tile.getPixel(x, y, pixel);

                    return pixel;
                }
            }
            return null;
View Full Code Here

            public PlanarImage getRendering() {
                return softRendering != null ? softRendering.get() : null;
            }

            public Raster getTile(int tileX, int tileY) {
                Raster tile = cache.getTile(this, tileX, tileY);

                if (tile == null) {
                    PlanarImage rendering = softRendering.get();

                    if (rendering == null) {
View Full Code Here

        int minTileY = image.YToTileY(bounds.y);
        int maxTileY = image.YToTileY(bounds.y + bounds.height - 1);

        for (int tx = minTileX; tx <= maxTileX; tx++)
            for (int ty = minTileY; ty <= maxTileY; ty++) {
                Raster raster = image.getTile(tx, ty);

                int minX = Math.max(bounds.x, raster.getMinX());
                int maxX = Math.min(bounds.x + bounds.width, raster.getMinX() + raster.getWidth());
                int minY = Math.max(bounds.y, raster.getMinY());
                int maxY = Math.min(bounds.y + bounds.height, raster.getMinY() + raster.getHeight());

                for (int x = minX; x < maxX; x+=incX)
                    for (int y = minY; y < maxY; y+=incY) {
                        pixel = raster.getPixel(x, y, pixel);
                        for (int c = 0; c < channels; c++) {
                            int v = (int) (511 * logTable[pixel[c]] / (16 * log2));
                            if (v > 255)
                                bins[c][v - 256]++;
                            else
View Full Code Here

            try {
                if (!firstTime) {
                    for (int tileX = 0; !printCancelled && tileX < printImage.getNumXTiles(); tileX++)
                        for (int tileY = 0; !printCancelled && tileY < printImage.getNumYTiles(); tileY++) {
                            Raster tile = printImage.getTile(tileX, tileY);

                            BufferedImage tileImage = new BufferedImage(printImage.getColorModel(),
                                                                        (WritableRaster) tile.createTranslatedChild(0, 0),
                                                                        false, null);

                            g2d.drawRenderedImage(tileImage, AffineTransform.getTranslateInstance(tile.getMinX(),
                                                                                                  tile.getMinY()));

                            listener.incrementBy(1);
                        }
                } else
                    g2d.drawRenderedImage(printImage, identity);
View Full Code Here

                    if (back.getBounds().contains(x, y)) {
                        int tx = back.XToTileX(x);
                        int ty = back.YToTileY(y);

                        Raster tile = back.getTile(tx, ty);

                        int averagePixels = 3;

                        if (averagePixels > 1) {
                            Rectangle tileBounds = tile.getBounds();
                            Rectangle sampleRect = new Rectangle(x-averagePixels/2,
                                                                 y-averagePixels/2,
                                                                 averagePixels,
                                                                 averagePixels);

                            Rectangle intersection = tileBounds.intersection(sampleRect);

                            pixel = new int[] {0, 0, 0};
                            int currentPixel[] = new int[3];

                            for (int i = intersection.x; i < intersection.x + intersection.width; i++)
                                for (int j = intersection.y; j < intersection.y + intersection.height; j++) {
                                    currentPixel = tile.getPixel(i, j, currentPixel);
                                    for (int k = 0; k < 3; k++)
                                        pixel[k] = (pixel[k] + currentPixel[k]) / 2;
                                }
                        } else
                            pixel = tile.getPixel(x, y, pixel);

                        color = new Color(pixel[0] / 256, pixel[1] / 256, pixel[2] / 256);
                        p = null; // Set the point to null, from now on we just remember the color...
                    } else {
                        System.out.println("Something funny here...");
View Full Code Here

     */
    protected void computeRect(Raster[] sources,
                               WritableRaster dest,
                               Rectangle destRect) {

        Raster source = sources[0];
        Rectangle srcRect = mapDestRect(destRect, 0);

        int formatTag = MediaLibAccessor.findCompatibleTag(sources,dest);

View Full Code Here

TOP

Related Classes of java.awt.image.Raster

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.