home *** CD-ROM | disk | FTP | other *** search
/ S283 Planetary Science &n…he Search for Life DVD 2 / DVD-ROM.iso / install / jre1_3 / lib / rt.jar / java / awt / image / PixelInterleavedSampleModel.class (.txt) < prev    next >
Encoding:
Java Class File  |  1979-12-31  |  1.2 KB  |  58 lines

  1. package java.awt.image;
  2.  
  3. public class PixelInterleavedSampleModel extends ComponentSampleModel {
  4.    public PixelInterleavedSampleModel(int var1, int var2, int var3, int var4, int var5, int[] var6) {
  5.       super(var1, var2, var3, var4, var5, var6);
  6.       int var7 = var6[0];
  7.       int var8 = var6[0];
  8.  
  9.       for(int var9 = 1; var9 < var6.length; ++var9) {
  10.          var7 = Math.min(var7, var6[var9]);
  11.          var8 = Math.max(var8, var6[var9]);
  12.       }
  13.  
  14.       var8 -= var7;
  15.       if (var8 > var5) {
  16.          throw new IllegalArgumentException("Offsets between bands must be less than the scanline  stride");
  17.       } else if (var4 * var2 > var5) {
  18.          throw new IllegalArgumentException("Pixel stride times width must be less than or equal to the scanline stride");
  19.       } else if (var4 < var8) {
  20.          throw new IllegalArgumentException("Pixel stride must be greater than or equal to the offsets between bands");
  21.       }
  22.    }
  23.  
  24.    public SampleModel createCompatibleSampleModel(int var1, int var2) {
  25.       int var3 = super.bandOffsets[0];
  26.       int var4 = super.bandOffsets.length;
  27.  
  28.       for(int var5 = 1; var5 < var4; ++var5) {
  29.          if (super.bandOffsets[var5] < var3) {
  30.             var3 = super.bandOffsets[var5];
  31.          }
  32.       }
  33.  
  34.       int[] var6;
  35.       if (var3 > 0) {
  36.          var6 = new int[var4];
  37.  
  38.          for(int var7 = 0; var7 < var4; ++var7) {
  39.             var6[var7] = super.bandOffsets[var7] - var3;
  40.          }
  41.       } else {
  42.          var6 = super.bandOffsets;
  43.       }
  44.  
  45.       return new PixelInterleavedSampleModel(super.dataType, var1, var2, super.pixelStride, super.pixelStride * var1, var6);
  46.    }
  47.  
  48.    public SampleModel createSubsetSampleModel(int[] var1) {
  49.       int[] var2 = new int[var1.length];
  50.  
  51.       for(int var3 = 0; var3 < var1.length; ++var3) {
  52.          var2[var3] = super.bandOffsets[var1[var3]];
  53.       }
  54.  
  55.       return new PixelInterleavedSampleModel(super.dataType, super.width, super.height, super.pixelStride, super.scanlineStride, var2);
  56.    }
  57. }
  58.