home *** CD-ROM | disk | FTP | other *** search
/ S283 Planetary Science &… the Search for Life CD 3 / 0_CD-ROM.iso / install / jre1_3 / lib / rt.jar / sun / java2d / loops / OpaqueCopyAny.class (.txt) < prev    next >
Encoding:
Java Class File  |  1979-12-31  |  1.3 KB  |  55 lines

  1. package sun.java2d.loops;
  2.  
  3. import java.awt.image.ColorModel;
  4. import java.awt.image.Raster;
  5. import java.awt.image.WritableRaster;
  6.  
  7. class OpaqueCopyAny extends OpaqueBlit {
  8.    OpaqueCopyAny() {
  9.       super(CustomComponent.ST_CUSTOM__CUSTOM);
  10.    }
  11.  
  12.    public void OpaqueBlit(ImageData var1, ImageData var2, int var3, int var4) {
  13.       int var5 = var1.getXViewArea();
  14.       int var6 = var1.getYViewArea();
  15.       int var7 = var2.getXViewArea();
  16.       int var8 = var2.getYViewArea();
  17.       if (null != var1 && null != var2) {
  18.          ColorModel var9 = var1.getColorModel();
  19.          ColorModel var10 = var2.getColorModel();
  20.          Raster var11 = var1.getRaster();
  21.          WritableRaster var12 = (WritableRaster)var2.getRaster();
  22.          if (null != var11 && null != var12) {
  23.             var3 = Math.min(var11.getWidth() - var5, var3);
  24.             var3 = Math.min(((Raster)var12).getWidth() - var7, var3);
  25.             var4 = Math.min(var11.getHeight() - var6, var4);
  26.             var4 = Math.min(((Raster)var12).getHeight() - var8, var4);
  27.             Object var13 = null;
  28.             Object var14 = null;
  29.             if (var2.getTransparency() == 1) {
  30.                for(int var15 = 0; var15 < var4; ++var15) {
  31.                   for(int var16 = 0; var16 < var3; ++var16) {
  32.                      var13 = var11.getDataElements(var16 + var5, var15 + var6, var13);
  33.                      int var17 = var9.getRGB(var13);
  34.                      if ((var17 & -16777216) != 0) {
  35.                         var14 = var10.getDataElements(var17, var14);
  36.                         var12.setDataElements(var16 + var7, var15 + var8, var14);
  37.                      }
  38.                   }
  39.                }
  40.             } else {
  41.                for(int var22 = 0; var22 < var4; ++var22) {
  42.                   for(int var23 = 0; var23 < var3; ++var23) {
  43.                      var13 = var11.getDataElements(var23 + var5, var22 + var6, var13);
  44.                      int var24 = var9.getRGB(var13);
  45.                      var14 = var10.getDataElements(var24, var14);
  46.                      var12.setDataElements(var23 + var7, var22 + var8, var14);
  47.                   }
  48.                }
  49.             }
  50.  
  51.          }
  52.       }
  53.    }
  54. }
  55.