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 / TexturePaintContext$Byte.class (.txt) < prev    next >
Encoding:
Java Class File  |  1979-12-31  |  1.6 KB  |  127 lines

  1. package java.awt;
  2.  
  3. import java.awt.geom.AffineTransform;
  4. import java.awt.image.ColorModel;
  5. import java.awt.image.Raster;
  6. import java.awt.image.WritableRaster;
  7. import sun.awt.image.ByteInterleavedRaster;
  8.  
  9. class TexturePaintContext$Byte extends TexturePaintContext {
  10.    ByteInterleavedRaster srcRas;
  11.    byte[] inData;
  12.    int inOff;
  13.    int inSpan;
  14.    byte[] outData;
  15.    int outOff;
  16.    int outSpan;
  17.  
  18.    public TexturePaintContext$Byte(ByteInterleavedRaster var1, ColorModel var2, AffineTransform var3, int var4) {
  19.       super(var2, var3, ((Raster)var1).getWidth(), ((Raster)var1).getHeight(), var4);
  20.       this.srcRas = var1;
  21.       this.inData = var1.getDataStorage();
  22.       this.inSpan = var1.getScanlineStride();
  23.       this.inOff = var1.getDataOffset(0);
  24.    }
  25.  
  26.    public WritableRaster makeRaster(int var1, int var2) {
  27.       WritableRaster var3 = this.srcRas.createCompatibleWritableRaster(var1, var2);
  28.       ByteInterleavedRaster var4 = (ByteInterleavedRaster)var3;
  29.       this.outData = var4.getDataStorage();
  30.       this.outSpan = var4.getScanlineStride();
  31.       this.outOff = var4.getDataOffset(0);
  32.       return var3;
  33.    }
  34.  
  35.    public void setRaster(int var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10, int var11, int var12, int var13, int var14, int var15, int var16) {
  36.       byte[] var17 = this.inData;
  37.       byte[] var18 = this.outData;
  38.       int var19 = this.outOff;
  39.       int var20 = this.inSpan;
  40.       int var21 = this.inOff;
  41.       int var22 = this.outSpan;
  42.       boolean var23 = var9 == 1 && var10 == 0 && var11 == 0 && var12 == 0;
  43.       int var24 = var1;
  44.       int var25 = var2;
  45.       int var26 = var3;
  46.       int var27 = var4;
  47.       if (var23) {
  48.          var22 -= var5;
  49.       }
  50.  
  51.       for(int var28 = 0; var28 < var6; ++var28) {
  52.          if (var23) {
  53.             int var37 = var21 + var25 * var20 + var7;
  54.             var1 = var7 - var24;
  55.             var19 += var5;
  56.             if (var7 >= 32) {
  57.                int var38 = var5;
  58.  
  59.                while(var38 > 0) {
  60.                   int var31 = var38 < var1 ? var38 : var1;
  61.                   System.arraycopy(var17, var37 - var1, var18, var19 - var38, var31);
  62.                   var38 -= var31;
  63.                   if ((var1 -= var31) == 0) {
  64.                      var1 = var7;
  65.                   }
  66.                }
  67.             } else {
  68.                for(int var30 = var5; var30 > 0; --var30) {
  69.                   var18[var19 - var30] = var17[var37 - var1];
  70.                   --var1;
  71.                   if (var1 == 0) {
  72.                      var1 = var7;
  73.                   }
  74.                }
  75.             }
  76.          } else {
  77.             var1 = var24;
  78.             var2 = var25;
  79.             var3 = var26;
  80.             var4 = var27;
  81.  
  82.             for(int var29 = 0; var29 < var5; ++var29) {
  83.                var18[var19 + var29] = var17[var21 + var2 * var20 + var1];
  84.                if ((var3 += var10) < 0) {
  85.                   var3 &= Integer.MAX_VALUE;
  86.                   ++var1;
  87.                }
  88.  
  89.                if ((var1 += var9) >= var7) {
  90.                   var1 -= var7;
  91.                }
  92.  
  93.                if ((var4 += var12) < 0) {
  94.                   var4 &= Integer.MAX_VALUE;
  95.                   ++var2;
  96.                }
  97.  
  98.                if ((var2 += var11) >= var8) {
  99.                   var2 -= var8;
  100.                }
  101.             }
  102.          }
  103.  
  104.          if ((var26 += var14) < 0) {
  105.             var26 &= Integer.MAX_VALUE;
  106.             ++var24;
  107.          }
  108.  
  109.          if ((var24 += var13) >= var7) {
  110.             var24 -= var7;
  111.          }
  112.  
  113.          if ((var27 += var16) < 0) {
  114.             var27 &= Integer.MAX_VALUE;
  115.             ++var25;
  116.          }
  117.  
  118.          if ((var25 += var15) >= var8) {
  119.             var25 -= var8;
  120.          }
  121.  
  122.          var19 += var22;
  123.       }
  124.  
  125.    }
  126. }
  127.