public class java.awt.image.RescaleOp implements java.awt.image.BufferedImageOp, java.awt.image.RasterOp
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: java.awt.image.RescaleOp
super_class: java.lang.Object
{
float[] scaleFactors;
descriptor: [F
flags: (0x0000)
float[] offsets;
descriptor: [F
flags: (0x0000)
int length;
descriptor: I
flags: (0x0000)
java.awt.RenderingHints hints;
descriptor: Ljava/awt/RenderingHints;
flags: (0x0000)
private int srcNbits;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int dstNbits;
descriptor: I
flags: (0x0002) ACC_PRIVATE
public void <init>(float[], float[], java.awt.RenderingHints);
descriptor: ([F[FLjava/awt/RenderingHints;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
iconst_0
putfield java.awt.image.RescaleOp.length:I
2: aload 0
aload 1
arraylength
putfield java.awt.image.RescaleOp.length:I
3: aload 0
getfield java.awt.image.RescaleOp.length:I
aload 2
arraylength
if_icmple 4
aload 0
aload 2
arraylength
putfield java.awt.image.RescaleOp.length:I
4: StackMap locals: java.awt.image.RescaleOp float[] float[] java.awt.RenderingHints
StackMap stack:
aload 0
aload 0
getfield java.awt.image.RescaleOp.length:I
newarray 6
putfield java.awt.image.RescaleOp.scaleFactors:[F
5: aload 0
aload 0
getfield java.awt.image.RescaleOp.length:I
newarray 6
putfield java.awt.image.RescaleOp.offsets:[F
6: iconst_0
istore 4
start local 4 7: goto 11
8: StackMap locals: int
StackMap stack:
aload 0
getfield java.awt.image.RescaleOp.scaleFactors:[F
iload 4
aload 1
iload 4
faload
fastore
9: aload 0
getfield java.awt.image.RescaleOp.offsets:[F
iload 4
aload 2
iload 4
faload
fastore
10: iinc 4 1
StackMap locals:
StackMap stack:
11: iload 4
aload 0
getfield java.awt.image.RescaleOp.length:I
if_icmplt 8
end local 4 12: aload 0
aload 3
putfield java.awt.image.RescaleOp.hints:Ljava/awt/RenderingHints;
13: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Ljava/awt/image/RescaleOp;
0 14 1 scaleFactors [F
0 14 2 offsets [F
0 14 3 hints Ljava/awt/RenderingHints;
7 12 4 i I
MethodParameters:
Name Flags
scaleFactors
offsets
hints
public void <init>(float, float, java.awt.RenderingHints);
descriptor: (FFLjava/awt/RenderingHints;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
iconst_0
putfield java.awt.image.RescaleOp.length:I
2: aload 0
iconst_1
putfield java.awt.image.RescaleOp.length:I
3: aload 0
iconst_1
newarray 6
putfield java.awt.image.RescaleOp.scaleFactors:[F
4: aload 0
iconst_1
newarray 6
putfield java.awt.image.RescaleOp.offsets:[F
5: aload 0
getfield java.awt.image.RescaleOp.scaleFactors:[F
iconst_0
fload 1
fastore
6: aload 0
getfield java.awt.image.RescaleOp.offsets:[F
iconst_0
fload 2
fastore
7: aload 0
aload 3
putfield java.awt.image.RescaleOp.hints:Ljava/awt/RenderingHints;
8: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Ljava/awt/image/RescaleOp;
0 9 1 scaleFactor F
0 9 2 offset F
0 9 3 hints Ljava/awt/RenderingHints;
MethodParameters:
Name Flags
scaleFactor
offset
hints
public final float[] getScaleFactors(float[]);
descriptor: ([F)[F
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=6, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 2
1: aload 0
getfield java.awt.image.RescaleOp.scaleFactors:[F
invokevirtual float[].clone:()Ljava/lang/Object;
checkcast float[]
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield java.awt.image.RescaleOp.scaleFactors:[F
iconst_0
aload 1
iconst_0
3: aload 0
getfield java.awt.image.RescaleOp.scaleFactors:[F
arraylength
4: aload 1
arraylength
5: invokestatic java.lang.Math.min:(II)I
6: invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
7: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Ljava/awt/image/RescaleOp;
0 8 1 scaleFactors [F
MethodParameters:
Name Flags
scaleFactors
public final float[] getOffsets(float[]);
descriptor: ([F)[F
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=6, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 2
1: aload 0
getfield java.awt.image.RescaleOp.offsets:[F
invokevirtual float[].clone:()Ljava/lang/Object;
checkcast float[]
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield java.awt.image.RescaleOp.offsets:[F
iconst_0
aload 1
iconst_0
3: aload 0
getfield java.awt.image.RescaleOp.offsets:[F
arraylength
aload 1
arraylength
invokestatic java.lang.Math.min:(II)I
4: invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
5: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Ljava/awt/image/RescaleOp;
0 6 1 offsets [F
MethodParameters:
Name Flags
offsets
public final int getNumFactors();
descriptor: ()I
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.awt.image.RescaleOp.length:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/awt/image/RescaleOp;
private java.awt.image.ByteLookupTable createByteLut(float[], float[], int, int);
descriptor: ([F[FII)Ljava/awt/image/ByteLookupTable;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=12, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 1
arraylength
iload 4
multianewarray [[B 2
astore 5
start local 5 1: iconst_0
istore 6
start local 6 2: goto 18
3: StackMap locals: byte[][] int
StackMap stack:
aload 1
iload 6
faload
fstore 7
start local 7 4: aload 2
iload 6
faload
fstore 8
start local 8 5: aload 5
iload 6
aaload
astore 9
start local 9 6: iconst_0
istore 10
start local 10 7: goto 16
8: StackMap locals: java.awt.image.RescaleOp float[] float[] int int byte[][] int float float byte[] int
StackMap stack:
iload 10
i2f
fload 7
fmul
fload 8
fadd
f2i
istore 11
start local 11 9: iload 11
sipush -256
iand
ifeq 14
10: iload 11
ifge 13
11: iconst_0
istore 11
12: goto 14
13: StackMap locals: int
StackMap stack:
sipush 255
istore 11
14: StackMap locals:
StackMap stack:
aload 9
iload 10
iload 11
i2b
bastore
end local 11 15: iinc 10 1
StackMap locals:
StackMap stack:
16: iload 10
iload 4
if_icmplt 8
end local 10 end local 9 end local 8 end local 7 17: iinc 6 1
StackMap locals: java.awt.image.RescaleOp float[] float[] int int byte[][] int
StackMap stack:
18: iload 6
aload 1
arraylength
if_icmplt 3
end local 6 19: new java.awt.image.ByteLookupTable
dup
iconst_0
aload 5
invokespecial java.awt.image.ByteLookupTable.<init>:(I[[B)V
areturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 this Ljava/awt/image/RescaleOp;
0 20 1 scale [F
0 20 2 off [F
0 20 3 nBands I
0 20 4 nElems I
1 20 5 lutData [[B
2 19 6 band I
4 17 7 bandScale F
5 17 8 bandOff F
6 17 9 bandLutData [B
7 17 10 i I
9 15 11 val I
MethodParameters:
Name Flags
scale
off
nBands
nElems
private java.awt.image.ShortLookupTable createShortLut(float[], float[], int, int);
descriptor: ([F[FII)Ljava/awt/image/ShortLookupTable;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=12, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 1
arraylength
iload 4
multianewarray [[S 2
astore 5
start local 5 1: iconst_0
istore 6
start local 6 2: goto 18
3: StackMap locals: short[][] int
StackMap stack:
aload 1
iload 6
faload
fstore 7
start local 7 4: aload 2
iload 6
faload
fstore 8
start local 8 5: aload 5
iload 6
aaload
astore 9
start local 9 6: iconst_0
istore 10
start local 10 7: goto 16
8: StackMap locals: java.awt.image.RescaleOp float[] float[] int int short[][] int float float short[] int
StackMap stack:
iload 10
i2f
fload 7
fmul
fload 8
fadd
f2i
istore 11
start local 11 9: iload 11
ldc -65536
iand
ifeq 14
10: iload 11
ifge 13
11: iconst_0
istore 11
12: goto 14
13: StackMap locals: int
StackMap stack:
ldc 65535
istore 11
14: StackMap locals:
StackMap stack:
aload 9
iload 10
iload 11
i2s
sastore
end local 11 15: iinc 10 1
StackMap locals:
StackMap stack:
16: iload 10
iload 4
if_icmplt 8
end local 10 end local 9 end local 8 end local 7 17: iinc 6 1
StackMap locals: java.awt.image.RescaleOp float[] float[] int int short[][] int
StackMap stack:
18: iload 6
aload 1
arraylength
if_icmplt 3
end local 6 19: new java.awt.image.ShortLookupTable
dup
iconst_0
aload 5
invokespecial java.awt.image.ShortLookupTable.<init>:(I[[S)V
areturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 this Ljava/awt/image/RescaleOp;
0 20 1 scale [F
0 20 2 off [F
0 20 3 nBands I
0 20 4 nElems I
1 20 5 lutData [[S
2 19 6 band I
4 17 7 bandScale F
5 17 8 bandOff F
6 17 9 bandLutData [S
7 17 10 i I
9 15 11 val I
MethodParameters:
Name Flags
scale
off
nBands
nElems
private boolean canUseLookup(java.awt.image.Raster, java.awt.image.Raster);
descriptor: (Ljava/awt/image/Raster;Ljava/awt/image/Raster;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=8, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual java.awt.image.Raster.getDataBuffer:()Ljava/awt/image/DataBuffer;
invokevirtual java.awt.image.DataBuffer.getDataType:()I
istore 3
start local 3 1: iload 3
ifeq 4
2: iload 3
iconst_1
if_icmpeq 4
3: iconst_0
ireturn
4: StackMap locals: int
StackMap stack:
aload 2
invokevirtual java.awt.image.Raster.getSampleModel:()Ljava/awt/image/SampleModel;
astore 4
start local 4 5: aload 0
aload 4
iconst_0
invokevirtual java.awt.image.SampleModel.getSampleSize:(I)I
putfield java.awt.image.RescaleOp.dstNbits:I
6: aload 0
getfield java.awt.image.RescaleOp.dstNbits:I
bipush 8
if_icmpeq 8
aload 0
getfield java.awt.image.RescaleOp.dstNbits:I
bipush 16
if_icmpeq 8
7: iconst_0
ireturn
8: StackMap locals: java.awt.image.SampleModel
StackMap stack:
iconst_1
istore 5
start local 5 9: goto 14
10: StackMap locals: int
StackMap stack:
aload 4
iload 5
invokevirtual java.awt.image.SampleModel.getSampleSize:(I)I
istore 6
start local 6 11: iload 6
aload 0
getfield java.awt.image.RescaleOp.dstNbits:I
if_icmpeq 13
12: iconst_0
ireturn
end local 6 13: StackMap locals:
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
14: iload 5
aload 1
invokevirtual java.awt.image.Raster.getNumBands:()I
if_icmplt 10
end local 5 15: aload 1
invokevirtual java.awt.image.Raster.getSampleModel:()Ljava/awt/image/SampleModel;
astore 5
start local 5 16: aload 0
aload 5
iconst_0
invokevirtual java.awt.image.SampleModel.getSampleSize:(I)I
putfield java.awt.image.RescaleOp.srcNbits:I
17: aload 0
getfield java.awt.image.RescaleOp.srcNbits:I
bipush 16
if_icmple 19
18: iconst_0
ireturn
19: StackMap locals: java.awt.image.RescaleOp java.awt.image.Raster java.awt.image.Raster int java.awt.image.SampleModel java.awt.image.SampleModel
StackMap stack:
iconst_1
istore 6
start local 6 20: goto 25
21: StackMap locals: int
StackMap stack:
aload 5
iload 6
invokevirtual java.awt.image.SampleModel.getSampleSize:(I)I
istore 7
start local 7 22: iload 7
aload 0
getfield java.awt.image.RescaleOp.srcNbits:I
if_icmpeq 24
23: iconst_0
ireturn
end local 7 24: StackMap locals:
StackMap stack:
iinc 6 1
StackMap locals:
StackMap stack:
25: iload 6
aload 1
invokevirtual java.awt.image.Raster.getNumBands:()I
if_icmplt 21
end local 6 26: iconst_1
ireturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 27 0 this Ljava/awt/image/RescaleOp;
0 27 1 src Ljava/awt/image/Raster;
0 27 2 dst Ljava/awt/image/Raster;
1 27 3 datatype I
5 27 4 dstSM Ljava/awt/image/SampleModel;
9 15 5 i I
11 13 6 bandSize I
16 27 5 srcSM Ljava/awt/image/SampleModel;
20 26 6 i I
22 24 7 bandSize I
MethodParameters:
Name Flags
src
dst
public final java.awt.image.BufferedImage filter(java.awt.image.BufferedImage, java.awt.image.BufferedImage);
descriptor: (Ljava/awt/image/BufferedImage;Ljava/awt/image/BufferedImage;)Ljava/awt/image/BufferedImage;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=8, locals=17, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual java.awt.image.BufferedImage.getColorModel:()Ljava/awt/image/ColorModel;
astore 3
start local 3 1: aload 3
invokevirtual java.awt.image.ColorModel.getNumColorComponents:()I
istore 5
start local 5 2: aload 3
instanceof java.awt.image.IndexColorModel
ifeq 5
3: new java.lang.IllegalArgumentException
dup
ldc "Rescaling cannot be performed on an indexed image"
4: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
5: StackMap locals: java.awt.image.RescaleOp java.awt.image.BufferedImage java.awt.image.BufferedImage java.awt.image.ColorModel top int
StackMap stack:
aload 0
getfield java.awt.image.RescaleOp.length:I
iconst_1
if_icmpeq 8
aload 0
getfield java.awt.image.RescaleOp.length:I
iload 5
if_icmpeq 8
6: aload 0
getfield java.awt.image.RescaleOp.length:I
aload 3
invokevirtual java.awt.image.ColorModel.getNumComponents:()I
if_icmpeq 8
7: new java.lang.IllegalArgumentException
dup
ldc "Number of scaling constants does not equal the number of of color or color/alpha components"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
8: StackMap locals:
StackMap stack:
iconst_0
istore 6
start local 6 9: aload 0
getfield java.awt.image.RescaleOp.length:I
iload 5
if_icmple 11
aload 3
invokevirtual java.awt.image.ColorModel.hasAlpha:()Z
ifeq 11
10: aload 0
iload 5
iconst_1
iadd
putfield java.awt.image.RescaleOp.length:I
11: StackMap locals: int
StackMap stack:
aload 1
invokevirtual java.awt.image.BufferedImage.getWidth:()I
istore 7
start local 7 12: aload 1
invokevirtual java.awt.image.BufferedImage.getHeight:()I
istore 8
start local 8 13: aload 2
ifnonnull 17
14: aload 0
aload 1
aconst_null
invokevirtual java.awt.image.RescaleOp.createCompatibleDestImage:(Ljava/awt/image/BufferedImage;Ljava/awt/image/ColorModel;)Ljava/awt/image/BufferedImage;
astore 2
15: aload 3
astore 4
start local 4 16: goto 33
end local 4 17: StackMap locals: int int
StackMap stack:
iload 7
aload 2
invokevirtual java.awt.image.BufferedImage.getWidth:()I
if_icmpeq 22
18: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Src width ("
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 7
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
19: ldc ") not equal to dst width ("
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
20: aload 2
invokevirtual java.awt.image.BufferedImage.getWidth:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ")"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
21: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
22: StackMap locals:
StackMap stack:
iload 8
aload 2
invokevirtual java.awt.image.BufferedImage.getHeight:()I
if_icmpeq 27
23: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Src height ("
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 8
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
24: ldc ") not equal to dst height ("
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
25: aload 2
invokevirtual java.awt.image.BufferedImage.getHeight:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ")"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
26: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
27: StackMap locals:
StackMap stack:
aload 2
invokevirtual java.awt.image.BufferedImage.getColorModel:()Ljava/awt/image/ColorModel;
astore 4
start local 4 28: aload 3
invokevirtual java.awt.image.ColorModel.getColorSpace:()Ljava/awt/color/ColorSpace;
invokevirtual java.awt.color.ColorSpace.getType:()I
29: aload 4
invokevirtual java.awt.image.ColorModel.getColorSpace:()Ljava/awt/color/ColorSpace;
invokevirtual java.awt.color.ColorSpace.getType:()I
30: if_icmpeq 33
31: iconst_1
istore 6
32: aload 0
aload 1
aconst_null
invokevirtual java.awt.image.RescaleOp.createCompatibleDestImage:(Ljava/awt/image/BufferedImage;Ljava/awt/image/ColorModel;)Ljava/awt/image/BufferedImage;
astore 2
33: StackMap locals: java.awt.image.RescaleOp java.awt.image.BufferedImage java.awt.image.BufferedImage java.awt.image.ColorModel java.awt.image.ColorModel int int int int
StackMap stack:
aload 2
astore 9
start local 9 34: aload 0
aload 1
aload 2
invokestatic sun.awt.image.ImagingLib.filter:(Ljava/awt/image/BufferedImageOp;Ljava/awt/image/BufferedImage;Ljava/awt/image/BufferedImage;)Ljava/awt/image/BufferedImage;
ifnonnull 73
35: aload 1
invokevirtual java.awt.image.BufferedImage.getRaster:()Ljava/awt/image/WritableRaster;
astore 10
start local 10 36: aload 2
invokevirtual java.awt.image.BufferedImage.getRaster:()Ljava/awt/image/WritableRaster;
astore 11
start local 11 37: aload 3
invokevirtual java.awt.image.ColorModel.hasAlpha:()Z
ifeq 54
38: iload 5
iconst_1
isub
aload 0
getfield java.awt.image.RescaleOp.length:I
if_icmpeq 39
aload 0
getfield java.awt.image.RescaleOp.length:I
iconst_1
if_icmpne 54
39: StackMap locals: java.awt.image.BufferedImage java.awt.image.WritableRaster java.awt.image.WritableRaster
StackMap stack:
aload 10
invokevirtual java.awt.image.WritableRaster.getMinX:()I
istore 12
start local 12 40: aload 10
invokevirtual java.awt.image.WritableRaster.getMinY:()I
istore 13
start local 13 41: iload 5
iconst_1
isub
newarray 10
astore 14
start local 14 42: iconst_0
istore 15
start local 15 43: goto 46
44: StackMap locals: java.awt.image.RescaleOp java.awt.image.BufferedImage java.awt.image.BufferedImage java.awt.image.ColorModel java.awt.image.ColorModel int int int int java.awt.image.BufferedImage java.awt.image.WritableRaster java.awt.image.WritableRaster int int int[] int
StackMap stack:
aload 14
iload 15
iload 15
iastore
45: iinc 15 1
StackMap locals:
StackMap stack:
46: iload 15
iload 5
iconst_1
isub
if_icmplt 44
end local 15 47: aload 10
iload 12
iload 13
48: aload 10
invokevirtual java.awt.image.WritableRaster.getWidth:()I
49: aload 10
invokevirtual java.awt.image.WritableRaster.getHeight:()I
50: iload 12
iload 13
51: aload 14
52: invokevirtual java.awt.image.WritableRaster.createWritableChild:(IIIIII[I)Ljava/awt/image/WritableRaster;
53: astore 10
end local 14 end local 13 end local 12 54: StackMap locals: java.awt.image.RescaleOp java.awt.image.BufferedImage java.awt.image.BufferedImage java.awt.image.ColorModel java.awt.image.ColorModel int int int int java.awt.image.BufferedImage java.awt.image.WritableRaster java.awt.image.WritableRaster
StackMap stack:
aload 4
invokevirtual java.awt.image.ColorModel.hasAlpha:()Z
ifeq 72
55: aload 11
invokevirtual java.awt.image.WritableRaster.getNumBands:()I
istore 12
start local 12 56: iload 12
iconst_1
isub
aload 0
getfield java.awt.image.RescaleOp.length:I
if_icmpeq 57
aload 0
getfield java.awt.image.RescaleOp.length:I
iconst_1
if_icmpne 72
57: StackMap locals: int
StackMap stack:
aload 11
invokevirtual java.awt.image.WritableRaster.getMinX:()I
istore 13
start local 13 58: aload 11
invokevirtual java.awt.image.WritableRaster.getMinY:()I
istore 14
start local 14 59: iload 5
iconst_1
isub
newarray 10
astore 15
start local 15 60: iconst_0
istore 16
start local 16 61: goto 64
62: StackMap locals: java.awt.image.RescaleOp java.awt.image.BufferedImage java.awt.image.BufferedImage java.awt.image.ColorModel java.awt.image.ColorModel int int int int java.awt.image.BufferedImage java.awt.image.WritableRaster java.awt.image.WritableRaster int int int int[] int
StackMap stack:
aload 15
iload 16
iload 16
iastore
63: iinc 16 1
StackMap locals:
StackMap stack:
64: iload 16
iload 5
iconst_1
isub
if_icmplt 62
end local 16 65: aload 11
iload 13
iload 14
66: aload 11
invokevirtual java.awt.image.WritableRaster.getWidth:()I
67: aload 11
invokevirtual java.awt.image.WritableRaster.getHeight:()I
68: iload 13
iload 14
69: aload 15
70: invokevirtual java.awt.image.WritableRaster.createWritableChild:(IIIIII[I)Ljava/awt/image/WritableRaster;
71: astore 11
end local 15 end local 14 end local 13 end local 12 72: StackMap locals: java.awt.image.RescaleOp java.awt.image.BufferedImage java.awt.image.BufferedImage java.awt.image.ColorModel java.awt.image.ColorModel int int int int java.awt.image.BufferedImage java.awt.image.WritableRaster java.awt.image.WritableRaster
StackMap stack:
aload 0
aload 10
aload 11
invokevirtual java.awt.image.RescaleOp.filter:(Ljava/awt/image/Raster;Ljava/awt/image/WritableRaster;)Ljava/awt/image/WritableRaster;
pop
end local 11 end local 10 73: StackMap locals:
StackMap stack:
iload 6
ifeq 76
74: new java.awt.image.ColorConvertOp
dup
aload 0
getfield java.awt.image.RescaleOp.hints:Ljava/awt/RenderingHints;
invokespecial java.awt.image.ColorConvertOp.<init>:(Ljava/awt/RenderingHints;)V
astore 10
start local 10 75: aload 10
aload 2
aload 9
invokevirtual java.awt.image.ColorConvertOp.filter:(Ljava/awt/image/BufferedImage;Ljava/awt/image/BufferedImage;)Ljava/awt/image/BufferedImage;
pop
end local 10 76: StackMap locals:
StackMap stack:
aload 9
areturn
end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 77 0 this Ljava/awt/image/RescaleOp;
0 77 1 src Ljava/awt/image/BufferedImage;
0 77 2 dst Ljava/awt/image/BufferedImage;
1 77 3 srcCM Ljava/awt/image/ColorModel;
16 17 4 dstCM Ljava/awt/image/ColorModel;
28 77 4 dstCM Ljava/awt/image/ColorModel;
2 77 5 numBands I
9 77 6 needToConvert Z
12 77 7 width I
13 77 8 height I
34 77 9 origDst Ljava/awt/image/BufferedImage;
36 73 10 srcRaster Ljava/awt/image/WritableRaster;
37 73 11 dstRaster Ljava/awt/image/WritableRaster;
40 54 12 minx I
41 54 13 miny I
42 54 14 bands [I
43 47 15 i I
56 72 12 dstNumBands I
58 72 13 minx I
59 72 14 miny I
60 72 15 bands [I
61 65 16 i I
75 76 10 ccop Ljava/awt/image/ColorConvertOp;
MethodParameters:
Name Flags
src
dst
public final java.awt.image.WritableRaster filter(java.awt.image.Raster, java.awt.image.WritableRaster);
descriptor: (Ljava/awt/image/Raster;Ljava/awt/image/WritableRaster;)Ljava/awt/image/WritableRaster;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=5, locals=23, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual java.awt.image.Raster.getNumBands:()I
istore 3
start local 3 1: aload 1
invokevirtual java.awt.image.Raster.getWidth:()I
istore 4
start local 4 2: aload 1
invokevirtual java.awt.image.Raster.getHeight:()I
istore 5
start local 5 3: aconst_null
astore 6
start local 6 4: iconst_0
istore 7
start local 7 5: iconst_0
istore 8
start local 8 6: aload 2
ifnonnull 9
7: aload 0
aload 1
invokevirtual java.awt.image.RescaleOp.createCompatibleDestRaster:(Ljava/awt/image/Raster;)Ljava/awt/image/WritableRaster;
astore 2
8: goto 18
9: StackMap locals: java.awt.image.RescaleOp java.awt.image.Raster java.awt.image.WritableRaster int int int int[] int int
StackMap stack:
iload 5
aload 2
invokevirtual java.awt.image.WritableRaster.getHeight:()I
if_icmpne 10
iload 4
aload 2
invokevirtual java.awt.image.WritableRaster.getWidth:()I
if_icmpeq 12
10: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
ldc "Width or height of Rasters do not match"
11: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
12: StackMap locals:
StackMap stack:
iload 3
aload 2
invokevirtual java.awt.image.WritableRaster.getNumBands:()I
if_icmpeq 18
13: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Number of bands in src "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
14: iload 3
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
15: ldc " does not equal number of bands in dest "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
16: aload 2
invokevirtual java.awt.image.WritableRaster.getNumBands:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
17: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
18: StackMap locals:
StackMap stack:
aload 0
getfield java.awt.image.RescaleOp.length:I
iconst_1
if_icmpeq 20
aload 0
getfield java.awt.image.RescaleOp.length:I
aload 1
invokevirtual java.awt.image.Raster.getNumBands:()I
if_icmpeq 20
19: new java.lang.IllegalArgumentException
dup
ldc "Number of scaling constants does not equal the number of of bands in the src raster"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
20: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
invokestatic sun.awt.image.ImagingLib.filter:(Ljava/awt/image/RasterOp;Ljava/awt/image/Raster;Ljava/awt/image/WritableRaster;)Ljava/awt/image/WritableRaster;
ifnull 22
21: aload 2
areturn
22: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
invokevirtual java.awt.image.RescaleOp.canUseLookup:(Ljava/awt/image/Raster;Ljava/awt/image/Raster;)Z
ifeq 38
23: iconst_1
aload 0
getfield java.awt.image.RescaleOp.srcNbits:I
ishl
istore 9
start local 9 24: iconst_1
aload 0
getfield java.awt.image.RescaleOp.dstNbits:I
ishl
istore 10
start local 10 25: iload 10
sipush 256
if_icmpne 32
26: aload 0
aload 0
getfield java.awt.image.RescaleOp.scaleFactors:[F
aload 0
getfield java.awt.image.RescaleOp.offsets:[F
27: iload 3
iload 9
28: invokevirtual java.awt.image.RescaleOp.createByteLut:([F[FII)Ljava/awt/image/ByteLookupTable;
astore 11
start local 11 29: new java.awt.image.LookupOp
dup
aload 11
aload 0
getfield java.awt.image.RescaleOp.hints:Ljava/awt/RenderingHints;
invokespecial java.awt.image.LookupOp.<init>:(Ljava/awt/image/LookupTable;Ljava/awt/RenderingHints;)V
astore 12
start local 12 30: aload 12
aload 1
aload 2
invokevirtual java.awt.image.LookupOp.filter:(Ljava/awt/image/Raster;Ljava/awt/image/WritableRaster;)Ljava/awt/image/WritableRaster;
pop
end local 12 end local 11 31: goto 80
32: StackMap locals: int int
StackMap stack:
aload 0
aload 0
getfield java.awt.image.RescaleOp.scaleFactors:[F
aload 0
getfield java.awt.image.RescaleOp.offsets:[F
33: iload 3
iload 9
34: invokevirtual java.awt.image.RescaleOp.createShortLut:([F[FII)Ljava/awt/image/ShortLookupTable;
astore 11
start local 11 35: new java.awt.image.LookupOp
dup
aload 11
aload 0
getfield java.awt.image.RescaleOp.hints:Ljava/awt/RenderingHints;
invokespecial java.awt.image.LookupOp.<init>:(Ljava/awt/image/LookupTable;Ljava/awt/RenderingHints;)V
astore 12
start local 12 36: aload 12
aload 1
aload 2
invokevirtual java.awt.image.LookupOp.filter:(Ljava/awt/image/Raster;Ljava/awt/image/WritableRaster;)Ljava/awt/image/WritableRaster;
pop
end local 12 end local 11 end local 10 end local 9 37: goto 80
38: StackMap locals:
StackMap stack:
aload 0
getfield java.awt.image.RescaleOp.length:I
iconst_1
if_icmple 40
39: iconst_1
istore 7
40: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.awt.image.Raster.getMinX:()I
istore 9
start local 9 41: aload 1
invokevirtual java.awt.image.Raster.getMinY:()I
istore 10
start local 10 42: aload 2
invokevirtual java.awt.image.WritableRaster.getMinX:()I
istore 11
start local 11 43: aload 2
invokevirtual java.awt.image.WritableRaster.getMinY:()I
istore 12
start local 12 44: iload 3
newarray 10
astore 16
start local 16 45: iload 3
newarray 10
astore 17
start local 17 46: aload 2
invokevirtual java.awt.image.WritableRaster.getSampleModel:()Ljava/awt/image/SampleModel;
astore 18
start local 18 47: iconst_0
istore 19
start local 19 48: goto 53
49: StackMap locals: java.awt.image.RescaleOp java.awt.image.Raster java.awt.image.WritableRaster int int int int[] int int int int int int top top top int[] int[] java.awt.image.SampleModel int
StackMap stack:
aload 18
iload 19
invokevirtual java.awt.image.SampleModel.getSampleSize:(I)I
istore 15
start local 15 50: aload 16
iload 19
iconst_1
iload 15
ishl
iconst_1
isub
iastore
51: aload 17
iload 19
aload 16
iload 19
iaload
iconst_m1
ixor
iastore
52: iinc 19 1
end local 15 StackMap locals:
StackMap stack:
53: iload 19
iload 3
if_icmplt 49
end local 19 54: iconst_0
istore 20
start local 20 55: goto 79
56: StackMap locals: java.awt.image.RescaleOp java.awt.image.Raster java.awt.image.WritableRaster int int int int[] int int int int int int top top top int[] int[] java.awt.image.SampleModel top int
StackMap stack:
iload 11
istore 14
start local 14 57: iload 9
istore 13
start local 13 58: iconst_0
istore 21
start local 21 59: goto 77
60: StackMap locals: java.awt.image.RescaleOp java.awt.image.Raster java.awt.image.WritableRaster int int int int[] int int int int int int int int top int[] int[] java.awt.image.SampleModel top int int
StackMap stack:
aload 1
iload 13
iload 10
aload 6
invokevirtual java.awt.image.Raster.getPixel:(II[I)[I
astore 6
61: iconst_0
istore 8
62: iconst_0
istore 22
start local 22 63: goto 74
64: StackMap locals: int
StackMap stack:
aload 6
iload 22
iaload
i2f
aload 0
getfield java.awt.image.RescaleOp.scaleFactors:[F
iload 8
faload
fmul
65: aload 0
getfield java.awt.image.RescaleOp.offsets:[F
iload 8
faload
66: fadd
f2i
istore 19
start local 19 67: iload 19
aload 17
iload 22
iaload
iand
ifeq 72
68: iload 19
ifge 71
69: iconst_0
istore 19
70: goto 72
71: StackMap locals: java.awt.image.RescaleOp java.awt.image.Raster java.awt.image.WritableRaster int int int int[] int int int int int int int int top int[] int[] java.awt.image.SampleModel int int int int
StackMap stack:
aload 16
iload 22
iaload
istore 19
72: StackMap locals:
StackMap stack:
aload 6
iload 22
iload 19
iastore
73: iinc 22 1
iload 8
iload 7
iadd
istore 8
end local 19 StackMap locals: java.awt.image.RescaleOp java.awt.image.Raster java.awt.image.WritableRaster int int int int[] int int int int int int int int top int[] int[] java.awt.image.SampleModel top int int int
StackMap stack:
74: iload 22
iload 3
if_icmplt 64
end local 22 75: aload 2
iload 14
iload 12
aload 6
invokevirtual java.awt.image.WritableRaster.setPixel:(II[I)V
76: iinc 21 1
iinc 13 1
iinc 14 1
StackMap locals:
StackMap stack:
77: iload 21
iload 4
if_icmplt 60
end local 21 78: iinc 20 1
iinc 10 1
iinc 12 1
end local 14 end local 13 StackMap locals: java.awt.image.RescaleOp java.awt.image.Raster java.awt.image.WritableRaster int int int int[] int int int int int int top top top int[] int[] java.awt.image.SampleModel top int
StackMap stack:
79: iload 20
iload 5
if_icmplt 56
end local 20 end local 18 end local 17 end local 16 end local 12 end local 11 end local 10 end local 9 80: StackMap locals: java.awt.image.RescaleOp java.awt.image.Raster java.awt.image.WritableRaster int int int int[] int int
StackMap stack:
aload 2
areturn
end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 81 0 this Ljava/awt/image/RescaleOp;
0 81 1 src Ljava/awt/image/Raster;
0 81 2 dst Ljava/awt/image/WritableRaster;
1 81 3 numBands I
2 81 4 width I
3 81 5 height I
4 81 6 srcPix [I
5 81 7 step I
6 81 8 tidx I
24 37 9 srcNgray I
25 37 10 dstNgray I
29 31 11 lut Ljava/awt/image/ByteLookupTable;
30 31 12 op Ljava/awt/image/LookupOp;
35 37 11 lut Ljava/awt/image/ShortLookupTable;
36 37 12 op Ljava/awt/image/LookupOp;
41 80 9 sminX I
42 80 10 sY I
43 80 11 dminX I
44 80 12 dY I
58 79 13 sX I
57 79 14 dX I
50 53 15 nbits I
45 80 16 dstMax [I
46 80 17 dstMask [I
47 80 18 dstSM Ljava/awt/image/SampleModel;
48 54 19 z I
67 74 19 val I
55 80 20 y I
59 78 21 x I
63 75 22 z I
MethodParameters:
Name Flags
src
dst
public final java.awt.geom.Rectangle2D getBounds2D(java.awt.image.BufferedImage);
descriptor: (Ljava/awt/image/BufferedImage;)Ljava/awt/geom/Rectangle2D;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual java.awt.image.BufferedImage.getRaster:()Ljava/awt/image/WritableRaster;
invokevirtual java.awt.image.RescaleOp.getBounds2D:(Ljava/awt/image/Raster;)Ljava/awt/geom/Rectangle2D;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/awt/image/RescaleOp;
0 1 1 src Ljava/awt/image/BufferedImage;
MethodParameters:
Name Flags
src
public final java.awt.geom.Rectangle2D getBounds2D(java.awt.image.Raster);
descriptor: (Ljava/awt/image/Raster;)Ljava/awt/geom/Rectangle2D;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual java.awt.image.Raster.getBounds:()Ljava/awt/Rectangle;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/awt/image/RescaleOp;
0 1 1 src Ljava/awt/image/Raster;
MethodParameters:
Name Flags
src
public java.awt.image.BufferedImage createCompatibleDestImage(java.awt.image.BufferedImage, java.awt.image.ColorModel);
descriptor: (Ljava/awt/image/BufferedImage;Ljava/awt/image/ColorModel;)Ljava/awt/image/BufferedImage;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 2
ifnonnull 8
1: aload 1
invokevirtual java.awt.image.BufferedImage.getColorModel:()Ljava/awt/image/ColorModel;
astore 4
start local 4 2: new java.awt.image.BufferedImage
dup
aload 4
3: aload 1
invokevirtual java.awt.image.BufferedImage.getRaster:()Ljava/awt/image/WritableRaster;
invokevirtual java.awt.image.WritableRaster.createCompatibleWritableRaster:()Ljava/awt/image/WritableRaster;
4: aload 4
invokevirtual java.awt.image.ColorModel.isAlphaPremultiplied:()Z
5: aconst_null
6: invokespecial java.awt.image.BufferedImage.<init>:(Ljava/awt/image/ColorModel;Ljava/awt/image/WritableRaster;ZLjava/util/Hashtable;)V
astore 3
end local 4 start local 3 7: goto 14
end local 3 8: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.awt.image.BufferedImage.getWidth:()I
istore 4
start local 4 9: aload 1
invokevirtual java.awt.image.BufferedImage.getHeight:()I
istore 5
start local 5 10: new java.awt.image.BufferedImage
dup
aload 2
11: aload 2
iload 4
iload 5
invokevirtual java.awt.image.ColorModel.createCompatibleWritableRaster:(II)Ljava/awt/image/WritableRaster;
12: aload 2
invokevirtual java.awt.image.ColorModel.isAlphaPremultiplied:()Z
aconst_null
13: invokespecial java.awt.image.BufferedImage.<init>:(Ljava/awt/image/ColorModel;Ljava/awt/image/WritableRaster;ZLjava/util/Hashtable;)V
astore 3
end local 5 end local 4 start local 3 14: StackMap locals: java.awt.image.BufferedImage
StackMap stack:
aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Ljava/awt/image/RescaleOp;
0 15 1 src Ljava/awt/image/BufferedImage;
0 15 2 destCM Ljava/awt/image/ColorModel;
7 8 3 image Ljava/awt/image/BufferedImage;
14 15 3 image Ljava/awt/image/BufferedImage;
2 7 4 cm Ljava/awt/image/ColorModel;
9 14 4 w I
10 14 5 h I
MethodParameters:
Name Flags
src
destCM
public java.awt.image.WritableRaster createCompatibleDestRaster(java.awt.image.Raster);
descriptor: (Ljava/awt/image/Raster;)Ljava/awt/image/WritableRaster;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 1
aload 1
invokevirtual java.awt.image.Raster.getWidth:()I
aload 1
invokevirtual java.awt.image.Raster.getHeight:()I
invokevirtual java.awt.image.Raster.createCompatibleWritableRaster:(II)Ljava/awt/image/WritableRaster;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/awt/image/RescaleOp;
0 1 1 src Ljava/awt/image/Raster;
MethodParameters:
Name Flags
src
public final java.awt.geom.Point2D getPoint2D(java.awt.geom.Point2D, java.awt.geom.Point2D);
descriptor: (Ljava/awt/geom/Point2D;Ljava/awt/geom/Point2D;)Ljava/awt/geom/Point2D;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 2
ifnonnull 2
1: new java.awt.geom.Point2D$Float
dup
invokespecial java.awt.geom.Point2D$Float.<init>:()V
astore 2
2: StackMap locals:
StackMap stack:
aload 2
aload 1
invokevirtual java.awt.geom.Point2D.getX:()D
aload 1
invokevirtual java.awt.geom.Point2D.getY:()D
invokevirtual java.awt.geom.Point2D.setLocation:(DD)V
3: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljava/awt/image/RescaleOp;
0 4 1 srcPt Ljava/awt/geom/Point2D;
0 4 2 dstPt Ljava/awt/geom/Point2D;
MethodParameters:
Name Flags
srcPt
dstPt
public final java.awt.RenderingHints getRenderingHints();
descriptor: ()Ljava/awt/RenderingHints;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.awt.image.RescaleOp.hints:Ljava/awt/RenderingHints;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/awt/image/RescaleOp;
}
SourceFile: "RescaleOp.java"
InnerClasses:
public Float = java.awt.geom.Point2D$Float of java.awt.geom.Point2D