Package java.awt.image

Examples of java.awt.image.DataBufferShort


        int endY = YToTileY(rectYend);

        //
        //  Get parameters of destination raster
        //
        DataBufferShort dstDB = (DataBufferShort)dstRaster.getDataBuffer();
        short[] dst           = dstDB.getData();
        int dstPS            = dstSM.getPixelStride();
        int dstSS            = dstSM.getScanlineStride();

        boolean tileParamsSet = false;
        ComponentSampleModel srcSM = null;
        int srcPS=0, srcSS=0;
        int xOrg, yOrg;
        int srcX1, srcY1, srcX2, srcY2, srcW, srcH;

        for (int y = startY; y <= endY; y++) {
            for (int x = startX; x <= endX; x++) {
                Raster tile = getTile(x, y);
                if (tile == null) {
                    //
                    // Out-of-bounds tile. Zero fill will be supplied
                    // since dstRaster is initialized to zero
                    //
                    continue;
                }

                if (! tileParamsSet) {
                    //
                    // These are constant for all tiles,
                    // so only set them once.
                    //
                    srcSM = (ComponentSampleModel)tile.getSampleModel();
                    srcPS = srcSM.getPixelStride();
                    srcSS = srcSM.getScanlineStride();
                    tileParamsSet = true;
                }

                //
                //  Intersect the tile and the rectangle
                //  Avoid use of Math.min/max
                //
                yOrg  = y*tileHeight + tileGridYOffset;
                srcY1 = yOrg;
                srcY2 = srcY1 + tileHeight - 1;
                if (bounds.y > srcY1) srcY1 = bounds.y;
                if (rectYend < srcY2) srcY2 = rectYend;
                srcH = srcY2 - srcY1 + 1;

                xOrg  = x*tileWidth + tileGridXOffset;
                srcX1 = xOrg;
                srcX2 = srcX1 + tileWidth - 1;
                if (bounds.x > srcX1) srcX1 = bounds.x;
                if (rectXend < srcX2) srcX2 = rectXend;
                srcW = srcX2 - srcX1 + 1;

                int dstX = srcX1 - bounds.x;
                int dstY = srcY1 - bounds.y;

                // Get the actual data array
                DataBufferShort srcDB = (DataBufferShort)tile.getDataBuffer();
                short[] src = srcDB.getData();

                int nsamps = srcW * srcPS;
                boolean useArrayCopy = (nsamps >= MIN_ARRAYCOPY_SIZE);

                int ySrcIdx = (srcY1 - yOrg)*srcSS + (srcX1 - xOrg)*srcPS;
 
View Full Code Here


        case DataBuffer.TYPE_USHORT:
            d = new DataBufferUShort(size);
            break;

        case DataBuffer.TYPE_SHORT:
            d = new DataBufferShort(size);
            break;

        case DataBuffer.TYPE_INT:
            d = new DataBufferInt(size);
            break;
View Full Code Here

        case DataBuffer.TYPE_USHORT:
            d = new DataBufferUShort(size, banks);
            break;

        case DataBuffer.TYPE_SHORT:
            d = new DataBufferShort(size, banks);
            break;

        case DataBuffer.TYPE_INT:
            d = new DataBufferInt(size, banks);
            break;
View Full Code Here

/*  750 */         this.mlimages = new mediaLibImage[1];
/*  751 */         this.mlimages[0] = new mediaLibImage(6, this.numBands, rect.width, rect.height, scanlineStride, dataOffset, dbus.getData());
/*      */
/*  759 */         break;
/*      */       case 2:
/*  761 */         DataBufferShort dbs = (DataBufferShort)raster.getDataBuffer();
/*  762 */         this.mlimages = new mediaLibImage[1];
/*  763 */         this.mlimages[0] = new mediaLibImage(2, this.numBands, rect.width, rect.height, scanlineStride, dataOffset, dbs.getData());
/*      */
/*  771 */         break;
/*      */       case 3:
/*  773 */         DataBufferInt dbi = (DataBufferInt)raster.getDataBuffer();
/*  774 */         this.mlimages = new mediaLibImage[1];
View Full Code Here

/*      */
/* 1091 */         rasDataArray = rasUShortDataArray;
/*      */
/* 1093 */         break;
/*      */       case 2:
/* 1095 */         DataBufferShort dbs = (DataBufferShort)this.raster.getDataBuffer();
/*      */
/* 1097 */         short[][] rasShortDataArray = new short[this.numBands][];
/* 1098 */         for (int i = 0; i < this.numBands; i++) {
/* 1099 */           rasShortDataArray[i] = dbs.getData(rasBankIndices[i]);
/*      */         }
/*      */
/* 1102 */         rasDataArray = rasShortDataArray;
/*      */
/* 1104 */         break;
View Full Code Here

/*      */
/* 1302 */           rasDataArray = rasUShortDataArray;
/*      */
/* 1304 */           break;
/*      */         case 2:
/* 1306 */           DataBufferShort dbs = (DataBufferShort)this.raster.getDataBuffer();
/*      */
/* 1308 */           short[][] rasShortDataArray = new short[this.numBands][];
/* 1309 */           for (int i = 0; i < this.numBands; i++) {
/* 1310 */             rasShortDataArray[i] = dbs.getData(rasBankIndices[i]);
/*      */           }
/*      */
/* 1313 */           rasDataArray = rasShortDataArray;
/*      */
/* 1315 */           break;
View Full Code Here

/*  176 */       break;
/*      */     case 1:
/*  179 */       d = new DataBufferUShort(size);
/*  180 */       break;
/*      */     case 2:
/*  183 */       d = new DataBufferShort(size);
/*  184 */       break;
/*      */     case 3:
/*  187 */       d = new DataBufferInt(size);
/*  188 */       break;
/*      */     case 4:
View Full Code Here

/*  334 */       break;
/*      */     case 1:
/*  337 */       d = new DataBufferUShort(size, banks);
/*  338 */       break;
/*      */     case 2:
/*  341 */       d = new DataBufferShort(size, banks);
/*  342 */       break;
/*      */     case 3:
/*  345 */       d = new DataBufferInt(size, banks);
/*  346 */       break;
/*      */     case 4:
View Full Code Here

/*  271 */       break;
/*      */     case 3:
/*  273 */       dataBuffer = new DataBufferInt(size, this.numBanks);
/*  274 */       break;
/*      */     case 2:
/*  276 */       dataBuffer = new DataBufferShort(size, this.numBanks);
/*  277 */       break;
/*      */     case 4:
/*  279 */       dataBuffer = DataBufferUtils.createDataBufferFloat(size, this.numBanks);
/*  280 */       break;
/*      */     case 5:
View Full Code Here

/*     */     case 0:
/* 170 */       dataBuffer = new DataBufferByte((byte[][])dataArray, size, offsets);
/*     */
/* 172 */       break;
/*     */     case 2:
/* 174 */       dataBuffer = new DataBufferShort((short[][])dataArray, size, offsets);
/*     */
/* 176 */       break;
/*     */     case 1:
/* 178 */       dataBuffer = new DataBufferUShort((short[][])dataArray, size, offsets);
/*     */
View Full Code Here

TOP

Related Classes of java.awt.image.DataBufferShort

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.