예제 #1
0
        public static WritableRaster createBandedRaster(DataBuffer dataBuffer,
                                                        int w, int h, int scanlineStride, int [] bankIndices,
                                                        int [] bandOffsets, Point location)
        {
            if (w <= 0 || h <= 0)
            {
                // awt.22E=w or h is less than or equal to zero
                throw new RasterFormatException("w or h is less than or equal to zero"); //$NON-NLS-1$
            }

            if (location == null)
            {
                location = new Point(0, 0);
            }

            if ((long)location.x + w > java.lang.Integer.MAX_VALUE ||
                (long)location.y + h > java.lang.Integer.MAX_VALUE)
            {
                // awt.276=location.x + w or location.y + h results in integer overflow
                throw new RasterFormatException("location.x + w or location.y + h results in integer overflow"); //$NON-NLS-1$
            }

            if (bankIndices == null || bandOffsets == null)
            {
                // awt.277=bankIndices or bandOffsets is null
                throw new java.lang.ArrayIndexOutOfBoundsException("bankIndices or bandOffsets is null"); //$NON-NLS-1$
            }

            if (dataBuffer == null)
            {
                // awt.278=dataBuffer is null
                throw new java.lang.NullPointerException("dataBuffer is null"); //$NON-NLS-1$
            }

            int dataType = dataBuffer.getDataType();

            if (dataType != DataBuffer.TYPE_BYTE &&
                dataType != DataBuffer.TYPE_USHORT &&
                dataType != DataBuffer.TYPE_INT)
            {
                // awt.230=dataType is not one of the supported data types
                throw new java.lang.IllegalArgumentException("dataType is not one of the supported data types"); //$NON-NLS-1$
            }

            BandedSampleModel sampleModel = new BandedSampleModel(dataType, w, h,
                                                                  scanlineStride, bankIndices, bandOffsets);

            return(new OrdinaryWritableRaster(sampleModel, dataBuffer, location));
        }
예제 #2
0
 public BandedSampleModel(int dataType, int w, int h, int numBands) :
     this(dataType, w, h, w, BandedSampleModel.createIndices(numBands),
          BandedSampleModel.createOffsets(numBands))
 {
 }
예제 #3
0
파일: Raster.cs 프로젝트: sailesh341/JavApi
        public static WritableRaster createBandedRaster(DataBuffer dataBuffer,
            int w, int h, int scanlineStride, int []bankIndices,
            int []bandOffsets, Point location)
        {
            if (w <= 0 || h <= 0) {
            // awt.22E=w or h is less than or equal to zero
            throw new RasterFormatException("w or h is less than or equal to zero"); //$NON-NLS-1$
            }

            if (location == null) {
            location = new Point(0, 0);
            }

            if ((long) location.x + w > java.lang.Integer.MAX_VALUE
                || (long) location.y + h > java.lang.Integer.MAX_VALUE) {
            // awt.276=location.x + w or location.y + h results in integer overflow
            throw new RasterFormatException("location.x + w or location.y + h results in integer overflow"); //$NON-NLS-1$
            }

            if (bankIndices == null || bandOffsets == null) {
            // awt.277=bankIndices or bandOffsets is null
            throw new java.lang.ArrayIndexOutOfBoundsException("bankIndices or bandOffsets is null"); //$NON-NLS-1$
            }

            if (dataBuffer == null) {
            // awt.278=dataBuffer is null
            throw new java.lang.NullPointerException("dataBuffer is null"); //$NON-NLS-1$
            }

            int dataType = dataBuffer.getDataType();

            if (dataType != DataBuffer.TYPE_BYTE
                && dataType != DataBuffer.TYPE_USHORT
                && dataType != DataBuffer.TYPE_INT) {
            // awt.230=dataType is not one of the supported data types
            throw new java.lang.IllegalArgumentException("dataType is not one of the supported data types"); //$NON-NLS-1$
            }

            BandedSampleModel sampleModel = new BandedSampleModel(dataType, w, h,
                scanlineStride, bankIndices, bandOffsets);

            return new OrdinaryWritableRaster(sampleModel, dataBuffer, location);
        }