public class sun.java2d.pipe.DrawImage implements sun.java2d.pipe.DrawImagePipe
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: sun.java2d.pipe.DrawImage
super_class: java.lang.Object
{
private static final double MAX_TX_ERROR;
descriptor: D
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1.0E-4
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 // sun.java2d.pipe.DrawImage this
0: .line 60
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
return
end local 0 // sun.java2d.pipe.DrawImage this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/java2d/pipe/DrawImage;
public boolean copyImage(sun.java2d.SunGraphics2D, java.awt.Image, int, int, java.awt.Color);
descriptor: (Lsun/java2d/SunGraphics2D;Ljava/awt/Image;IILjava/awt/Color;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=10, locals=9, args_size=6
start local 0 // sun.java2d.pipe.DrawImage this
start local 1 // sun.java2d.SunGraphics2D sg
start local 2 // java.awt.Image img
start local 3 // int x
start local 4 // int y
start local 5 // java.awt.Color bgColor
0: .line 66
aload 2 /* img */
aconst_null
invokevirtual java.awt.Image.getWidth:(Ljava/awt/image/ImageObserver;)I
istore 6 /* imgw */
start local 6 // int imgw
1: .line 67
aload 2 /* img */
aconst_null
invokevirtual java.awt.Image.getHeight:(Ljava/awt/image/ImageObserver;)I
istore 7 /* imgh */
start local 7 // int imgh
2: .line 68
aload 1 /* sg */
invokestatic sun.java2d.pipe.DrawImage.isSimpleTranslate:(Lsun/java2d/SunGraphics2D;)Z
ifeq 7
3: .line 69
aload 0 /* this */
aload 1 /* sg */
aload 2 /* img */
aload 5 /* bgColor */
4: .line 70
iload 3 /* x */
aload 1 /* sg */
getfield sun.java2d.SunGraphics2D.transX:I
iadd
iload 4 /* y */
aload 1 /* sg */
getfield sun.java2d.SunGraphics2D.transY:I
iadd
5: .line 71
iconst_0
iconst_0
iload 6 /* imgw */
iload 7 /* imgh */
6: .line 69
invokevirtual sun.java2d.pipe.DrawImage.renderImageCopy:(Lsun/java2d/SunGraphics2D;Ljava/awt/Image;Ljava/awt/Color;IIIIII)Z
ireturn
7: .line 73
StackMap locals: int int
StackMap stack:
aload 1 /* sg */
getfield sun.java2d.SunGraphics2D.transform:Ljava/awt/geom/AffineTransform;
astore 8 /* atfm */
start local 8 // java.awt.geom.AffineTransform atfm
8: .line 74
iload 3 /* x */
iload 4 /* y */
ior
ifeq 11
9: .line 75
new java.awt.geom.AffineTransform
dup
aload 8 /* atfm */
invokespecial java.awt.geom.AffineTransform.<init>:(Ljava/awt/geom/AffineTransform;)V
astore 8 /* atfm */
10: .line 76
aload 8 /* atfm */
iload 3 /* x */
i2d
iload 4 /* y */
i2d
invokevirtual java.awt.geom.AffineTransform.translate:(DD)V
11: .line 78
StackMap locals: java.awt.geom.AffineTransform
StackMap stack:
aload 0 /* this */
aload 1 /* sg */
aload 2 /* img */
aload 8 /* atfm */
aload 1 /* sg */
getfield sun.java2d.SunGraphics2D.interpolationType:I
12: .line 79
iconst_0
iconst_0
iload 6 /* imgw */
iload 7 /* imgh */
aload 5 /* bgColor */
13: .line 78
invokevirtual sun.java2d.pipe.DrawImage.transformImage:(Lsun/java2d/SunGraphics2D;Ljava/awt/Image;Ljava/awt/geom/AffineTransform;IIIIILjava/awt/Color;)V
14: .line 80
iconst_1
ireturn
end local 8 // java.awt.geom.AffineTransform atfm
end local 7 // int imgh
end local 6 // int imgw
end local 5 // java.awt.Color bgColor
end local 4 // int y
end local 3 // int x
end local 2 // java.awt.Image img
end local 1 // sun.java2d.SunGraphics2D sg
end local 0 // sun.java2d.pipe.DrawImage this
LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lsun/java2d/pipe/DrawImage;
0 15 1 sg Lsun/java2d/SunGraphics2D;
0 15 2 img Ljava/awt/Image;
0 15 3 x I
0 15 4 y I
0 15 5 bgColor Ljava/awt/Color;
1 15 6 imgw I
2 15 7 imgh I
8 15 8 atfm Ljava/awt/geom/AffineTransform;
MethodParameters:
Name Flags
sg
img
x
y
bgColor
public boolean copyImage(sun.java2d.SunGraphics2D, java.awt.Image, int, int, int, int, int, int, java.awt.Color);
descriptor: (Lsun/java2d/SunGraphics2D;Ljava/awt/Image;IIIIIILjava/awt/Color;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=12, locals=10, args_size=10
start local 0 // sun.java2d.pipe.DrawImage this
start local 1 // sun.java2d.SunGraphics2D sg
start local 2 // java.awt.Image img
start local 3 // int dx
start local 4 // int dy
start local 5 // int sx
start local 6 // int sy
start local 7 // int w
start local 8 // int h
start local 9 // java.awt.Color bgColor
0: .line 87
aload 1 /* sg */
invokestatic sun.java2d.pipe.DrawImage.isSimpleTranslate:(Lsun/java2d/SunGraphics2D;)Z
ifeq 5
1: .line 88
aload 0 /* this */
aload 1 /* sg */
aload 2 /* img */
aload 9 /* bgColor */
2: .line 89
iload 3 /* dx */
aload 1 /* sg */
getfield sun.java2d.SunGraphics2D.transX:I
iadd
iload 4 /* dy */
aload 1 /* sg */
getfield sun.java2d.SunGraphics2D.transY:I
iadd
3: .line 90
iload 5 /* sx */
iload 6 /* sy */
iload 7 /* w */
iload 8 /* h */
4: .line 88
invokevirtual sun.java2d.pipe.DrawImage.renderImageCopy:(Lsun/java2d/SunGraphics2D;Ljava/awt/Image;Ljava/awt/Color;IIIIII)Z
ireturn
5: .line 92
StackMap locals:
StackMap stack:
aload 0 /* this */
aload 1 /* sg */
aload 2 /* img */
iload 3 /* dx */
iload 4 /* dy */
iload 3 /* dx */
iload 7 /* w */
iadd
iload 4 /* dy */
iload 8 /* h */
iadd
6: .line 93
iload 5 /* sx */
iload 6 /* sy */
iload 5 /* sx */
iload 7 /* w */
iadd
iload 6 /* sy */
iload 8 /* h */
iadd
aload 9 /* bgColor */
7: .line 92
invokevirtual sun.java2d.pipe.DrawImage.scaleImage:(Lsun/java2d/SunGraphics2D;Ljava/awt/Image;IIIIIIIILjava/awt/Color;)Z
pop
8: .line 94
iconst_1
ireturn
end local 9 // java.awt.Color bgColor
end local 8 // int h
end local 7 // int w
end local 6 // int sy
end local 5 // int sx
end local 4 // int dy
end local 3 // int dx
end local 2 // java.awt.Image img
end local 1 // sun.java2d.SunGraphics2D sg
end local 0 // sun.java2d.pipe.DrawImage this
LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lsun/java2d/pipe/DrawImage;
0 9 1 sg Lsun/java2d/SunGraphics2D;
0 9 2 img Ljava/awt/Image;
0 9 3 dx I
0 9 4 dy I
0 9 5 sx I
0 9 6 sy I
0 9 7 w I
0 9 8 h I
0 9 9 bgColor Ljava/awt/Color;
MethodParameters:
Name Flags
sg
img
dx
dy
sx
sy
w
h
bgColor
public boolean scaleImage(sun.java2d.SunGraphics2D, java.awt.Image, int, int, int, int, java.awt.Color);
descriptor: (Lsun/java2d/SunGraphics2D;Ljava/awt/Image;IIIILjava/awt/Color;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=17, locals=18, args_size=8
start local 0 // sun.java2d.pipe.DrawImage this
start local 1 // sun.java2d.SunGraphics2D sg
start local 2 // java.awt.Image img
start local 3 // int x
start local 4 // int y
start local 5 // int width
start local 6 // int height
start local 7 // java.awt.Color bgColor
0: .line 101
aload 2 /* img */
aconst_null
invokevirtual java.awt.Image.getWidth:(Ljava/awt/image/ImageObserver;)I
istore 8 /* imgw */
start local 8 // int imgw
1: .line 102
aload 2 /* img */
aconst_null
invokevirtual java.awt.Image.getHeight:(Ljava/awt/image/ImageObserver;)I
istore 9 /* imgh */
start local 9 // int imgh
2: .line 107
iload 5 /* width */
ifle 13
iload 6 /* height */
ifle 13
aload 1 /* sg */
invokestatic sun.java2d.pipe.DrawImage.isSimpleTranslate:(Lsun/java2d/SunGraphics2D;)Z
ifeq 13
3: .line 108
iload 3 /* x */
aload 1 /* sg */
getfield sun.java2d.SunGraphics2D.transX:I
iadd
i2d
dstore 10 /* dx1 */
start local 10 // double dx1
4: .line 109
iload 4 /* y */
aload 1 /* sg */
getfield sun.java2d.SunGraphics2D.transY:I
iadd
i2d
dstore 12 /* dy1 */
start local 12 // double dy1
5: .line 110
dload 10 /* dx1 */
iload 5 /* width */
i2d
dadd
dstore 14 /* dx2 */
start local 14 // double dx2
6: .line 111
dload 12 /* dy1 */
iload 6 /* height */
i2d
dadd
dstore 16 /* dy2 */
start local 16 // double dy2
7: .line 112
aload 0 /* this */
aload 1 /* sg */
aload 2 /* img */
aload 7 /* bgColor */
aload 1 /* sg */
getfield sun.java2d.SunGraphics2D.interpolationType:I
8: .line 113
iconst_0
iconst_0
iload 8 /* imgw */
iload 9 /* imgh */
9: .line 114
dload 10 /* dx1 */
dload 12 /* dy1 */
dload 14 /* dx2 */
dload 16 /* dy2 */
10: .line 112
invokevirtual sun.java2d.pipe.DrawImage.renderImageScale:(Lsun/java2d/SunGraphics2D;Ljava/awt/Image;Ljava/awt/Color;IIIIIDDDD)Z
11: .line 114
ifeq 13
12: .line 116
iconst_1
ireturn
end local 16 // double dy2
end local 14 // double dx2
end local 12 // double dy1
end local 10 // double dx1
13: .line 120
StackMap locals: int int
StackMap stack:
aload 1 /* sg */
getfield sun.java2d.SunGraphics2D.transform:Ljava/awt/geom/AffineTransform;
astore 10 /* atfm */
start local 10 // java.awt.geom.AffineTransform atfm
14: .line 121
iload 3 /* x */
iload 4 /* y */
ior
ifne 15
iload 5 /* width */
iload 8 /* imgw */
if_icmpne 15
iload 6 /* height */
iload 9 /* imgh */
if_icmpeq 18
15: .line 122
StackMap locals: java.awt.geom.AffineTransform
StackMap stack:
new java.awt.geom.AffineTransform
dup
aload 10 /* atfm */
invokespecial java.awt.geom.AffineTransform.<init>:(Ljava/awt/geom/AffineTransform;)V
astore 10 /* atfm */
16: .line 123
aload 10 /* atfm */
iload 3 /* x */
i2d
iload 4 /* y */
i2d
invokevirtual java.awt.geom.AffineTransform.translate:(DD)V
17: .line 124
aload 10 /* atfm */
iload 5 /* width */
i2d
iload 8 /* imgw */
i2d
ddiv
iload 6 /* height */
i2d
iload 9 /* imgh */
i2d
ddiv
invokevirtual java.awt.geom.AffineTransform.scale:(DD)V
18: .line 126
StackMap locals:
StackMap stack:
aload 0 /* this */
aload 1 /* sg */
aload 2 /* img */
aload 10 /* atfm */
aload 1 /* sg */
getfield sun.java2d.SunGraphics2D.interpolationType:I
19: .line 127
iconst_0
iconst_0
iload 8 /* imgw */
iload 9 /* imgh */
aload 7 /* bgColor */
20: .line 126
invokevirtual sun.java2d.pipe.DrawImage.transformImage:(Lsun/java2d/SunGraphics2D;Ljava/awt/Image;Ljava/awt/geom/AffineTransform;IIIIILjava/awt/Color;)V
21: .line 128
iconst_1
ireturn
end local 10 // java.awt.geom.AffineTransform atfm
end local 9 // int imgh
end local 8 // int imgw
end local 7 // java.awt.Color bgColor
end local 6 // int height
end local 5 // int width
end local 4 // int y
end local 3 // int x
end local 2 // java.awt.Image img
end local 1 // sun.java2d.SunGraphics2D sg
end local 0 // sun.java2d.pipe.DrawImage this
LocalVariableTable:
Start End Slot Name Signature
0 22 0 this Lsun/java2d/pipe/DrawImage;
0 22 1 sg Lsun/java2d/SunGraphics2D;
0 22 2 img Ljava/awt/Image;
0 22 3 x I
0 22 4 y I
0 22 5 width I
0 22 6 height I
0 22 7 bgColor Ljava/awt/Color;
1 22 8 imgw I
2 22 9 imgh I
4 13 10 dx1 D
5 13 12 dy1 D
6 13 14 dx2 D
7 13 16 dy2 D
14 22 10 atfm Ljava/awt/geom/AffineTransform;
MethodParameters:
Name Flags
sg
img
x
y
width
height
bgColor
protected void transformImage(sun.java2d.SunGraphics2D, java.awt.Image, int, int, java.awt.geom.AffineTransform, int);
descriptor: (Lsun/java2d/SunGraphics2D;Ljava/awt/Image;IILjava/awt/geom/AffineTransform;I)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=10, locals=17, args_size=7
start local 0 // sun.java2d.pipe.DrawImage this
start local 1 // sun.java2d.SunGraphics2D sg
start local 2 // java.awt.Image img
start local 3 // int x
start local 4 // int y
start local 5 // java.awt.geom.AffineTransform extraAT
start local 6 // int interpType
0: .line 142
aload 5 /* extraAT */
invokevirtual java.awt.geom.AffineTransform.getType:()I
istore 7 /* txtype */
start local 7 // int txtype
1: .line 143
aload 2 /* img */
aconst_null
invokevirtual java.awt.Image.getWidth:(Ljava/awt/image/ImageObserver;)I
istore 8 /* imgw */
start local 8 // int imgw
2: .line 144
aload 2 /* img */
aconst_null
invokevirtual java.awt.Image.getHeight:(Ljava/awt/image/ImageObserver;)I
istore 9 /* imgh */
start local 9 // int imgh
3: .line 147
aload 1 /* sg */
getfield sun.java2d.SunGraphics2D.transformState:I
iconst_2
if_icmpgt 18
4: .line 148
iload 7 /* txtype */
ifeq 6
5: .line 149
iload 7 /* txtype */
iconst_1
if_icmpne 18
6: .line 154
StackMap locals: int int int
StackMap stack:
aload 5 /* extraAT */
invokevirtual java.awt.geom.AffineTransform.getTranslateX:()D
dstore 11 /* tx */
start local 11 // double tx
7: .line 155
aload 5 /* extraAT */
invokevirtual java.awt.geom.AffineTransform.getTranslateY:()D
dstore 13 /* ty */
start local 13 // double ty
8: .line 156
dload 11 /* tx */
aload 1 /* sg */
getfield sun.java2d.SunGraphics2D.transform:Ljava/awt/geom/AffineTransform;
invokevirtual java.awt.geom.AffineTransform.getTranslateX:()D
dadd
dstore 11 /* tx */
9: .line 157
dload 13 /* ty */
aload 1 /* sg */
getfield sun.java2d.SunGraphics2D.transform:Ljava/awt/geom/AffineTransform;
invokevirtual java.awt.geom.AffineTransform.getTranslateY:()D
dadd
dstore 13 /* ty */
10: .line 158
dload 11 /* tx */
ldc 0.5
dadd
invokestatic java.lang.Math.floor:(D)D
d2i
istore 15 /* itx */
start local 15 // int itx
11: .line 159
dload 13 /* ty */
ldc 0.5
dadd
invokestatic java.lang.Math.floor:(D)D
d2i
istore 16 /* ity */
start local 16 // int ity
12: .line 160
iload 6 /* interpType */
iconst_1
if_icmpeq 14
13: .line 161
iload 15 /* itx */
dload 11 /* tx */
invokestatic sun.java2d.pipe.DrawImage.closeToInteger:(ID)Z
ifeq 16
iload 16 /* ity */
dload 13 /* ty */
invokestatic sun.java2d.pipe.DrawImage.closeToInteger:(ID)Z
ifeq 16
14: .line 163
StackMap locals: sun.java2d.pipe.DrawImage sun.java2d.SunGraphics2D java.awt.Image int int java.awt.geom.AffineTransform int int int int top double double int int
StackMap stack:
aload 0 /* this */
aload 1 /* sg */
aload 2 /* img */
aconst_null
iload 3 /* x */
iload 15 /* itx */
iadd
iload 4 /* y */
iload 16 /* ity */
iadd
iconst_0
iconst_0
iload 8 /* imgw */
iload 9 /* imgh */
invokevirtual sun.java2d.pipe.DrawImage.renderImageCopy:(Lsun/java2d/SunGraphics2D;Ljava/awt/Image;Ljava/awt/Color;IIIIII)Z
pop
15: .line 164
return
16: .line 166
StackMap locals:
StackMap stack:
iconst_0
istore 10 /* checkfinalxform */
end local 16 // int ity
end local 15 // int itx
end local 13 // double ty
end local 11 // double tx
start local 10 // boolean checkfinalxform
17: .line 167
goto 37
end local 10 // boolean checkfinalxform
StackMap locals: sun.java2d.pipe.DrawImage sun.java2d.SunGraphics2D java.awt.Image int int java.awt.geom.AffineTransform int int int int
StackMap stack:
18: aload 1 /* sg */
getfield sun.java2d.SunGraphics2D.transformState:I
iconst_3
if_icmpgt 36
19: .line 168
iload 7 /* txtype */
bipush 120
iand
ifne 36
20: .line 179
iconst_4
newarray 7
dup
iconst_0
21: .line 180
dconst_0
dastore
dup
iconst_1
dconst_0
dastore
dup
iconst_2
iload 8 /* imgw */
i2d
dastore
dup
iconst_3
iload 9 /* imgh */
i2d
dastore
22: .line 179
astore 11 /* coords */
start local 11 // double[] coords
23: .line 182
aload 5 /* extraAT */
aload 11 /* coords */
iconst_0
aload 11 /* coords */
iconst_0
iconst_2
invokevirtual java.awt.geom.AffineTransform.transform:([DI[DII)V
24: .line 183
aload 11 /* coords */
iconst_0
dup2
daload
iload 3 /* x */
i2d
dadd
dastore
25: .line 184
aload 11 /* coords */
iconst_1
dup2
daload
iload 4 /* y */
i2d
dadd
dastore
26: .line 185
aload 11 /* coords */
iconst_2
dup2
daload
iload 3 /* x */
i2d
dadd
dastore
27: .line 186
aload 11 /* coords */
iconst_3
dup2
daload
iload 4 /* y */
i2d
dadd
dastore
28: .line 187
aload 1 /* sg */
getfield sun.java2d.SunGraphics2D.transform:Ljava/awt/geom/AffineTransform;
aload 11 /* coords */
iconst_0
aload 11 /* coords */
iconst_0
iconst_2
invokevirtual java.awt.geom.AffineTransform.transform:([DI[DII)V
29: .line 189
aload 0 /* this */
aload 1 /* sg */
aload 2 /* img */
iconst_0
iconst_0
iload 8 /* imgw */
iload 9 /* imgh */
30: .line 190
aconst_null
iload 6 /* interpType */
aload 11 /* coords */
31: .line 189
invokevirtual sun.java2d.pipe.DrawImage.tryCopyOrScale:(Lsun/java2d/SunGraphics2D;Ljava/awt/Image;IIIILjava/awt/Color;I[D)Z
32: .line 190
ifeq 34
33: .line 192
return
34: .line 194
StackMap locals: sun.java2d.pipe.DrawImage sun.java2d.SunGraphics2D java.awt.Image int int java.awt.geom.AffineTransform int int int int top double[]
StackMap stack:
iconst_0
istore 10 /* checkfinalxform */
end local 11 // double[] coords
start local 10 // boolean checkfinalxform
35: .line 195
goto 37
end local 10 // boolean checkfinalxform
36: .line 196
StackMap locals: sun.java2d.pipe.DrawImage sun.java2d.SunGraphics2D java.awt.Image int int java.awt.geom.AffineTransform int int int int
StackMap stack:
iconst_1
istore 10 /* checkfinalxform */
start local 10 // boolean checkfinalxform
37: .line 200
StackMap locals: int
StackMap stack:
new java.awt.geom.AffineTransform
dup
aload 1 /* sg */
getfield sun.java2d.SunGraphics2D.transform:Ljava/awt/geom/AffineTransform;
invokespecial java.awt.geom.AffineTransform.<init>:(Ljava/awt/geom/AffineTransform;)V
astore 11 /* tx */
start local 11 // java.awt.geom.AffineTransform tx
38: .line 201
aload 11 /* tx */
iload 3 /* x */
i2d
iload 4 /* y */
i2d
invokevirtual java.awt.geom.AffineTransform.translate:(DD)V
39: .line 202
aload 11 /* tx */
aload 5 /* extraAT */
invokevirtual java.awt.geom.AffineTransform.concatenate:(Ljava/awt/geom/AffineTransform;)V
40: .line 207
iload 10 /* checkfinalxform */
ifeq 43
41: .line 212
aload 0 /* this */
aload 1 /* sg */
aload 2 /* img */
aload 11 /* tx */
iload 6 /* interpType */
iconst_0
iconst_0
iload 8 /* imgw */
iload 9 /* imgh */
aconst_null
invokevirtual sun.java2d.pipe.DrawImage.transformImage:(Lsun/java2d/SunGraphics2D;Ljava/awt/Image;Ljava/awt/geom/AffineTransform;IIIIILjava/awt/Color;)V
42: .line 213
goto 44
43: .line 214
StackMap locals: java.awt.geom.AffineTransform
StackMap stack:
aload 0 /* this */
aload 1 /* sg */
aload 2 /* img */
aload 11 /* tx */
iload 6 /* interpType */
iconst_0
iconst_0
iload 8 /* imgw */
iload 9 /* imgh */
aconst_null
invokevirtual sun.java2d.pipe.DrawImage.renderImageXform:(Lsun/java2d/SunGraphics2D;Ljava/awt/Image;Ljava/awt/geom/AffineTransform;IIIIILjava/awt/Color;)V
44: .line 216
StackMap locals:
StackMap stack:
return
end local 11 // java.awt.geom.AffineTransform tx
end local 10 // boolean checkfinalxform
end local 9 // int imgh
end local 8 // int imgw
end local 7 // int txtype
end local 6 // int interpType
end local 5 // java.awt.geom.AffineTransform extraAT
end local 4 // int y
end local 3 // int x
end local 2 // java.awt.Image img
end local 1 // sun.java2d.SunGraphics2D sg
end local 0 // sun.java2d.pipe.DrawImage this
LocalVariableTable:
Start End Slot Name Signature
0 45 0 this Lsun/java2d/pipe/DrawImage;
0 45 1 sg Lsun/java2d/SunGraphics2D;
0 45 2 img Ljava/awt/Image;
0 45 3 x I
0 45 4 y I
0 45 5 extraAT Ljava/awt/geom/AffineTransform;
0 45 6 interpType I
1 45 7 txtype I
2 45 8 imgw I
3 45 9 imgh I
17 18 10 checkfinalxform Z
35 36 10 checkfinalxform Z
37 45 10 checkfinalxform Z
7 17 11 tx D
8 17 13 ty D
11 17 15 itx I
12 17 16 ity I
23 35 11 coords [D
38 45 11 tx Ljava/awt/geom/AffineTransform;
MethodParameters:
Name Flags
sg
img
x
y
extraAT
interpType
protected void transformImage(sun.java2d.SunGraphics2D, java.awt.Image, java.awt.geom.AffineTransform, int, int, int, int, int, java.awt.Color);
descriptor: (Lsun/java2d/SunGraphics2D;Ljava/awt/Image;Ljava/awt/geom/AffineTransform;IIIIILjava/awt/Color;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=10, locals=11, args_size=10
start local 0 // sun.java2d.pipe.DrawImage this
start local 1 // sun.java2d.SunGraphics2D sg
start local 2 // java.awt.Image img
start local 3 // java.awt.geom.AffineTransform tx
start local 4 // int interpType
start local 5 // int sx1
start local 6 // int sy1
start local 7 // int sx2
start local 8 // int sy2
start local 9 // java.awt.Color bgColor
0: .line 246
bipush 6
newarray 7
astore 10 /* coords */
start local 10 // double[] coords
1: .line 249
aload 10 /* coords */
iconst_2
iload 7 /* sx2 */
iload 5 /* sx1 */
isub
i2d
dastore
2: .line 250
aload 10 /* coords */
iconst_3
aload 10 /* coords */
iconst_5
iload 8 /* sy2 */
iload 6 /* sy1 */
isub
i2d
dup2_x2
dastore
dastore
3: .line 251
aload 3 /* tx */
aload 10 /* coords */
iconst_0
aload 10 /* coords */
iconst_0
iconst_3
invokevirtual java.awt.geom.AffineTransform.transform:([DI[DII)V
4: .line 258
aload 10 /* coords */
iconst_0
daload
aload 10 /* coords */
iconst_4
daload
dsub
invokestatic java.lang.Math.abs:(D)D
ldc 1.0E-4
dcmpg
ifge 11
5: .line 259
aload 10 /* coords */
iconst_3
daload
aload 10 /* coords */
iconst_5
daload
dsub
invokestatic java.lang.Math.abs:(D)D
ldc 1.0E-4
dcmpg
ifge 11
6: .line 260
aload 0 /* this */
aload 1 /* sg */
aload 2 /* img */
iload 5 /* sx1 */
iload 6 /* sy1 */
iload 7 /* sx2 */
iload 8 /* sy2 */
7: .line 261
aload 9 /* bgColor */
iload 4 /* interpType */
aload 10 /* coords */
8: .line 260
invokevirtual sun.java2d.pipe.DrawImage.tryCopyOrScale:(Lsun/java2d/SunGraphics2D;Ljava/awt/Image;IIIILjava/awt/Color;I[D)Z
9: .line 261
ifeq 11
10: .line 263
return
11: .line 266
StackMap locals: double[]
StackMap stack:
aload 0 /* this */
aload 1 /* sg */
aload 2 /* img */
aload 3 /* tx */
iload 4 /* interpType */
iload 5 /* sx1 */
iload 6 /* sy1 */
iload 7 /* sx2 */
iload 8 /* sy2 */
aload 9 /* bgColor */
invokevirtual sun.java2d.pipe.DrawImage.renderImageXform:(Lsun/java2d/SunGraphics2D;Ljava/awt/Image;Ljava/awt/geom/AffineTransform;IIIIILjava/awt/Color;)V
12: .line 267
return
end local 10 // double[] coords
end local 9 // java.awt.Color bgColor
end local 8 // int sy2
end local 7 // int sx2
end local 6 // int sy1
end local 5 // int sx1
end local 4 // int interpType
end local 3 // java.awt.geom.AffineTransform tx
end local 2 // java.awt.Image img
end local 1 // sun.java2d.SunGraphics2D sg
end local 0 // sun.java2d.pipe.DrawImage this
LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lsun/java2d/pipe/DrawImage;
0 13 1 sg Lsun/java2d/SunGraphics2D;
0 13 2 img Ljava/awt/Image;
0 13 3 tx Ljava/awt/geom/AffineTransform;
0 13 4 interpType I
0 13 5 sx1 I
0 13 6 sy1 I
0 13 7 sx2 I
0 13 8 sy2 I
0 13 9 bgColor Ljava/awt/Color;
1 13 10 coords [D
MethodParameters:
Name Flags
sg
img
tx
interpType
sx1
sy1
sx2
sy2
bgColor
protected boolean tryCopyOrScale(sun.java2d.SunGraphics2D, java.awt.Image, int, int, int, int, java.awt.Color, int, double[]);
descriptor: (Lsun/java2d/SunGraphics2D;Ljava/awt/Image;IIIILjava/awt/Color;I[D)Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=17, locals=24, args_size=10
start local 0 // sun.java2d.pipe.DrawImage this
start local 1 // sun.java2d.SunGraphics2D sg
start local 2 // java.awt.Image img
start local 3 // int sx1
start local 4 // int sy1
start local 5 // int sx2
start local 6 // int sy2
start local 7 // java.awt.Color bgColor
start local 8 // int interpType
start local 9 // double[] coords
0: .line 283
aload 9 /* coords */
iconst_0
daload
dstore 10 /* dx1 */
start local 10 // double dx1
1: .line 284
aload 9 /* coords */
iconst_1
daload
dstore 12 /* dy1 */
start local 12 // double dy1
2: .line 285
aload 9 /* coords */
iconst_2
daload
dstore 14 /* dx2 */
start local 14 // double dx2
3: .line 286
aload 9 /* coords */
iconst_3
daload
dstore 16 /* dy2 */
start local 16 // double dy2
4: .line 287
dload 14 /* dx2 */
dload 10 /* dx1 */
dsub
dstore 18 /* dw */
start local 18 // double dw
5: .line 288
dload 16 /* dy2 */
dload 12 /* dy1 */
dsub
dstore 20 /* dh */
start local 20 // double dh
6: .line 295
dload 10 /* dx1 */
ldc -2.147483648E9
dcmpg
iflt 10
dload 10 /* dx1 */
ldc 2.147483647E9
dcmpl
ifgt 10
7: .line 296
dload 12 /* dy1 */
ldc -2.147483648E9
dcmpg
iflt 10
dload 12 /* dy1 */
ldc 2.147483647E9
dcmpl
ifgt 10
8: .line 297
dload 14 /* dx2 */
ldc -2.147483648E9
dcmpg
iflt 10
dload 14 /* dx2 */
ldc 2.147483647E9
dcmpl
ifgt 10
9: .line 298
dload 16 /* dy2 */
ldc -2.147483648E9
dcmpg
iflt 10
dload 16 /* dy2 */
ldc 2.147483647E9
dcmpl
ifle 11
10: .line 300
StackMap locals: sun.java2d.pipe.DrawImage sun.java2d.SunGraphics2D java.awt.Image int int int int java.awt.Color int double[] double double double double double double
StackMap stack:
iconst_0
ireturn
11: .line 304
StackMap locals:
StackMap stack:
iload 5 /* sx2 */
iload 3 /* sx1 */
isub
dload 18 /* dw */
invokestatic sun.java2d.pipe.DrawImage.closeToInteger:(ID)Z
ifeq 21
iload 6 /* sy2 */
iload 4 /* sy1 */
isub
dload 20 /* dh */
invokestatic sun.java2d.pipe.DrawImage.closeToInteger:(ID)Z
ifeq 21
12: .line 307
dload 10 /* dx1 */
ldc 0.5
dadd
invokestatic java.lang.Math.floor:(D)D
d2i
istore 22 /* idx */
start local 22 // int idx
13: .line 308
dload 12 /* dy1 */
ldc 0.5
dadd
invokestatic java.lang.Math.floor:(D)D
d2i
istore 23 /* idy */
start local 23 // int idy
14: .line 309
iload 8 /* interpType */
iconst_1
if_icmpeq 16
15: .line 310
iload 22 /* idx */
dload 10 /* dx1 */
invokestatic sun.java2d.pipe.DrawImage.closeToInteger:(ID)Z
ifeq 21
iload 23 /* idy */
dload 12 /* dy1 */
invokestatic sun.java2d.pipe.DrawImage.closeToInteger:(ID)Z
ifeq 21
16: .line 312
StackMap locals: int int
StackMap stack:
aload 0 /* this */
aload 1 /* sg */
aload 2 /* img */
aload 7 /* bgColor */
17: .line 313
iload 22 /* idx */
iload 23 /* idy */
18: .line 314
iload 3 /* sx1 */
iload 4 /* sy1 */
iload 5 /* sx2 */
iload 3 /* sx1 */
isub
iload 6 /* sy2 */
iload 4 /* sy1 */
isub
19: .line 312
invokevirtual sun.java2d.pipe.DrawImage.renderImageCopy:(Lsun/java2d/SunGraphics2D;Ljava/awt/Image;Ljava/awt/Color;IIIIII)Z
pop
20: .line 315
iconst_1
ireturn
end local 23 // int idy
end local 22 // int idx
21: .line 320
StackMap locals:
StackMap stack:
dload 18 /* dw */
dconst_0
dcmpl
ifle 28
dload 20 /* dh */
dconst_0
dcmpl
ifle 28
22: .line 321
aload 0 /* this */
aload 1 /* sg */
aload 2 /* img */
aload 7 /* bgColor */
iload 8 /* interpType */
23: .line 322
iload 3 /* sx1 */
iload 4 /* sy1 */
iload 5 /* sx2 */
iload 6 /* sy2 */
24: .line 323
dload 10 /* dx1 */
dload 12 /* dy1 */
dload 14 /* dx2 */
dload 16 /* dy2 */
25: .line 321
invokevirtual sun.java2d.pipe.DrawImage.renderImageScale:(Lsun/java2d/SunGraphics2D;Ljava/awt/Image;Ljava/awt/Color;IIIIIDDDD)Z
26: .line 323
ifeq 28
27: .line 325
iconst_1
ireturn
28: .line 328
StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 20 // double dh
end local 18 // double dw
end local 16 // double dy2
end local 14 // double dx2
end local 12 // double dy1
end local 10 // double dx1
end local 9 // double[] coords
end local 8 // int interpType
end local 7 // java.awt.Color bgColor
end local 6 // int sy2
end local 5 // int sx2
end local 4 // int sy1
end local 3 // int sx1
end local 2 // java.awt.Image img
end local 1 // sun.java2d.SunGraphics2D sg
end local 0 // sun.java2d.pipe.DrawImage this
LocalVariableTable:
Start End Slot Name Signature
0 29 0 this Lsun/java2d/pipe/DrawImage;
0 29 1 sg Lsun/java2d/SunGraphics2D;
0 29 2 img Ljava/awt/Image;
0 29 3 sx1 I
0 29 4 sy1 I
0 29 5 sx2 I
0 29 6 sy2 I
0 29 7 bgColor Ljava/awt/Color;
0 29 8 interpType I
0 29 9 coords [D
1 29 10 dx1 D
2 29 12 dy1 D
3 29 14 dx2 D
4 29 16 dy2 D
5 29 18 dw D
6 29 20 dh D
13 21 22 idx I
14 21 23 idy I
MethodParameters:
Name Flags
sg
img
sx1
sy1
sx2
sy2
bgColor
interpType
coords
private java.awt.image.BufferedImage makeBufferedImage(java.awt.Image, java.awt.Color, int, int, int, int, int);
descriptor: (Ljava/awt/Image;Ljava/awt/Color;IIIII)Ljava/awt/image/BufferedImage;
flags: (0x0002) ACC_PRIVATE
Code:
stack=10, locals=12, args_size=8
start local 0 // sun.java2d.pipe.DrawImage this
start local 1 // java.awt.Image img
start local 2 // java.awt.Color bgColor
start local 3 // int type
start local 4 // int sx1
start local 5 // int sy1
start local 6 // int sx2
start local 7 // int sy2
0: .line 348
iload 6 /* sx2 */
iload 4 /* sx1 */
isub
istore 8 /* width */
start local 8 // int width
1: .line 349
iload 7 /* sy2 */
iload 5 /* sy1 */
isub
istore 9 /* height */
start local 9 // int height
2: .line 350
new java.awt.image.BufferedImage
dup
iload 8 /* width */
iload 9 /* height */
iload 3 /* type */
invokespecial java.awt.image.BufferedImage.<init>:(III)V
astore 10 /* bimg */
start local 10 // java.awt.image.BufferedImage bimg
3: .line 351
aload 10 /* bimg */
invokevirtual java.awt.image.BufferedImage.createGraphics:()Ljava/awt/Graphics2D;
checkcast sun.java2d.SunGraphics2D
astore 11 /* g2d */
start local 11 // sun.java2d.SunGraphics2D g2d
4: .line 352
aload 11 /* g2d */
getstatic java.awt.AlphaComposite.Src:Ljava/awt/AlphaComposite;
invokevirtual sun.java2d.SunGraphics2D.setComposite:(Ljava/awt/Composite;)V
5: .line 353
aload 10 /* bimg */
fconst_0
invokevirtual java.awt.image.BufferedImage.setAccelerationPriority:(F)V
6: .line 354
aload 2 /* bgColor */
ifnull 10
7: .line 355
aload 11 /* g2d */
aload 2 /* bgColor */
invokevirtual sun.java2d.SunGraphics2D.setColor:(Ljava/awt/Color;)V
8: .line 356
aload 11 /* g2d */
iconst_0
iconst_0
iload 8 /* width */
iload 9 /* height */
invokevirtual sun.java2d.SunGraphics2D.fillRect:(IIII)V
9: .line 357
aload 11 /* g2d */
getstatic java.awt.AlphaComposite.SrcOver:Ljava/awt/AlphaComposite;
invokevirtual sun.java2d.SunGraphics2D.setComposite:(Ljava/awt/Composite;)V
10: .line 359
StackMap locals: sun.java2d.pipe.DrawImage java.awt.Image java.awt.Color int int int int int int int java.awt.image.BufferedImage sun.java2d.SunGraphics2D
StackMap stack:
aload 11 /* g2d */
aload 1 /* img */
iconst_0
iconst_0
iload 4 /* sx1 */
iload 5 /* sy1 */
iload 8 /* width */
iload 9 /* height */
aconst_null
aconst_null
invokevirtual sun.java2d.SunGraphics2D.copyImage:(Ljava/awt/Image;IIIIIILjava/awt/Color;Ljava/awt/image/ImageObserver;)Z
pop
11: .line 360
aload 11 /* g2d */
invokevirtual sun.java2d.SunGraphics2D.dispose:()V
12: .line 361
aload 10 /* bimg */
areturn
end local 11 // sun.java2d.SunGraphics2D g2d
end local 10 // java.awt.image.BufferedImage bimg
end local 9 // int height
end local 8 // int width
end local 7 // int sy2
end local 6 // int sx2
end local 5 // int sy1
end local 4 // int sx1
end local 3 // int type
end local 2 // java.awt.Color bgColor
end local 1 // java.awt.Image img
end local 0 // sun.java2d.pipe.DrawImage this
LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lsun/java2d/pipe/DrawImage;
0 13 1 img Ljava/awt/Image;
0 13 2 bgColor Ljava/awt/Color;
0 13 3 type I
0 13 4 sx1 I
0 13 5 sy1 I
0 13 6 sx2 I
0 13 7 sy2 I
1 13 8 width I
2 13 9 height I
3 13 10 bimg Ljava/awt/image/BufferedImage;
4 13 11 g2d Lsun/java2d/SunGraphics2D;
MethodParameters:
Name Flags
img
bgColor
type
sx1
sy1
sx2
sy2
protected void renderImageXform(sun.java2d.SunGraphics2D, java.awt.Image, java.awt.geom.AffineTransform, int, int, int, int, int, java.awt.Color);
descriptor: (Lsun/java2d/SunGraphics2D;Ljava/awt/Image;Ljava/awt/geom/AffineTransform;IIIIILjava/awt/Color;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=19, locals=39, args_size=10
start local 0 // sun.java2d.pipe.DrawImage this
start local 1 // sun.java2d.SunGraphics2D sg
start local 2 // java.awt.Image img
start local 3 // java.awt.geom.AffineTransform tx
start local 4 // int interpType
start local 5 // int sx1
start local 6 // int sy1
start local 7 // int sx2
start local 8 // int sy2
start local 9 // java.awt.Color bgColor
0: .line 371
aload 3 /* tx */
invokevirtual java.awt.geom.AffineTransform.createInverse:()Ljava/awt/geom/AffineTransform;
astore 10 /* itx */
start local 10 // java.awt.geom.AffineTransform itx
1: .line 372
goto 4
end local 10 // java.awt.geom.AffineTransform itx
StackMap locals:
StackMap stack: java.awt.geom.NoninvertibleTransformException
2: pop
3: .line 374
return
start local 10 // java.awt.geom.AffineTransform itx
4: .line 386
StackMap locals: java.awt.geom.AffineTransform
StackMap stack:
bipush 8
newarray 7
astore 11 /* coords */
start local 11 // double[] coords
5: .line 390
aload 11 /* coords */
iconst_2
aload 11 /* coords */
bipush 6
iload 7 /* sx2 */
iload 5 /* sx1 */
isub
i2d
dup2_x2
dastore
dastore
6: .line 391
aload 11 /* coords */
iconst_5
aload 11 /* coords */
bipush 7
iload 8 /* sy2 */
iload 6 /* sy1 */
isub
i2d
dup2_x2
dastore
dastore
7: .line 392
aload 3 /* tx */
aload 11 /* coords */
iconst_0
aload 11 /* coords */
iconst_0
iconst_4
invokevirtual java.awt.geom.AffineTransform.transform:([DI[DII)V
8: .line 394
aload 11 /* coords */
iconst_0
daload
dup2
dstore 16 /* ddx2 */
start local 16 // double ddx2
9: dstore 12 /* ddx1 */
start local 12 // double ddx1
10: .line 395
aload 11 /* coords */
iconst_1
daload
dup2
dstore 18 /* ddy2 */
start local 18 // double ddy2
11: dstore 14 /* ddy1 */
start local 14 // double ddy1
12: .line 396
iconst_2
istore 20 /* i */
start local 20 // int i
13: goto 21
14: .line 397
StackMap locals: sun.java2d.pipe.DrawImage sun.java2d.SunGraphics2D java.awt.Image java.awt.geom.AffineTransform int int int int int java.awt.Color java.awt.geom.AffineTransform double[] double double double double int
StackMap stack:
aload 11 /* coords */
iload 20 /* i */
daload
dstore 21 /* d */
start local 21 // double d
15: .line 398
dload 12 /* ddx1 */
dload 21 /* d */
dcmpl
ifle 16
dload 21 /* d */
dstore 12 /* ddx1 */
goto 17
16: .line 399
StackMap locals: double
StackMap stack:
dload 16 /* ddx2 */
dload 21 /* d */
dcmpg
ifge 17
dload 21 /* d */
dstore 16 /* ddx2 */
17: .line 400
StackMap locals:
StackMap stack:
aload 11 /* coords */
iload 20 /* i */
iconst_1
iadd
daload
dstore 21 /* d */
18: .line 401
dload 14 /* ddy1 */
dload 21 /* d */
dcmpl
ifle 19
dload 21 /* d */
dstore 14 /* ddy1 */
goto 20
19: .line 402
StackMap locals:
StackMap stack:
dload 18 /* ddy2 */
dload 21 /* d */
dcmpg
ifge 20
dload 21 /* d */
dstore 18 /* ddy2 */
end local 21 // double d
20: .line 396
StackMap locals:
StackMap stack:
iinc 20 /* i */ 2
StackMap locals:
StackMap stack:
21: iload 20 /* i */
aload 11 /* coords */
arraylength
if_icmplt 14
end local 20 // int i
22: .line 405
aload 1 /* sg */
invokevirtual sun.java2d.SunGraphics2D.getCompClip:()Lsun/java2d/pipe/Region;
astore 20 /* clip */
start local 20 // sun.java2d.pipe.Region clip
23: .line 406
dload 12 /* ddx1 */
invokestatic java.lang.Math.floor:(D)D
d2i
aload 20 /* clip */
invokevirtual sun.java2d.pipe.Region.getLoX:()I
invokestatic java.lang.Math.max:(II)I
istore 21 /* dx1 */
start local 21 // int dx1
24: .line 407
dload 14 /* ddy1 */
invokestatic java.lang.Math.floor:(D)D
d2i
aload 20 /* clip */
invokevirtual sun.java2d.pipe.Region.getLoY:()I
invokestatic java.lang.Math.max:(II)I
istore 22 /* dy1 */
start local 22 // int dy1
25: .line 408
dload 16 /* ddx2 */
invokestatic java.lang.Math.ceil:(D)D
d2i
aload 20 /* clip */
invokevirtual sun.java2d.pipe.Region.getHiX:()I
invokestatic java.lang.Math.min:(II)I
istore 23 /* dx2 */
start local 23 // int dx2
26: .line 409
dload 18 /* ddy2 */
invokestatic java.lang.Math.ceil:(D)D
d2i
aload 20 /* clip */
invokevirtual sun.java2d.pipe.Region.getHiY:()I
invokestatic java.lang.Math.min:(II)I
istore 24 /* dy2 */
start local 24 // int dy2
27: .line 410
iload 23 /* dx2 */
iload 21 /* dx1 */
if_icmple 28
iload 24 /* dy2 */
iload 22 /* dy1 */
if_icmpgt 29
28: .line 412
StackMap locals: sun.java2d.pipe.DrawImage sun.java2d.SunGraphics2D java.awt.Image java.awt.geom.AffineTransform int int int int int java.awt.Color java.awt.geom.AffineTransform double[] double double double double sun.java2d.pipe.Region int int int int
StackMap stack:
return
29: .line 415
StackMap locals:
StackMap stack:
aload 1 /* sg */
getfield sun.java2d.SunGraphics2D.surfaceData:Lsun/java2d/SurfaceData;
astore 25 /* dstData */
start local 25 // sun.java2d.SurfaceData dstData
30: .line 416
aload 25 /* dstData */
aload 2 /* img */
31: .line 417
iconst_4
32: .line 418
aload 1 /* sg */
getfield sun.java2d.SunGraphics2D.imageComp:Lsun/java2d/loops/CompositeType;
33: .line 419
aload 9 /* bgColor */
34: .line 416
invokevirtual sun.java2d.SurfaceData.getSourceSurfaceData:(Ljava/awt/Image;ILsun/java2d/loops/CompositeType;Ljava/awt/Color;)Lsun/java2d/SurfaceData;
astore 26 /* srcData */
start local 26 // sun.java2d.SurfaceData srcData
35: .line 421
aload 26 /* srcData */
ifnonnull 44
36: .line 422
aload 0 /* this */
aload 2 /* img */
invokevirtual sun.java2d.pipe.DrawImage.getBufferedImage:(Ljava/awt/Image;)Ljava/awt/image/BufferedImage;
astore 2 /* img */
37: .line 423
aload 25 /* dstData */
aload 2 /* img */
38: .line 424
iconst_4
39: .line 425
aload 1 /* sg */
getfield sun.java2d.SunGraphics2D.imageComp:Lsun/java2d/loops/CompositeType;
40: .line 426
aload 9 /* bgColor */
41: .line 423
invokevirtual sun.java2d.SurfaceData.getSourceSurfaceData:(Ljava/awt/Image;ILsun/java2d/loops/CompositeType;Ljava/awt/Color;)Lsun/java2d/SurfaceData;
astore 26 /* srcData */
42: .line 427
aload 26 /* srcData */
ifnonnull 44
43: .line 429
return
44: .line 433
StackMap locals: sun.java2d.SurfaceData sun.java2d.SurfaceData
StackMap stack:
aload 26 /* srcData */
aload 9 /* bgColor */
invokestatic sun.java2d.pipe.DrawImage.isBgOperation:(Lsun/java2d/SurfaceData;Ljava/awt/Color;)Z
ifeq 59
45: .line 440
aload 9 /* bgColor */
invokevirtual java.awt.Color.getAlpha:()I
istore 27 /* bgAlpha */
start local 27 // int bgAlpha
46: .line 441
iload 27 /* bgAlpha */
sipush 255
if_icmpne 48
47: .line 442
iconst_1
goto 49
48: .line 443
StackMap locals: int
StackMap stack:
iconst_2
49: .line 441
StackMap locals:
StackMap stack: int
istore 28 /* type */
start local 28 // int type
50: .line 444
aload 0 /* this */
aload 2 /* img */
aload 9 /* bgColor */
iload 28 /* type */
iload 5 /* sx1 */
iload 6 /* sy1 */
iload 7 /* sx2 */
iload 8 /* sy2 */
invokevirtual sun.java2d.pipe.DrawImage.makeBufferedImage:(Ljava/awt/Image;Ljava/awt/Color;IIIII)Ljava/awt/image/BufferedImage;
astore 2 /* img */
51: .line 446
iload 7 /* sx2 */
iload 5 /* sx1 */
isub
istore 7 /* sx2 */
52: .line 447
iload 8 /* sy2 */
iload 6 /* sy1 */
isub
istore 8 /* sy2 */
53: .line 448
iconst_0
dup
istore 6 /* sy1 */
istore 5 /* sx1 */
54: .line 450
aload 25 /* dstData */
aload 2 /* img */
55: .line 451
iconst_4
56: .line 452
aload 1 /* sg */
getfield sun.java2d.SunGraphics2D.imageComp:Lsun/java2d/loops/CompositeType;
57: .line 453
aload 9 /* bgColor */
58: .line 450
invokevirtual sun.java2d.SurfaceData.getSourceSurfaceData:(Ljava/awt/Image;ILsun/java2d/loops/CompositeType;Ljava/awt/Color;)Lsun/java2d/SurfaceData;
astore 26 /* srcData */
end local 28 // int type
end local 27 // int bgAlpha
59: .line 456
StackMap locals:
StackMap stack:
aload 26 /* srcData */
invokevirtual sun.java2d.SurfaceData.getSurfaceType:()Lsun/java2d/loops/SurfaceType;
astore 27 /* srcType */
start local 27 // sun.java2d.loops.SurfaceType srcType
60: .line 457
aload 27 /* srcType */
invokestatic sun.java2d.loops.TransformHelper.getFromCache:(Lsun/java2d/loops/SurfaceType;)Lsun/java2d/loops/TransformHelper;
astore 28 /* helper */
start local 28 // sun.java2d.loops.TransformHelper helper
61: .line 459
aload 28 /* helper */
ifnonnull 77
62: .line 467
aload 26 /* srcData */
invokevirtual sun.java2d.SurfaceData.getTransparency:()I
iconst_1
if_icmpne 64
63: .line 468
iconst_1
goto 65
64: .line 469
StackMap locals: sun.java2d.loops.SurfaceType sun.java2d.loops.TransformHelper
StackMap stack:
iconst_2
65: .line 467
StackMap locals:
StackMap stack: int
istore 29 /* type */
start local 29 // int type
66: .line 470
aload 0 /* this */
aload 2 /* img */
aconst_null
iload 29 /* type */
iload 5 /* sx1 */
iload 6 /* sy1 */
iload 7 /* sx2 */
iload 8 /* sy2 */
invokevirtual sun.java2d.pipe.DrawImage.makeBufferedImage:(Ljava/awt/Image;Ljava/awt/Color;IIIII)Ljava/awt/image/BufferedImage;
astore 2 /* img */
67: .line 472
iload 7 /* sx2 */
iload 5 /* sx1 */
isub
istore 7 /* sx2 */
68: .line 473
iload 8 /* sy2 */
iload 6 /* sy1 */
isub
istore 8 /* sy2 */
69: .line 474
iconst_0
dup
istore 6 /* sy1 */
istore 5 /* sx1 */
70: .line 476
aload 25 /* dstData */
aload 2 /* img */
71: .line 477
iconst_4
72: .line 478
aload 1 /* sg */
getfield sun.java2d.SunGraphics2D.imageComp:Lsun/java2d/loops/CompositeType;
73: .line 479
aconst_null
74: .line 476
invokevirtual sun.java2d.SurfaceData.getSourceSurfaceData:(Ljava/awt/Image;ILsun/java2d/loops/CompositeType;Ljava/awt/Color;)Lsun/java2d/SurfaceData;
astore 26 /* srcData */
75: .line 480
aload 26 /* srcData */
invokevirtual sun.java2d.SurfaceData.getSurfaceType:()Lsun/java2d/loops/SurfaceType;
astore 27 /* srcType */
76: .line 481
aload 27 /* srcType */
invokestatic sun.java2d.loops.TransformHelper.getFromCache:(Lsun/java2d/loops/SurfaceType;)Lsun/java2d/loops/TransformHelper;
astore 28 /* helper */
end local 29 // int type
77: .line 485
StackMap locals:
StackMap stack:
aload 25 /* dstData */
invokevirtual sun.java2d.SurfaceData.getSurfaceType:()Lsun/java2d/loops/SurfaceType;
astore 29 /* dstType */
start local 29 // sun.java2d.loops.SurfaceType dstType
78: .line 486
aload 1 /* sg */
getfield sun.java2d.SunGraphics2D.compositeState:I
iconst_1
if_icmpgt 91
79: .line 490
getstatic sun.java2d.loops.SurfaceType.IntArgbPre:Lsun/java2d/loops/SurfaceType;
80: .line 491
aload 1 /* sg */
getfield sun.java2d.SunGraphics2D.imageComp:Lsun/java2d/loops/CompositeType;
aload 29 /* dstType */
81: .line 490
invokestatic sun.java2d.loops.MaskBlit.getFromCache:(Lsun/java2d/loops/SurfaceType;Lsun/java2d/loops/CompositeType;Lsun/java2d/loops/SurfaceType;)Lsun/java2d/loops/MaskBlit;
astore 30 /* maskblit */
start local 30 // sun.java2d.loops.MaskBlit maskblit
82: .line 499
aload 30 /* maskblit */
invokevirtual sun.java2d.loops.MaskBlit.getNativePrim:()J
lconst_0
lcmp
ifeq 91
83: .line 501
aload 28 /* helper */
aload 30 /* maskblit */
aload 26 /* srcData */
aload 25 /* dstData */
84: .line 502
aload 1 /* sg */
getfield sun.java2d.SunGraphics2D.composite:Ljava/awt/Composite;
aload 20 /* clip */
85: .line 503
aload 10 /* itx */
iload 4 /* interpType */
86: .line 504
iload 5 /* sx1 */
iload 6 /* sy1 */
iload 7 /* sx2 */
iload 8 /* sy2 */
87: .line 505
iload 21 /* dx1 */
iload 22 /* dy1 */
iload 23 /* dx2 */
iload 24 /* dy2 */
88: .line 506
aconst_null
iconst_0
iconst_0
89: .line 501
invokevirtual sun.java2d.loops.TransformHelper.Transform:(Lsun/java2d/loops/MaskBlit;Lsun/java2d/SurfaceData;Lsun/java2d/SurfaceData;Ljava/awt/Composite;Lsun/java2d/pipe/Region;Ljava/awt/geom/AffineTransform;IIIIIIIII[III)V
90: .line 507
return
end local 30 // sun.java2d.loops.MaskBlit maskblit
91: .line 513
StackMap locals: sun.java2d.loops.SurfaceType
StackMap stack:
iload 23 /* dx2 */
iload 21 /* dx1 */
isub
istore 30 /* w */
start local 30 // int w
92: .line 514
iload 24 /* dy2 */
iload 22 /* dy1 */
isub
istore 31 /* h */
start local 31 // int h
93: .line 515
new java.awt.image.BufferedImage
dup
iload 30 /* w */
iload 31 /* h */
94: .line 516
iconst_3
95: .line 515
invokespecial java.awt.image.BufferedImage.<init>:(III)V
astore 32 /* tmpimg */
start local 32 // java.awt.image.BufferedImage tmpimg
96: .line 517
aload 32 /* tmpimg */
invokestatic sun.java2d.SurfaceData.getPrimarySurfaceData:(Ljava/awt/Image;)Lsun/java2d/SurfaceData;
astore 33 /* tmpData */
start local 33 // sun.java2d.SurfaceData tmpData
97: .line 518
aload 33 /* tmpData */
invokevirtual sun.java2d.SurfaceData.getSurfaceType:()Lsun/java2d/loops/SurfaceType;
astore 34 /* tmpType */
start local 34 // sun.java2d.loops.SurfaceType tmpType
98: .line 519
getstatic sun.java2d.loops.SurfaceType.IntArgbPre:Lsun/java2d/loops/SurfaceType;
99: .line 520
getstatic sun.java2d.loops.CompositeType.SrcNoEa:Lsun/java2d/loops/CompositeType;
100: .line 521
aload 34 /* tmpType */
101: .line 519
invokestatic sun.java2d.loops.MaskBlit.getFromCache:(Lsun/java2d/loops/SurfaceType;Lsun/java2d/loops/CompositeType;Lsun/java2d/loops/SurfaceType;)Lsun/java2d/loops/MaskBlit;
astore 35 /* tmpmaskblit */
start local 35 // sun.java2d.loops.MaskBlit tmpmaskblit
102: .line 536
iload 31 /* h */
iconst_2
imul
iconst_2
iadd
newarray 10
astore 36 /* edges */
start local 36 // int[] edges
103: .line 540
aload 28 /* helper */
aload 35 /* tmpmaskblit */
aload 26 /* srcData */
aload 33 /* tmpData */
104: .line 541
getstatic java.awt.AlphaComposite.Src:Ljava/awt/AlphaComposite;
aconst_null
105: .line 542
aload 10 /* itx */
iload 4 /* interpType */
106: .line 543
iload 5 /* sx1 */
iload 6 /* sy1 */
iload 7 /* sx2 */
iload 8 /* sy2 */
107: .line 544
iconst_0
iconst_0
iload 30 /* w */
iload 31 /* h */
108: .line 545
aload 36 /* edges */
iload 21 /* dx1 */
iload 22 /* dy1 */
109: .line 540
invokevirtual sun.java2d.loops.TransformHelper.Transform:(Lsun/java2d/loops/MaskBlit;Lsun/java2d/SurfaceData;Lsun/java2d/SurfaceData;Ljava/awt/Composite;Lsun/java2d/pipe/Region;Ljava/awt/geom/AffineTransform;IIIIIIIII[III)V
110: .line 547
iload 21 /* dx1 */
iload 22 /* dy1 */
iload 23 /* dx2 */
iload 24 /* dy2 */
aload 36 /* edges */
invokestatic sun.java2d.pipe.Region.getInstance:(IIII[I)Lsun/java2d/pipe/Region;
astore 37 /* region */
start local 37 // sun.java2d.pipe.Region region
111: .line 548
aload 20 /* clip */
aload 37 /* region */
invokevirtual sun.java2d.pipe.Region.getIntersection:(Lsun/java2d/pipe/Region;)Lsun/java2d/pipe/Region;
astore 20 /* clip */
112: .line 553
aload 34 /* tmpType */
aload 1 /* sg */
getfield sun.java2d.SunGraphics2D.imageComp:Lsun/java2d/loops/CompositeType;
aload 29 /* dstType */
invokestatic sun.java2d.loops.Blit.getFromCache:(Lsun/java2d/loops/SurfaceType;Lsun/java2d/loops/CompositeType;Lsun/java2d/loops/SurfaceType;)Lsun/java2d/loops/Blit;
astore 38 /* blit */
start local 38 // sun.java2d.loops.Blit blit
113: .line 554
aload 38 /* blit */
aload 33 /* tmpData */
aload 25 /* dstData */
aload 1 /* sg */
getfield sun.java2d.SunGraphics2D.composite:Ljava/awt/Composite;
aload 20 /* clip */
iconst_0
iconst_0
iload 21 /* dx1 */
iload 22 /* dy1 */
iload 30 /* w */
iload 31 /* h */
invokevirtual sun.java2d.loops.Blit.Blit:(Lsun/java2d/SurfaceData;Lsun/java2d/SurfaceData;Ljava/awt/Composite;Lsun/java2d/pipe/Region;IIIIII)V
114: .line 555
return
end local 38 // sun.java2d.loops.Blit blit
end local 37 // sun.java2d.pipe.Region region
end local 36 // int[] edges
end local 35 // sun.java2d.loops.MaskBlit tmpmaskblit
end local 34 // sun.java2d.loops.SurfaceType tmpType
end local 33 // sun.java2d.SurfaceData tmpData
end local 32 // java.awt.image.BufferedImage tmpimg
end local 31 // int h
end local 30 // int w
end local 29 // sun.java2d.loops.SurfaceType dstType
end local 28 // sun.java2d.loops.TransformHelper helper
end local 27 // sun.java2d.loops.SurfaceType srcType
end local 26 // sun.java2d.SurfaceData srcData
end local 25 // sun.java2d.SurfaceData dstData
end local 24 // int dy2
end local 23 // int dx2
end local 22 // int dy1
end local 21 // int dx1
end local 20 // sun.java2d.pipe.Region clip
end local 18 // double ddy2
end local 16 // double ddx2
end local 14 // double ddy1
end local 12 // double ddx1
end local 11 // double[] coords
end local 10 // java.awt.geom.AffineTransform itx
end local 9 // java.awt.Color bgColor
end local 8 // int sy2
end local 7 // int sx2
end local 6 // int sy1
end local 5 // int sx1
end local 4 // int interpType
end local 3 // java.awt.geom.AffineTransform tx
end local 2 // java.awt.Image img
end local 1 // sun.java2d.SunGraphics2D sg
end local 0 // sun.java2d.pipe.DrawImage this
LocalVariableTable:
Start End Slot Name Signature
0 115 0 this Lsun/java2d/pipe/DrawImage;
0 115 1 sg Lsun/java2d/SunGraphics2D;
0 115 2 img Ljava/awt/Image;
0 115 3 tx Ljava/awt/geom/AffineTransform;
0 115 4 interpType I
0 115 5 sx1 I
0 115 6 sy1 I
0 115 7 sx2 I
0 115 8 sy2 I
0 115 9 bgColor Ljava/awt/Color;
1 2 10 itx Ljava/awt/geom/AffineTransform;
4 115 10 itx Ljava/awt/geom/AffineTransform;
5 115 11 coords [D
10 115 12 ddx1 D
12 115 14 ddy1 D
9 115 16 ddx2 D
11 115 18 ddy2 D
13 22 20 i I
15 20 21 d D
23 115 20 clip Lsun/java2d/pipe/Region;
24 115 21 dx1 I
25 115 22 dy1 I
26 115 23 dx2 I
27 115 24 dy2 I
30 115 25 dstData Lsun/java2d/SurfaceData;
35 115 26 srcData Lsun/java2d/SurfaceData;
46 59 27 bgAlpha I
50 59 28 type I
60 115 27 srcType Lsun/java2d/loops/SurfaceType;
61 115 28 helper Lsun/java2d/loops/TransformHelper;
66 77 29 type I
78 115 29 dstType Lsun/java2d/loops/SurfaceType;
82 91 30 maskblit Lsun/java2d/loops/MaskBlit;
92 115 30 w I
93 115 31 h I
96 115 32 tmpimg Ljava/awt/image/BufferedImage;
97 115 33 tmpData Lsun/java2d/SurfaceData;
98 115 34 tmpType Lsun/java2d/loops/SurfaceType;
102 115 35 tmpmaskblit Lsun/java2d/loops/MaskBlit;
103 115 36 edges [I
111 115 37 region Lsun/java2d/pipe/Region;
113 115 38 blit Lsun/java2d/loops/Blit;
Exception table:
from to target type
0 1 2 Class java.awt.geom.NoninvertibleTransformException
MethodParameters:
Name Flags
sg
img
tx
interpType
sx1
sy1
sx2
sy2
bgColor
protected boolean renderImageCopy(sun.java2d.SunGraphics2D, java.awt.Image, java.awt.Color, int, int, int, int, int, int);
descriptor: (Lsun/java2d/SunGraphics2D;Ljava/awt/Image;Ljava/awt/Color;IIIIII)Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=11, locals=15, args_size=10
start local 0 // sun.java2d.pipe.DrawImage this
start local 1 // sun.java2d.SunGraphics2D sg
start local 2 // java.awt.Image img
start local 3 // java.awt.Color bgColor
start local 4 // int dx
start local 5 // int dy
start local 6 // int sx
start local 7 // int sy
start local 8 // int w
start local 9 // int h
0: .line 565
aload 1 /* sg */
invokevirtual sun.java2d.SunGraphics2D.getCompClip:()Lsun/java2d/pipe/Region;
astore 10 /* clip */
start local 10 // sun.java2d.pipe.Region clip
1: .line 566
aload 1 /* sg */
getfield sun.java2d.SunGraphics2D.surfaceData:Lsun/java2d/SurfaceData;
astore 11 /* dstData */
start local 11 // sun.java2d.SurfaceData dstData
2: .line 568
iconst_0
istore 12 /* attempts */
start local 12 // int attempts
3: .line 574
StackMap locals: sun.java2d.pipe.Region sun.java2d.SurfaceData int
StackMap stack:
aload 11 /* dstData */
aload 2 /* img */
4: .line 575
iconst_0
5: .line 576
aload 1 /* sg */
getfield sun.java2d.SunGraphics2D.imageComp:Lsun/java2d/loops/CompositeType;
6: .line 577
aload 3 /* bgColor */
7: .line 574
invokevirtual sun.java2d.SurfaceData.getSourceSurfaceData:(Ljava/awt/Image;ILsun/java2d/loops/CompositeType;Ljava/awt/Color;)Lsun/java2d/SurfaceData;
8: .line 573
astore 13 /* srcData */
start local 13 // sun.java2d.SurfaceData srcData
9: .line 578
aload 13 /* srcData */
ifnonnull 11
10: .line 579
iconst_0
ireturn
11: .line 583
StackMap locals: sun.java2d.SurfaceData
StackMap stack:
aload 1 /* sg */
aload 10 /* clip */
aload 13 /* srcData */
aload 11 /* dstData */
12: .line 584
iload 6 /* sx */
iload 7 /* sy */
iload 4 /* dx */
iload 5 /* dy */
iload 8 /* w */
iload 9 /* h */
aload 3 /* bgColor */
13: .line 583
invokestatic sun.java2d.pipe.DrawImage.blitSurfaceData:(Lsun/java2d/SunGraphics2D;Lsun/java2d/pipe/Region;Lsun/java2d/SurfaceData;Lsun/java2d/SurfaceData;IIIIIILjava/awt/Color;)V
14: .line 585
iconst_1
ireturn
15: .line 586
StackMap locals:
StackMap stack: java.lang.NullPointerException
astore 14 /* e */
start local 14 // java.lang.NullPointerException e
16: .line 587
aload 11 /* dstData */
invokestatic sun.java2d.SurfaceData.isNull:(Lsun/java2d/SurfaceData;)Z
ifne 19
17: .line 588
aload 13 /* srcData */
invokestatic sun.java2d.SurfaceData.isNull:(Lsun/java2d/SurfaceData;)Z
ifne 19
18: .line 591
aload 14 /* e */
athrow
19: .line 593
StackMap locals: java.lang.NullPointerException
StackMap stack:
iconst_0
ireturn
end local 14 // java.lang.NullPointerException e
20: .line 595
StackMap locals: sun.java2d.pipe.DrawImage sun.java2d.SunGraphics2D java.awt.Image java.awt.Color int int int int int int sun.java2d.pipe.Region sun.java2d.SurfaceData int sun.java2d.SurfaceData
StackMap stack: sun.java2d.InvalidPipeException
pop
21: .line 599
iinc 12 /* attempts */ 1
22: .line 600
aload 1 /* sg */
invokevirtual sun.java2d.SunGraphics2D.getCompClip:()Lsun/java2d/pipe/Region;
astore 10 /* clip */
23: .line 601
aload 1 /* sg */
getfield sun.java2d.SunGraphics2D.surfaceData:Lsun/java2d/SurfaceData;
astore 11 /* dstData */
24: .line 602
aload 11 /* dstData */
invokestatic sun.java2d.SurfaceData.isNull:(Lsun/java2d/SurfaceData;)Z
ifne 26
25: .line 603
aload 13 /* srcData */
invokestatic sun.java2d.SurfaceData.isNull:(Lsun/java2d/SurfaceData;)Z
ifne 26
iload 12 /* attempts */
iconst_1
if_icmple 3
26: .line 605
StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 13 // sun.java2d.SurfaceData srcData
end local 12 // int attempts
end local 11 // sun.java2d.SurfaceData dstData
end local 10 // sun.java2d.pipe.Region clip
end local 9 // int h
end local 8 // int w
end local 7 // int sy
end local 6 // int sx
end local 5 // int dy
end local 4 // int dx
end local 3 // java.awt.Color bgColor
end local 2 // java.awt.Image img
end local 1 // sun.java2d.SunGraphics2D sg
end local 0 // sun.java2d.pipe.DrawImage this
LocalVariableTable:
Start End Slot Name Signature
0 27 0 this Lsun/java2d/pipe/DrawImage;
0 27 1 sg Lsun/java2d/SunGraphics2D;
0 27 2 img Ljava/awt/Image;
0 27 3 bgColor Ljava/awt/Color;
0 27 4 dx I
0 27 5 dy I
0 27 6 sx I
0 27 7 sy I
0 27 8 w I
0 27 9 h I
1 27 10 clip Lsun/java2d/pipe/Region;
2 27 11 dstData Lsun/java2d/SurfaceData;
3 27 12 attempts I
9 27 13 srcData Lsun/java2d/SurfaceData;
16 20 14 e Ljava/lang/NullPointerException;
Exception table:
from to target type
11 14 15 Class java.lang.NullPointerException
11 14 20 Class sun.java2d.InvalidPipeException
MethodParameters:
Name Flags
sg
img
bgColor
dx
dy
sx
sy
w
h
protected boolean renderImageScale(sun.java2d.SunGraphics2D, java.awt.Image, java.awt.Color, int, int, int, int, int, double, double, double, double);
descriptor: (Lsun/java2d/SunGraphics2D;Ljava/awt/Image;Ljava/awt/Color;IIIIIDDDD)Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=19, locals=23, args_size=13
start local 0 // sun.java2d.pipe.DrawImage this
start local 1 // sun.java2d.SunGraphics2D sg
start local 2 // java.awt.Image img
start local 3 // java.awt.Color bgColor
start local 4 // int interpType
start local 5 // int sx1
start local 6 // int sy1
start local 7 // int sx2
start local 8 // int sy2
start local 9 // double dx1
start local 11 // double dy1
start local 13 // double dx2
start local 15 // double dy2
0: .line 621
iload 4 /* interpType */
iconst_1
if_icmpeq 2
1: .line 622
iconst_0
ireturn
2: .line 625
StackMap locals:
StackMap stack:
aload 1 /* sg */
invokevirtual sun.java2d.SunGraphics2D.getCompClip:()Lsun/java2d/pipe/Region;
astore 17 /* clip */
start local 17 // sun.java2d.pipe.Region clip
3: .line 626
aload 1 /* sg */
getfield sun.java2d.SunGraphics2D.surfaceData:Lsun/java2d/SurfaceData;
astore 18 /* dstData */
start local 18 // sun.java2d.SurfaceData dstData
4: .line 628
iconst_0
istore 19 /* attempts */
start local 19 // int attempts
5: .line 634
StackMap locals: sun.java2d.pipe.Region sun.java2d.SurfaceData int
StackMap stack:
aload 18 /* dstData */
aload 2 /* img */
6: .line 635
iconst_3
7: .line 636
aload 1 /* sg */
getfield sun.java2d.SunGraphics2D.imageComp:Lsun/java2d/loops/CompositeType;
8: .line 637
aload 3 /* bgColor */
9: .line 634
invokevirtual sun.java2d.SurfaceData.getSourceSurfaceData:(Ljava/awt/Image;ILsun/java2d/loops/CompositeType;Ljava/awt/Color;)Lsun/java2d/SurfaceData;
10: .line 633
astore 20 /* srcData */
start local 20 // sun.java2d.SurfaceData srcData
11: .line 639
aload 20 /* srcData */
ifnull 12
aload 20 /* srcData */
aload 3 /* bgColor */
invokestatic sun.java2d.pipe.DrawImage.isBgOperation:(Lsun/java2d/SurfaceData;Ljava/awt/Color;)Z
ifeq 13
12: .line 640
StackMap locals: sun.java2d.SurfaceData
StackMap stack:
iconst_0
ireturn
13: .line 644
StackMap locals:
StackMap stack:
aload 20 /* srcData */
invokevirtual sun.java2d.SurfaceData.getSurfaceType:()Lsun/java2d/loops/SurfaceType;
astore 21 /* srcType */
start local 21 // sun.java2d.loops.SurfaceType srcType
14: .line 645
aload 18 /* dstData */
invokevirtual sun.java2d.SurfaceData.getSurfaceType:()Lsun/java2d/loops/SurfaceType;
astore 22 /* dstType */
start local 22 // sun.java2d.loops.SurfaceType dstType
15: .line 646
aload 0 /* this */
aload 1 /* sg */
aload 17 /* clip */
16: .line 647
aload 20 /* srcData */
aload 18 /* dstData */
aload 21 /* srcType */
aload 22 /* dstType */
17: .line 648
iload 5 /* sx1 */
iload 6 /* sy1 */
iload 7 /* sx2 */
iload 8 /* sy2 */
18: .line 649
dload 9 /* dx1 */
dload 11 /* dy1 */
dload 13 /* dx2 */
dload 15 /* dy2 */
19: .line 646
invokevirtual sun.java2d.pipe.DrawImage.scaleSurfaceData:(Lsun/java2d/SunGraphics2D;Lsun/java2d/pipe/Region;Lsun/java2d/SurfaceData;Lsun/java2d/SurfaceData;Lsun/java2d/loops/SurfaceType;Lsun/java2d/loops/SurfaceType;IIIIDDDD)Z
20: ireturn
end local 22 // sun.java2d.loops.SurfaceType dstType
end local 21 // sun.java2d.loops.SurfaceType srcType
21: .line 650
StackMap locals:
StackMap stack: java.lang.NullPointerException
astore 21 /* e */
start local 21 // java.lang.NullPointerException e
22: .line 651
aload 18 /* dstData */
invokestatic sun.java2d.SurfaceData.isNull:(Lsun/java2d/SurfaceData;)Z
ifne 24
23: .line 653
aload 21 /* e */
athrow
24: .line 655
StackMap locals: java.lang.NullPointerException
StackMap stack:
iconst_0
ireturn
end local 21 // java.lang.NullPointerException e
25: .line 657
StackMap locals: sun.java2d.pipe.DrawImage sun.java2d.SunGraphics2D java.awt.Image java.awt.Color int int int int int double double double double sun.java2d.pipe.Region sun.java2d.SurfaceData int sun.java2d.SurfaceData
StackMap stack: sun.java2d.InvalidPipeException
pop
26: .line 661
iinc 19 /* attempts */ 1
27: .line 662
aload 1 /* sg */
invokevirtual sun.java2d.SunGraphics2D.getCompClip:()Lsun/java2d/pipe/Region;
astore 17 /* clip */
28: .line 663
aload 1 /* sg */
getfield sun.java2d.SunGraphics2D.surfaceData:Lsun/java2d/SurfaceData;
astore 18 /* dstData */
29: .line 664
aload 18 /* dstData */
invokestatic sun.java2d.SurfaceData.isNull:(Lsun/java2d/SurfaceData;)Z
ifne 31
30: .line 665
aload 20 /* srcData */
invokestatic sun.java2d.SurfaceData.isNull:(Lsun/java2d/SurfaceData;)Z
ifne 31
iload 19 /* attempts */
iconst_1
if_icmple 5
31: .line 667
StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 20 // sun.java2d.SurfaceData srcData
end local 19 // int attempts
end local 18 // sun.java2d.SurfaceData dstData
end local 17 // sun.java2d.pipe.Region clip
end local 15 // double dy2
end local 13 // double dx2
end local 11 // double dy1
end local 9 // double dx1
end local 8 // int sy2
end local 7 // int sx2
end local 6 // int sy1
end local 5 // int sx1
end local 4 // int interpType
end local 3 // java.awt.Color bgColor
end local 2 // java.awt.Image img
end local 1 // sun.java2d.SunGraphics2D sg
end local 0 // sun.java2d.pipe.DrawImage this
LocalVariableTable:
Start End Slot Name Signature
0 32 0 this Lsun/java2d/pipe/DrawImage;
0 32 1 sg Lsun/java2d/SunGraphics2D;
0 32 2 img Ljava/awt/Image;
0 32 3 bgColor Ljava/awt/Color;
0 32 4 interpType I
0 32 5 sx1 I
0 32 6 sy1 I
0 32 7 sx2 I
0 32 8 sy2 I
0 32 9 dx1 D
0 32 11 dy1 D
0 32 13 dx2 D
0 32 15 dy2 D
3 32 17 clip Lsun/java2d/pipe/Region;
4 32 18 dstData Lsun/java2d/SurfaceData;
5 32 19 attempts I
11 32 20 srcData Lsun/java2d/SurfaceData;
14 21 21 srcType Lsun/java2d/loops/SurfaceType;
15 21 22 dstType Lsun/java2d/loops/SurfaceType;
22 25 21 e Ljava/lang/NullPointerException;
Exception table:
from to target type
13 20 21 Class java.lang.NullPointerException
13 20 25 Class sun.java2d.InvalidPipeException
MethodParameters:
Name Flags
sg
img
bgColor
interpType
sx1
sy1
sx2
sy2
dx1
dy1
dx2
dy2
public boolean scaleImage(sun.java2d.SunGraphics2D, java.awt.Image, int, int, int, int, int, int, int, int, java.awt.Color);
descriptor: (Lsun/java2d/SunGraphics2D;Ljava/awt/Image;IIIIIIIILjava/awt/Color;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=17, locals=35, args_size=12
start local 0 // sun.java2d.pipe.DrawImage this
start local 1 // sun.java2d.SunGraphics2D sg
start local 2 // java.awt.Image img
start local 3 // int dx1
start local 4 // int dy1
start local 5 // int dx2
start local 6 // int dy2
start local 7 // int sx1
start local 8 // int sy1
start local 9 // int sx2
start local 10 // int sy2
start local 11 // java.awt.Color bgColor
0: .line 680
iconst_0
istore 20 /* srcWidthFlip */
start local 20 // boolean srcWidthFlip
1: .line 681
iconst_0
istore 21 /* srcHeightFlip */
start local 21 // boolean srcHeightFlip
2: .line 682
iconst_0
istore 22 /* dstWidthFlip */
start local 22 // boolean dstWidthFlip
3: .line 683
iconst_0
istore 23 /* dstHeightFlip */
start local 23 // boolean dstHeightFlip
4: .line 685
iload 9 /* sx2 */
iload 7 /* sx1 */
if_icmple 8
5: .line 686
iload 9 /* sx2 */
iload 7 /* sx1 */
isub
istore 12 /* srcW */
start local 12 // int srcW
6: .line 687
iload 7 /* sx1 */
istore 16 /* srcX */
start local 16 // int srcX
7: .line 688
goto 11
end local 16 // int srcX
end local 12 // int srcW
8: .line 689
StackMap locals: sun.java2d.pipe.DrawImage sun.java2d.SunGraphics2D java.awt.Image int int int int int int int int java.awt.Color top top top top top top top top int int int int
StackMap stack:
iconst_1
istore 20 /* srcWidthFlip */
9: .line 690
iload 7 /* sx1 */
iload 9 /* sx2 */
isub
istore 12 /* srcW */
start local 12 // int srcW
10: .line 691
iload 9 /* sx2 */
istore 16 /* srcX */
start local 16 // int srcX
11: .line 693
StackMap locals: sun.java2d.pipe.DrawImage sun.java2d.SunGraphics2D java.awt.Image int int int int int int int int java.awt.Color int top top top int top top top int int int int
StackMap stack:
iload 10 /* sy2 */
iload 8 /* sy1 */
if_icmple 15
12: .line 694
iload 10 /* sy2 */
iload 8 /* sy1 */
isub
istore 13 /* srcH */
start local 13 // int srcH
13: .line 695
iload 8 /* sy1 */
istore 17 /* srcY */
start local 17 // int srcY
14: .line 696
goto 18
end local 17 // int srcY
end local 13 // int srcH
15: .line 697
StackMap locals:
StackMap stack:
iconst_1
istore 21 /* srcHeightFlip */
16: .line 698
iload 8 /* sy1 */
iload 10 /* sy2 */
isub
istore 13 /* srcH */
start local 13 // int srcH
17: .line 699
iload 10 /* sy2 */
istore 17 /* srcY */
start local 17 // int srcY
18: .line 701
StackMap locals: sun.java2d.pipe.DrawImage sun.java2d.SunGraphics2D java.awt.Image int int int int int int int int java.awt.Color int int top top int int top top int int int int
StackMap stack:
iload 5 /* dx2 */
iload 3 /* dx1 */
if_icmple 22
19: .line 702
iload 5 /* dx2 */
iload 3 /* dx1 */
isub
istore 14 /* dstW */
start local 14 // int dstW
20: .line 703
iload 3 /* dx1 */
istore 18 /* dstX */
start local 18 // int dstX
21: .line 704
goto 25
end local 18 // int dstX
end local 14 // int dstW
22: .line 705
StackMap locals:
StackMap stack:
iload 3 /* dx1 */
iload 5 /* dx2 */
isub
istore 14 /* dstW */
start local 14 // int dstW
23: .line 706
iconst_1
istore 22 /* dstWidthFlip */
24: .line 707
iload 5 /* dx2 */
istore 18 /* dstX */
start local 18 // int dstX
25: .line 709
StackMap locals: sun.java2d.pipe.DrawImage sun.java2d.SunGraphics2D java.awt.Image int int int int int int int int java.awt.Color int int int top int int int top int int int int
StackMap stack:
iload 6 /* dy2 */
iload 4 /* dy1 */
if_icmple 29
26: .line 710
iload 6 /* dy2 */
iload 4 /* dy1 */
isub
istore 15 /* dstH */
start local 15 // int dstH
27: .line 711
iload 4 /* dy1 */
istore 19 /* dstY */
start local 19 // int dstY
28: .line 712
goto 32
end local 19 // int dstY
end local 15 // int dstH
29: .line 713
StackMap locals:
StackMap stack:
iload 4 /* dy1 */
iload 6 /* dy2 */
isub
istore 15 /* dstH */
start local 15 // int dstH
30: .line 714
iconst_1
istore 23 /* dstHeightFlip */
31: .line 715
iload 6 /* dy2 */
istore 19 /* dstY */
start local 19 // int dstY
32: .line 717
StackMap locals: sun.java2d.pipe.DrawImage sun.java2d.SunGraphics2D java.awt.Image int int int int int int int int java.awt.Color int int int int int int int int int int int int
StackMap stack:
iload 12 /* srcW */
ifle 33
iload 13 /* srcH */
ifgt 34
33: .line 718
StackMap locals:
StackMap stack:
iconst_1
ireturn
34: .line 721
StackMap locals:
StackMap stack:
iload 20 /* srcWidthFlip */
iload 22 /* dstWidthFlip */
if_icmpne 47
35: .line 722
iload 21 /* srcHeightFlip */
iload 23 /* dstHeightFlip */
if_icmpne 47
36: .line 723
aload 1 /* sg */
invokestatic sun.java2d.pipe.DrawImage.isSimpleTranslate:(Lsun/java2d/SunGraphics2D;)Z
ifeq 47
37: .line 725
iload 18 /* dstX */
aload 1 /* sg */
getfield sun.java2d.SunGraphics2D.transX:I
iadd
i2d
dstore 24 /* ddx1 */
start local 24 // double ddx1
38: .line 726
iload 19 /* dstY */
aload 1 /* sg */
getfield sun.java2d.SunGraphics2D.transY:I
iadd
i2d
dstore 26 /* ddy1 */
start local 26 // double ddy1
39: .line 727
dload 24 /* ddx1 */
iload 14 /* dstW */
i2d
dadd
dstore 28 /* ddx2 */
start local 28 // double ddx2
40: .line 728
dload 26 /* ddy1 */
iload 15 /* dstH */
i2d
dadd
dstore 30 /* ddy2 */
start local 30 // double ddy2
41: .line 729
aload 0 /* this */
aload 1 /* sg */
aload 2 /* img */
aload 11 /* bgColor */
aload 1 /* sg */
getfield sun.java2d.SunGraphics2D.interpolationType:I
42: .line 730
iload 16 /* srcX */
iload 17 /* srcY */
iload 16 /* srcX */
iload 12 /* srcW */
iadd
iload 17 /* srcY */
iload 13 /* srcH */
iadd
43: .line 731
dload 24 /* ddx1 */
dload 26 /* ddy1 */
dload 28 /* ddx2 */
dload 30 /* ddy2 */
44: .line 729
invokevirtual sun.java2d.pipe.DrawImage.renderImageScale:(Lsun/java2d/SunGraphics2D;Ljava/awt/Image;Ljava/awt/Color;IIIIIDDDD)Z
45: .line 731
ifeq 47
46: .line 733
iconst_1
ireturn
end local 30 // double ddy2
end local 28 // double ddx2
end local 26 // double ddy1
end local 24 // double ddx1
47: .line 737
StackMap locals:
StackMap stack:
new java.awt.geom.AffineTransform
dup
aload 1 /* sg */
getfield sun.java2d.SunGraphics2D.transform:Ljava/awt/geom/AffineTransform;
invokespecial java.awt.geom.AffineTransform.<init>:(Ljava/awt/geom/AffineTransform;)V
astore 24 /* atfm */
start local 24 // java.awt.geom.AffineTransform atfm
48: .line 738
aload 24 /* atfm */
iload 3 /* dx1 */
i2d
iload 4 /* dy1 */
i2d
invokevirtual java.awt.geom.AffineTransform.translate:(DD)V
49: .line 739
iload 5 /* dx2 */
iload 3 /* dx1 */
isub
i2d
iload 9 /* sx2 */
iload 7 /* sx1 */
isub
i2d
ddiv
dstore 25 /* m00 */
start local 25 // double m00
50: .line 740
iload 6 /* dy2 */
iload 4 /* dy1 */
isub
i2d
iload 10 /* sy2 */
iload 8 /* sy1 */
isub
i2d
ddiv
dstore 27 /* m11 */
start local 27 // double m11
51: .line 741
aload 24 /* atfm */
dload 25 /* m00 */
dload 27 /* m11 */
invokevirtual java.awt.geom.AffineTransform.scale:(DD)V
52: .line 742
aload 24 /* atfm */
iload 16 /* srcX */
iload 7 /* sx1 */
isub
i2d
iload 17 /* srcY */
iload 8 /* sy1 */
isub
i2d
invokevirtual java.awt.geom.AffineTransform.translate:(DD)V
53: .line 744
aload 2 /* img */
invokestatic sun.awt.image.SurfaceManager.getImageScaleX:(Ljava/awt/Image;)D
dstore 29 /* scaleX */
start local 29 // double scaleX
54: .line 745
aload 2 /* img */
invokestatic sun.awt.image.SurfaceManager.getImageScaleY:(Ljava/awt/Image;)D
dstore 31 /* scaleY */
start local 31 // double scaleY
55: .line 746
aload 2 /* img */
aconst_null
invokevirtual java.awt.Image.getWidth:(Ljava/awt/image/ImageObserver;)I
i2d
dload 29 /* scaleX */
dmul
invokestatic java.lang.Math.ceil:(D)D
d2i
istore 33 /* imgW */
start local 33 // int imgW
56: .line 747
aload 2 /* img */
aconst_null
invokevirtual java.awt.Image.getHeight:(Ljava/awt/image/ImageObserver;)I
i2d
dload 31 /* scaleY */
dmul
invokestatic java.lang.Math.ceil:(D)D
d2i
istore 34 /* imgH */
start local 34 // int imgH
57: .line 748
iload 12 /* srcW */
iload 16 /* srcX */
iadd
istore 12 /* srcW */
58: .line 749
iload 13 /* srcH */
iload 17 /* srcY */
iadd
istore 13 /* srcH */
59: .line 751
iload 12 /* srcW */
iload 33 /* imgW */
if_icmple 61
60: .line 752
iload 33 /* imgW */
istore 12 /* srcW */
61: .line 754
StackMap locals: sun.java2d.pipe.DrawImage sun.java2d.SunGraphics2D java.awt.Image int int int int int int int int java.awt.Color int int int int int int int int int int int int java.awt.geom.AffineTransform double double double double int int
StackMap stack:
iload 13 /* srcH */
iload 34 /* imgH */
if_icmple 63
62: .line 755
iload 34 /* imgH */
istore 13 /* srcH */
63: .line 757
StackMap locals:
StackMap stack:
iload 16 /* srcX */
ifge 66
64: .line 758
aload 24 /* atfm */
iload 16 /* srcX */
ineg
i2d
dconst_0
invokevirtual java.awt.geom.AffineTransform.translate:(DD)V
65: .line 759
iconst_0
istore 16 /* srcX */
66: .line 761
StackMap locals:
StackMap stack:
iload 17 /* srcY */
ifge 69
67: .line 762
aload 24 /* atfm */
dconst_0
iload 17 /* srcY */
ineg
i2d
invokevirtual java.awt.geom.AffineTransform.translate:(DD)V
68: .line 763
iconst_0
istore 17 /* srcY */
69: .line 765
StackMap locals:
StackMap stack:
iload 16 /* srcX */
iload 12 /* srcW */
if_icmpge 70
iload 17 /* srcY */
iload 13 /* srcH */
if_icmplt 71
70: .line 766
StackMap locals:
StackMap stack:
iconst_1
ireturn
71: .line 776
StackMap locals:
StackMap stack:
aload 0 /* this */
aload 1 /* sg */
aload 2 /* img */
aload 24 /* atfm */
aload 1 /* sg */
getfield sun.java2d.SunGraphics2D.interpolationType:I
72: .line 777
iload 16 /* srcX */
iload 17 /* srcY */
iload 12 /* srcW */
iload 13 /* srcH */
aload 11 /* bgColor */
73: .line 776
invokevirtual sun.java2d.pipe.DrawImage.transformImage:(Lsun/java2d/SunGraphics2D;Ljava/awt/Image;Ljava/awt/geom/AffineTransform;IIIIILjava/awt/Color;)V
74: .line 778
iconst_1
ireturn
end local 34 // int imgH
end local 33 // int imgW
end local 31 // double scaleY
end local 29 // double scaleX
end local 27 // double m11
end local 25 // double m00
end local 24 // java.awt.geom.AffineTransform atfm
end local 23 // boolean dstHeightFlip
end local 22 // boolean dstWidthFlip
end local 21 // boolean srcHeightFlip
end local 20 // boolean srcWidthFlip
end local 19 // int dstY
end local 18 // int dstX
end local 17 // int srcY
end local 16 // int srcX
end local 15 // int dstH
end local 14 // int dstW
end local 13 // int srcH
end local 12 // int srcW
end local 11 // java.awt.Color bgColor
end local 10 // int sy2
end local 9 // int sx2
end local 8 // int sy1
end local 7 // int sx1
end local 6 // int dy2
end local 5 // int dx2
end local 4 // int dy1
end local 3 // int dx1
end local 2 // java.awt.Image img
end local 1 // sun.java2d.SunGraphics2D sg
end local 0 // sun.java2d.pipe.DrawImage this
LocalVariableTable:
Start End Slot Name Signature
0 75 0 this Lsun/java2d/pipe/DrawImage;
0 75 1 sg Lsun/java2d/SunGraphics2D;
0 75 2 img Ljava/awt/Image;
0 75 3 dx1 I
0 75 4 dy1 I
0 75 5 dx2 I
0 75 6 dy2 I
0 75 7 sx1 I
0 75 8 sy1 I
0 75 9 sx2 I
0 75 10 sy2 I
0 75 11 bgColor Ljava/awt/Color;
6 8 12 srcW I
10 75 12 srcW I
13 15 13 srcH I
17 75 13 srcH I
20 22 14 dstW I
23 75 14 dstW I
27 29 15 dstH I
30 75 15 dstH I
7 8 16 srcX I
11 75 16 srcX I
14 15 17 srcY I
18 75 17 srcY I
21 22 18 dstX I
25 75 18 dstX I
28 29 19 dstY I
32 75 19 dstY I
1 75 20 srcWidthFlip Z
2 75 21 srcHeightFlip Z
3 75 22 dstWidthFlip Z
4 75 23 dstHeightFlip Z
38 47 24 ddx1 D
39 47 26 ddy1 D
40 47 28 ddx2 D
41 47 30 ddy2 D
48 75 24 atfm Ljava/awt/geom/AffineTransform;
50 75 25 m00 D
51 75 27 m11 D
54 75 29 scaleX D
55 75 31 scaleY D
56 75 33 imgW I
57 75 34 imgH I
MethodParameters:
Name Flags
sg
img
dx1
dy1
dx2
dy2
sx1
sy1
sx2
sy2
bgColor
public static boolean closeToInteger(int, double);
descriptor: (ID)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=3, args_size=2
start local 0 // int i
start local 1 // double d
0: .line 804
dload 1 /* d */
iload 0 /* i */
i2d
dsub
invokestatic java.lang.Math.abs:(D)D
ldc 1.0E-4
dcmpg
ifge 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 1 // double d
end local 0 // int i
LocalVariableTable:
Start End Slot Name Signature
0 2 0 i I
0 2 1 d D
MethodParameters:
Name Flags
i
d
public static boolean isSimpleTranslate(sun.java2d.SunGraphics2D);
descriptor: (Lsun/java2d/SunGraphics2D;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 // sun.java2d.SunGraphics2D sg
0: .line 808
aload 0 /* sg */
getfield sun.java2d.SunGraphics2D.transformState:I
istore 1 /* ts */
start local 1 // int ts
1: .line 809
iload 1 /* ts */
iconst_1
if_icmpgt 3
2: .line 811
iconst_1
ireturn
3: .line 813
StackMap locals: int
StackMap stack:
iload 1 /* ts */
iconst_3
if_icmplt 5
4: .line 815
iconst_0
ireturn
5: .line 818
StackMap locals:
StackMap stack:
aload 0 /* sg */
getfield sun.java2d.SunGraphics2D.interpolationType:I
iconst_1
if_icmpne 7
6: .line 819
iconst_1
ireturn
7: .line 821
StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 1 // int ts
end local 0 // sun.java2d.SunGraphics2D sg
LocalVariableTable:
Start End Slot Name Signature
0 8 0 sg Lsun/java2d/SunGraphics2D;
1 8 1 ts I
MethodParameters:
Name Flags
sg
protected static boolean isBgOperation(sun.java2d.SurfaceData, java.awt.Color);
descriptor: (Lsun/java2d/SurfaceData;Ljava/awt/Color;)Z
flags: (0x000c) ACC_PROTECTED, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 // sun.java2d.SurfaceData srcData
start local 1 // java.awt.Color bgColor
0: .line 827
aload 0 /* srcData */
ifnull 4
1: .line 828
aload 1 /* bgColor */
ifnull 3
2: .line 829
aload 0 /* srcData */
invokevirtual sun.java2d.SurfaceData.getTransparency:()I
iconst_1
if_icmpne 4
3: .line 827
StackMap locals:
StackMap stack:
iconst_0
ireturn
StackMap locals:
StackMap stack:
4: iconst_1
ireturn
end local 1 // java.awt.Color bgColor
end local 0 // sun.java2d.SurfaceData srcData
LocalVariableTable:
Start End Slot Name Signature
0 5 0 srcData Lsun/java2d/SurfaceData;
0 5 1 bgColor Ljava/awt/Color;
MethodParameters:
Name Flags
srcData
bgColor
protected java.awt.image.BufferedImage getBufferedImage(java.awt.Image);
descriptor: (Ljava/awt/Image;)Ljava/awt/image/BufferedImage;
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=2, args_size=2
start local 0 // sun.java2d.pipe.DrawImage this
start local 1 // java.awt.Image img
0: .line 833
aload 1 /* img */
instanceof java.awt.image.BufferedImage
ifeq 2
1: .line 834
aload 1 /* img */
checkcast java.awt.image.BufferedImage
areturn
2: .line 837
StackMap locals:
StackMap stack:
aload 1 /* img */
checkcast java.awt.image.VolatileImage
invokevirtual java.awt.image.VolatileImage.getSnapshot:()Ljava/awt/image/BufferedImage;
areturn
end local 1 // java.awt.Image img
end local 0 // sun.java2d.pipe.DrawImage this
LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/java2d/pipe/DrawImage;
0 3 1 img Ljava/awt/Image;
MethodParameters:
Name Flags
img
private java.awt.image.ColorModel getTransformColorModel(sun.java2d.SunGraphics2D, java.awt.image.BufferedImage, java.awt.geom.AffineTransform);
descriptor: (Lsun/java2d/SunGraphics2D;Ljava/awt/image/BufferedImage;Ljava/awt/geom/AffineTransform;)Ljava/awt/image/ColorModel;
flags: (0x0002) ACC_PRIVATE
Code:
stack=9, locals=13, args_size=4
start local 0 // sun.java2d.pipe.DrawImage this
start local 1 // sun.java2d.SunGraphics2D sg
start local 2 // java.awt.image.BufferedImage bImg
start local 3 // java.awt.geom.AffineTransform tx
0: .line 847
aload 2 /* bImg */
invokevirtual java.awt.image.BufferedImage.getColorModel:()Ljava/awt/image/ColorModel;
astore 4 /* cm */
start local 4 // java.awt.image.ColorModel cm
1: .line 848
aload 4 /* cm */
astore 5 /* dstCM */
start local 5 // java.awt.image.ColorModel dstCM
2: .line 850
aload 3 /* tx */
invokevirtual java.awt.geom.AffineTransform.isIdentity:()Z
ifeq 4
3: .line 851
aload 5 /* dstCM */
areturn
4: .line 853
StackMap locals: java.awt.image.ColorModel java.awt.image.ColorModel
StackMap stack:
aload 3 /* tx */
invokevirtual java.awt.geom.AffineTransform.getType:()I
istore 6 /* type */
start local 6 // int type
5: .line 855
iload 6 /* type */
bipush 56
iand
ifeq 6
iconst_1
goto 7
StackMap locals: int
StackMap stack:
6: iconst_0
7: .line 854
StackMap locals:
StackMap stack: int
istore 7 /* needTrans */
start local 7 // boolean needTrans
8: .line 857
iload 7 /* needTrans */
ifne 16
9: .line 858
iload 6 /* type */
iconst_1
if_icmpeq 16
10: .line 859
iload 6 /* type */
ifeq 16
11: .line 861
iconst_4
newarray 7
astore 8 /* mtx */
start local 8 // double[] mtx
12: .line 862
aload 3 /* tx */
aload 8 /* mtx */
invokevirtual java.awt.geom.AffineTransform.getMatrix:([D)V
13: .line 865
aload 8 /* mtx */
iconst_0
daload
aload 8 /* mtx */
iconst_0
daload
d2i
i2d
dcmpl
ifne 14
aload 8 /* mtx */
iconst_3
daload
aload 8 /* mtx */
iconst_3
daload
d2i
i2d
dcmpl
ifne 14
iconst_0
goto 15
StackMap locals: int double[]
StackMap stack:
14: iconst_1
StackMap locals:
StackMap stack: int
15: istore 7 /* needTrans */
end local 8 // double[] mtx
16: .line 868
StackMap locals:
StackMap stack:
aload 1 /* sg */
getfield sun.java2d.SunGraphics2D.renderHint:I
iconst_2
if_icmpeq 44
17: .line 869
aload 4 /* cm */
instanceof java.awt.image.IndexColorModel
ifeq 41
18: .line 870
aload 2 /* bImg */
invokevirtual java.awt.image.BufferedImage.getRaster:()Ljava/awt/image/WritableRaster;
astore 8 /* raster */
start local 8 // java.awt.image.Raster raster
19: .line 871
aload 4 /* cm */
checkcast java.awt.image.IndexColorModel
astore 9 /* icm */
start local 9 // java.awt.image.IndexColorModel icm
20: .line 873
iload 7 /* needTrans */
ifeq 47
aload 4 /* cm */
invokevirtual java.awt.image.ColorModel.getTransparency:()I
iconst_1
if_icmpne 47
21: .line 875
aload 8 /* raster */
instanceof sun.awt.image.BytePackedRaster
ifeq 24
22: .line 876
invokestatic java.awt.image.ColorModel.getRGBdefault:()Ljava/awt/image/ColorModel;
astore 5 /* dstCM */
23: .line 877
goto 47
24: .line 879
StackMap locals: java.awt.image.Raster java.awt.image.IndexColorModel
StackMap stack:
bipush 6
newarray 7
astore 10 /* matrix */
start local 10 // double[] matrix
25: .line 880
aload 3 /* tx */
aload 10 /* matrix */
invokevirtual java.awt.geom.AffineTransform.getMatrix:([D)V
26: .line 881
aload 10 /* matrix */
iconst_1
daload
dconst_0
dcmpl
ifne 28
aload 10 /* matrix */
iconst_2
daload
dconst_0
dcmpl
ifne 28
27: .line 882
aload 10 /* matrix */
iconst_4
daload
dconst_0
dcmpl
ifne 28
aload 10 /* matrix */
iconst_5
daload
dconst_0
dcmpl
ifeq 47
28: .line 886
StackMap locals: double[]
StackMap stack:
aload 9 /* icm */
invokevirtual java.awt.image.IndexColorModel.getMapSize:()I
istore 11 /* mapSize */
start local 11 // int mapSize
29: .line 887
iload 11 /* mapSize */
sipush 256
if_icmpge 39
30: .line 888
iload 11 /* mapSize */
iconst_1
iadd
newarray 10
astore 12 /* cmap */
start local 12 // int[] cmap
31: .line 889
aload 9 /* icm */
aload 12 /* cmap */
invokevirtual java.awt.image.IndexColorModel.getRGBs:([I)V
32: .line 890
aload 12 /* cmap */
iload 11 /* mapSize */
iconst_0
iastore
33: .line 892
new java.awt.image.IndexColorModel
dup
aload 9 /* icm */
invokevirtual java.awt.image.IndexColorModel.getPixelSize:()I
34: .line 893
iload 11 /* mapSize */
iconst_1
iadd
35: .line 894
aload 12 /* cmap */
iconst_0
iconst_1
iload 11 /* mapSize */
36: .line 895
iconst_0
37: .line 891
invokespecial java.awt.image.IndexColorModel.<init>:(II[IIZII)V
astore 5 /* dstCM */
end local 12 // int[] cmap
38: .line 896
goto 47
39: .line 898
StackMap locals: int
StackMap stack:
invokestatic java.awt.image.ColorModel.getRGBdefault:()Ljava/awt/image/ColorModel;
astore 5 /* dstCM */
end local 11 // int mapSize
end local 10 // double[] matrix
end local 9 // java.awt.image.IndexColorModel icm
end local 8 // java.awt.image.Raster raster
40: .line 903
goto 47
41: .line 904
StackMap locals: sun.java2d.pipe.DrawImage sun.java2d.SunGraphics2D java.awt.image.BufferedImage java.awt.geom.AffineTransform java.awt.image.ColorModel java.awt.image.ColorModel int int
StackMap stack:
iload 7 /* needTrans */
ifeq 47
aload 4 /* cm */
invokevirtual java.awt.image.ColorModel.getTransparency:()I
iconst_1
if_icmpne 47
42: .line 908
invokestatic java.awt.image.ColorModel.getRGBdefault:()Ljava/awt/image/ColorModel;
astore 5 /* dstCM */
43: .line 910
goto 47
44: .line 913
StackMap locals:
StackMap stack:
aload 4 /* cm */
instanceof java.awt.image.IndexColorModel
ifne 46
45: .line 914
iload 7 /* needTrans */
ifeq 47
aload 4 /* cm */
invokevirtual java.awt.image.ColorModel.getTransparency:()I
iconst_1
if_icmpne 47
46: .line 919
StackMap locals:
StackMap stack:
invokestatic java.awt.image.ColorModel.getRGBdefault:()Ljava/awt/image/ColorModel;
astore 5 /* dstCM */
47: .line 923
StackMap locals:
StackMap stack:
aload 5 /* dstCM */
areturn
end local 7 // boolean needTrans
end local 6 // int type
end local 5 // java.awt.image.ColorModel dstCM
end local 4 // java.awt.image.ColorModel cm
end local 3 // java.awt.geom.AffineTransform tx
end local 2 // java.awt.image.BufferedImage bImg
end local 1 // sun.java2d.SunGraphics2D sg
end local 0 // sun.java2d.pipe.DrawImage this
LocalVariableTable:
Start End Slot Name Signature
0 48 0 this Lsun/java2d/pipe/DrawImage;
0 48 1 sg Lsun/java2d/SunGraphics2D;
0 48 2 bImg Ljava/awt/image/BufferedImage;
0 48 3 tx Ljava/awt/geom/AffineTransform;
1 48 4 cm Ljava/awt/image/ColorModel;
2 48 5 dstCM Ljava/awt/image/ColorModel;
5 48 6 type I
8 48 7 needTrans Z
12 16 8 mtx [D
19 40 8 raster Ljava/awt/image/Raster;
20 40 9 icm Ljava/awt/image/IndexColorModel;
25 40 10 matrix [D
29 40 11 mapSize I
31 38 12 cmap [I
MethodParameters:
Name Flags
sg
bImg
tx
private static void blitSurfaceData(sun.java2d.SunGraphics2D, sun.java2d.pipe.Region, sun.java2d.SurfaceData, sun.java2d.SurfaceData, int, int, int, int, int, int, java.awt.Color);
descriptor: (Lsun/java2d/SunGraphics2D;Lsun/java2d/pipe/Region;Lsun/java2d/SurfaceData;Lsun/java2d/SurfaceData;IIIIIILjava/awt/Color;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=12, locals=16, args_size=11
start local 0 // sun.java2d.SunGraphics2D sg
start local 1 // sun.java2d.pipe.Region clip
start local 2 // sun.java2d.SurfaceData srcData
start local 3 // sun.java2d.SurfaceData dstData
start local 4 // int sx
start local 5 // int sy
start local 6 // int dx
start local 7 // int dy
start local 8 // int w
start local 9 // int h
start local 10 // java.awt.Color bgColor
0: .line 932
aload 0 /* sg */
getfield sun.java2d.SunGraphics2D.imageComp:Lsun/java2d/loops/CompositeType;
astore 11 /* comp */
start local 11 // sun.java2d.loops.CompositeType comp
1: .line 933
getstatic sun.java2d.loops.CompositeType.SrcOverNoEa:Lsun/java2d/loops/CompositeType;
aload 11 /* comp */
invokevirtual sun.java2d.loops.CompositeType.equals:(Ljava/lang/Object;)Z
ifeq 6
2: .line 934
aload 2 /* srcData */
invokevirtual sun.java2d.SurfaceData.getTransparency:()I
iconst_1
if_icmpeq 5
3: .line 935
aload 10 /* bgColor */
ifnull 6
4: .line 936
aload 10 /* bgColor */
invokevirtual java.awt.Color.getTransparency:()I
iconst_1
if_icmpne 6
5: .line 938
StackMap locals: sun.java2d.loops.CompositeType
StackMap stack:
getstatic sun.java2d.loops.CompositeType.SrcNoEa:Lsun/java2d/loops/CompositeType;
astore 11 /* comp */
6: .line 940
StackMap locals:
StackMap stack:
aload 2 /* srcData */
aload 3 /* dstData */
if_acmpne 9
iload 4 /* sx */
iload 6 /* dx */
if_icmpne 9
iload 5 /* sy */
iload 7 /* dy */
if_icmpne 9
7: .line 941
getstatic sun.java2d.loops.CompositeType.SrcNoEa:Lsun/java2d/loops/CompositeType;
aload 11 /* comp */
invokevirtual sun.java2d.loops.CompositeType.equals:(Ljava/lang/Object;)Z
ifeq 9
8: .line 944
return
9: .line 952
StackMap locals:
StackMap stack:
new java.awt.Rectangle
dup
iload 6 /* dx */
iload 7 /* dy */
iload 8 /* w */
iload 9 /* h */
invokespecial java.awt.Rectangle.<init>:(IIII)V
aload 3 /* dstData */
invokevirtual sun.java2d.SurfaceData.getBounds:()Ljava/awt/Rectangle;
invokevirtual java.awt.Rectangle.intersection:(Ljava/awt/Rectangle;)Ljava/awt/Rectangle;
10: .line 951
astore 12 /* dst */
start local 12 // java.awt.Rectangle dst
11: .line 953
aload 12 /* dst */
invokevirtual java.awt.Rectangle.isEmpty:()Z
ifeq 13
12: .line 974
return
13: .line 979
StackMap locals: java.awt.Rectangle
StackMap stack:
iload 4 /* sx */
aload 12 /* dst */
getfield java.awt.Rectangle.x:I
iload 6 /* dx */
isub
iadd
istore 4 /* sx */
14: .line 980
iload 5 /* sy */
aload 12 /* dst */
getfield java.awt.Rectangle.y:I
iload 7 /* dy */
isub
iadd
istore 5 /* sy */
15: .line 982
aload 2 /* srcData */
invokevirtual sun.java2d.SurfaceData.getSurfaceType:()Lsun/java2d/loops/SurfaceType;
astore 13 /* srcType */
start local 13 // sun.java2d.loops.SurfaceType srcType
16: .line 983
aload 3 /* dstData */
invokevirtual sun.java2d.SurfaceData.getSurfaceType:()Lsun/java2d/loops/SurfaceType;
astore 14 /* dstType */
start local 14 // sun.java2d.loops.SurfaceType dstType
17: .line 984
aload 2 /* srcData */
aload 10 /* bgColor */
invokestatic sun.java2d.pipe.DrawImage.isBgOperation:(Lsun/java2d/SurfaceData;Ljava/awt/Color;)Z
ifne 23
18: .line 985
aload 13 /* srcType */
aload 11 /* comp */
aload 14 /* dstType */
invokestatic sun.java2d.loops.Blit.getFromCache:(Lsun/java2d/loops/SurfaceType;Lsun/java2d/loops/CompositeType;Lsun/java2d/loops/SurfaceType;)Lsun/java2d/loops/Blit;
astore 15 /* blit */
start local 15 // sun.java2d.loops.Blit blit
19: .line 986
aload 15 /* blit */
aload 2 /* srcData */
aload 3 /* dstData */
aload 0 /* sg */
getfield sun.java2d.SunGraphics2D.composite:Ljava/awt/Composite;
aload 1 /* clip */
20: .line 987
iload 4 /* sx */
iload 5 /* sy */
aload 12 /* dst */
getfield java.awt.Rectangle.x:I
aload 12 /* dst */
getfield java.awt.Rectangle.y:I
aload 12 /* dst */
getfield java.awt.Rectangle.width:I
aload 12 /* dst */
getfield java.awt.Rectangle.height:I
21: .line 986
invokevirtual sun.java2d.loops.Blit.Blit:(Lsun/java2d/SurfaceData;Lsun/java2d/SurfaceData;Ljava/awt/Composite;Lsun/java2d/pipe/Region;IIIIII)V
end local 15 // sun.java2d.loops.Blit blit
22: .line 988
goto 27
23: .line 989
StackMap locals: sun.java2d.loops.SurfaceType sun.java2d.loops.SurfaceType
StackMap stack:
aload 13 /* srcType */
aload 11 /* comp */
aload 14 /* dstType */
invokestatic sun.java2d.loops.BlitBg.getFromCache:(Lsun/java2d/loops/SurfaceType;Lsun/java2d/loops/CompositeType;Lsun/java2d/loops/SurfaceType;)Lsun/java2d/loops/BlitBg;
astore 15 /* blit */
start local 15 // sun.java2d.loops.BlitBg blit
24: .line 990
aload 15 /* blit */
aload 2 /* srcData */
aload 3 /* dstData */
aload 0 /* sg */
getfield sun.java2d.SunGraphics2D.composite:Ljava/awt/Composite;
aload 1 /* clip */
aload 10 /* bgColor */
invokevirtual java.awt.Color.getRGB:()I
25: .line 991
iload 4 /* sx */
iload 5 /* sy */
aload 12 /* dst */
getfield java.awt.Rectangle.x:I
aload 12 /* dst */
getfield java.awt.Rectangle.y:I
aload 12 /* dst */
getfield java.awt.Rectangle.width:I
aload 12 /* dst */
getfield java.awt.Rectangle.height:I
26: .line 990
invokevirtual sun.java2d.loops.BlitBg.BlitBg:(Lsun/java2d/SurfaceData;Lsun/java2d/SurfaceData;Ljava/awt/Composite;Lsun/java2d/pipe/Region;IIIIIII)V
end local 15 // sun.java2d.loops.BlitBg blit
27: .line 993
StackMap locals:
StackMap stack:
return
end local 14 // sun.java2d.loops.SurfaceType dstType
end local 13 // sun.java2d.loops.SurfaceType srcType
end local 12 // java.awt.Rectangle dst
end local 11 // sun.java2d.loops.CompositeType comp
end local 10 // java.awt.Color bgColor
end local 9 // int h
end local 8 // int w
end local 7 // int dy
end local 6 // int dx
end local 5 // int sy
end local 4 // int sx
end local 3 // sun.java2d.SurfaceData dstData
end local 2 // sun.java2d.SurfaceData srcData
end local 1 // sun.java2d.pipe.Region clip
end local 0 // sun.java2d.SunGraphics2D sg
LocalVariableTable:
Start End Slot Name Signature
0 28 0 sg Lsun/java2d/SunGraphics2D;
0 28 1 clip Lsun/java2d/pipe/Region;
0 28 2 srcData Lsun/java2d/SurfaceData;
0 28 3 dstData Lsun/java2d/SurfaceData;
0 28 4 sx I
0 28 5 sy I
0 28 6 dx I
0 28 7 dy I
0 28 8 w I
0 28 9 h I
0 28 10 bgColor Ljava/awt/Color;
1 28 11 comp Lsun/java2d/loops/CompositeType;
11 28 12 dst Ljava/awt/Rectangle;
16 28 13 srcType Lsun/java2d/loops/SurfaceType;
17 28 14 dstType Lsun/java2d/loops/SurfaceType;
19 22 15 blit Lsun/java2d/loops/Blit;
24 27 15 blit Lsun/java2d/loops/BlitBg;
MethodParameters:
Name Flags
sg
clip
srcData
dstData
sx
sy
dx
dy
w
h
bgColor
protected boolean scaleSurfaceData(sun.java2d.SunGraphics2D, sun.java2d.pipe.Region, sun.java2d.SurfaceData, sun.java2d.SurfaceData, sun.java2d.loops.SurfaceType, sun.java2d.loops.SurfaceType, int, int, int, int, double, double, double, double);
descriptor: (Lsun/java2d/SunGraphics2D;Lsun/java2d/pipe/Region;Lsun/java2d/SurfaceData;Lsun/java2d/SurfaceData;Lsun/java2d/loops/SurfaceType;Lsun/java2d/loops/SurfaceType;IIIIDDDD)Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=17, locals=21, args_size=15
start local 0 // sun.java2d.pipe.DrawImage this
start local 1 // sun.java2d.SunGraphics2D sg
start local 2 // sun.java2d.pipe.Region clipRegion
start local 3 // sun.java2d.SurfaceData srcData
start local 4 // sun.java2d.SurfaceData dstData
start local 5 // sun.java2d.loops.SurfaceType srcType
start local 6 // sun.java2d.loops.SurfaceType dstType
start local 7 // int sx1
start local 8 // int sy1
start local 9 // int sx2
start local 10 // int sy2
start local 11 // double dx1
start local 13 // double dy1
start local 15 // double dx2
start local 17 // double dy2
0: .line 1006
aload 1 /* sg */
getfield sun.java2d.SunGraphics2D.imageComp:Lsun/java2d/loops/CompositeType;
astore 19 /* comp */
start local 19 // sun.java2d.loops.CompositeType comp
1: .line 1007
getstatic sun.java2d.loops.CompositeType.SrcOverNoEa:Lsun/java2d/loops/CompositeType;
aload 19 /* comp */
invokevirtual sun.java2d.loops.CompositeType.equals:(Ljava/lang/Object;)Z
ifeq 4
2: .line 1008
aload 3 /* srcData */
invokevirtual sun.java2d.SurfaceData.getTransparency:()I
iconst_1
if_icmpne 4
3: .line 1010
getstatic sun.java2d.loops.CompositeType.SrcNoEa:Lsun/java2d/loops/CompositeType;
astore 19 /* comp */
4: .line 1013
StackMap locals: sun.java2d.loops.CompositeType
StackMap stack:
aload 5 /* srcType */
aload 19 /* comp */
aload 6 /* dstType */
invokestatic sun.java2d.loops.ScaledBlit.getFromCache:(Lsun/java2d/loops/SurfaceType;Lsun/java2d/loops/CompositeType;Lsun/java2d/loops/SurfaceType;)Lsun/java2d/loops/ScaledBlit;
astore 20 /* blit */
start local 20 // sun.java2d.loops.ScaledBlit blit
5: .line 1014
aload 20 /* blit */
ifnull 10
6: .line 1015
aload 20 /* blit */
aload 3 /* srcData */
aload 4 /* dstData */
aload 1 /* sg */
getfield sun.java2d.SunGraphics2D.composite:Ljava/awt/Composite;
aload 2 /* clipRegion */
7: .line 1016
iload 7 /* sx1 */
iload 8 /* sy1 */
iload 9 /* sx2 */
iload 10 /* sy2 */
dload 11 /* dx1 */
dload 13 /* dy1 */
dload 15 /* dx2 */
dload 17 /* dy2 */
8: .line 1015
invokevirtual sun.java2d.loops.ScaledBlit.Scale:(Lsun/java2d/SurfaceData;Lsun/java2d/SurfaceData;Ljava/awt/Composite;Lsun/java2d/pipe/Region;IIIIDDDD)V
9: .line 1017
iconst_1
ireturn
10: .line 1019
StackMap locals: sun.java2d.loops.ScaledBlit
StackMap stack:
iconst_0
ireturn
end local 20 // sun.java2d.loops.ScaledBlit blit
end local 19 // sun.java2d.loops.CompositeType comp
end local 17 // double dy2
end local 15 // double dx2
end local 13 // double dy1
end local 11 // double dx1
end local 10 // int sy2
end local 9 // int sx2
end local 8 // int sy1
end local 7 // int sx1
end local 6 // sun.java2d.loops.SurfaceType dstType
end local 5 // sun.java2d.loops.SurfaceType srcType
end local 4 // sun.java2d.SurfaceData dstData
end local 3 // sun.java2d.SurfaceData srcData
end local 2 // sun.java2d.pipe.Region clipRegion
end local 1 // sun.java2d.SunGraphics2D sg
end local 0 // sun.java2d.pipe.DrawImage this
LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lsun/java2d/pipe/DrawImage;
0 11 1 sg Lsun/java2d/SunGraphics2D;
0 11 2 clipRegion Lsun/java2d/pipe/Region;
0 11 3 srcData Lsun/java2d/SurfaceData;
0 11 4 dstData Lsun/java2d/SurfaceData;
0 11 5 srcType Lsun/java2d/loops/SurfaceType;
0 11 6 dstType Lsun/java2d/loops/SurfaceType;
0 11 7 sx1 I
0 11 8 sy1 I
0 11 9 sx2 I
0 11 10 sy2 I
0 11 11 dx1 D
0 11 13 dy1 D
0 11 15 dx2 D
0 11 17 dy2 D
1 11 19 comp Lsun/java2d/loops/CompositeType;
5 11 20 blit Lsun/java2d/loops/ScaledBlit;
MethodParameters:
Name Flags
sg
clipRegion
srcData
dstData
srcType
dstType
sx1
sy1
sx2
sy2
dx1
dy1
dx2
dy2
protected static boolean imageReady(sun.awt.image.ToolkitImage, java.awt.image.ImageObserver);
descriptor: (Lsun/awt/image/ToolkitImage;Ljava/awt/image/ImageObserver;)Z
flags: (0x000c) ACC_PROTECTED, ACC_STATIC
Code:
stack=7, locals=2, args_size=2
start local 0 // sun.awt.image.ToolkitImage sunimg
start local 1 // java.awt.image.ImageObserver observer
0: .line 1025
aload 0 /* sunimg */
invokevirtual sun.awt.image.ToolkitImage.hasError:()Z
ifeq 7
1: .line 1026
aload 1 /* observer */
ifnull 6
2: .line 1027
aload 1 /* observer */
aload 0 /* sunimg */
3: .line 1028
sipush 192
4: .line 1029
iconst_m1
iconst_m1
iconst_m1
iconst_m1
5: .line 1027
invokeinterface java.awt.image.ImageObserver.imageUpdate:(Ljava/awt/Image;IIIII)Z
pop
6: .line 1031
StackMap locals:
StackMap stack:
iconst_0
ireturn
7: .line 1033
StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 1 // java.awt.image.ImageObserver observer
end local 0 // sun.awt.image.ToolkitImage sunimg
LocalVariableTable:
Start End Slot Name Signature
0 8 0 sunimg Lsun/awt/image/ToolkitImage;
0 8 1 observer Ljava/awt/image/ImageObserver;
MethodParameters:
Name Flags
sunimg
observer
public boolean copyImage(sun.java2d.SunGraphics2D, java.awt.Image, int, int, java.awt.Color, java.awt.image.ImageObserver);
descriptor: (Lsun/java2d/SunGraphics2D;Ljava/awt/Image;IILjava/awt/Color;Ljava/awt/image/ImageObserver;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=9, args_size=7
start local 0 // sun.java2d.pipe.DrawImage this
start local 1 // sun.java2d.SunGraphics2D sg
start local 2 // java.awt.Image img
start local 3 // int x
start local 4 // int y
start local 5 // java.awt.Color bgColor
start local 6 // java.awt.image.ImageObserver observer
0: .line 1040
aload 2 /* img */
instanceof sun.awt.image.ToolkitImage
ifne 2
1: .line 1041
aload 0 /* this */
aload 1 /* sg */
aload 2 /* img */
iload 3 /* x */
iload 4 /* y */
aload 5 /* bgColor */
invokevirtual sun.java2d.pipe.DrawImage.copyImage:(Lsun/java2d/SunGraphics2D;Ljava/awt/Image;IILjava/awt/Color;)Z
ireturn
2: .line 1043
StackMap locals:
StackMap stack:
aload 2 /* img */
checkcast sun.awt.image.ToolkitImage
astore 7 /* sunimg */
start local 7 // sun.awt.image.ToolkitImage sunimg
3: .line 1044
aload 7 /* sunimg */
aload 6 /* observer */
invokestatic sun.java2d.pipe.DrawImage.imageReady:(Lsun/awt/image/ToolkitImage;Ljava/awt/image/ImageObserver;)Z
ifne 5
4: .line 1045
iconst_0
ireturn
5: .line 1047
StackMap locals: sun.awt.image.ToolkitImage
StackMap stack:
aload 7 /* sunimg */
invokevirtual sun.awt.image.ToolkitImage.getImageRep:()Lsun/awt/image/ImageRepresentation;
astore 8 /* ir */
start local 8 // sun.awt.image.ImageRepresentation ir
6: .line 1048
aload 8 /* ir */
aload 1 /* sg */
aload 7 /* sunimg */
iload 3 /* x */
iload 4 /* y */
aload 5 /* bgColor */
aload 6 /* observer */
invokevirtual sun.awt.image.ImageRepresentation.drawToBufImage:(Ljava/awt/Graphics;Lsun/awt/image/ToolkitImage;IILjava/awt/Color;Ljava/awt/image/ImageObserver;)Z
ireturn
end local 8 // sun.awt.image.ImageRepresentation ir
end local 7 // sun.awt.image.ToolkitImage sunimg
end local 6 // java.awt.image.ImageObserver observer
end local 5 // java.awt.Color bgColor
end local 4 // int y
end local 3 // int x
end local 2 // java.awt.Image img
end local 1 // sun.java2d.SunGraphics2D sg
end local 0 // sun.java2d.pipe.DrawImage this
LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lsun/java2d/pipe/DrawImage;
0 7 1 sg Lsun/java2d/SunGraphics2D;
0 7 2 img Ljava/awt/Image;
0 7 3 x I
0 7 4 y I
0 7 5 bgColor Ljava/awt/Color;
0 7 6 observer Ljava/awt/image/ImageObserver;
3 7 7 sunimg Lsun/awt/image/ToolkitImage;
6 7 8 ir Lsun/awt/image/ImageRepresentation;
MethodParameters:
Name Flags
sg
img
x
y
bgColor
observer
public boolean copyImage(sun.java2d.SunGraphics2D, java.awt.Image, int, int, int, int, int, int, java.awt.Color, java.awt.image.ImageObserver);
descriptor: (Lsun/java2d/SunGraphics2D;Ljava/awt/Image;IIIIIILjava/awt/Color;Ljava/awt/image/ImageObserver;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=13, locals=13, args_size=11
start local 0 // sun.java2d.pipe.DrawImage this
start local 1 // sun.java2d.SunGraphics2D sg
start local 2 // java.awt.Image img
start local 3 // int dx
start local 4 // int dy
start local 5 // int sx
start local 6 // int sy
start local 7 // int w
start local 8 // int h
start local 9 // java.awt.Color bgColor
start local 10 // java.awt.image.ImageObserver observer
0: .line 1056
aload 2 /* img */
instanceof sun.awt.image.ToolkitImage
ifne 2
1: .line 1057
aload 0 /* this */
aload 1 /* sg */
aload 2 /* img */
iload 3 /* dx */
iload 4 /* dy */
iload 5 /* sx */
iload 6 /* sy */
iload 7 /* w */
iload 8 /* h */
aload 9 /* bgColor */
invokevirtual sun.java2d.pipe.DrawImage.copyImage:(Lsun/java2d/SunGraphics2D;Ljava/awt/Image;IIIIIILjava/awt/Color;)Z
ireturn
2: .line 1059
StackMap locals:
StackMap stack:
aload 2 /* img */
checkcast sun.awt.image.ToolkitImage
astore 11 /* sunimg */
start local 11 // sun.awt.image.ToolkitImage sunimg
3: .line 1060
aload 11 /* sunimg */
aload 10 /* observer */
invokestatic sun.java2d.pipe.DrawImage.imageReady:(Lsun/awt/image/ToolkitImage;Ljava/awt/image/ImageObserver;)Z
ifne 5
4: .line 1061
iconst_0
ireturn
5: .line 1063
StackMap locals: sun.awt.image.ToolkitImage
StackMap stack:
aload 11 /* sunimg */
invokevirtual sun.awt.image.ToolkitImage.getImageRep:()Lsun/awt/image/ImageRepresentation;
astore 12 /* ir */
start local 12 // sun.awt.image.ImageRepresentation ir
6: .line 1064
aload 12 /* ir */
aload 1 /* sg */
aload 11 /* sunimg */
7: .line 1065
iload 3 /* dx */
iload 4 /* dy */
iload 3 /* dx */
iload 7 /* w */
iadd
iload 4 /* dy */
iload 8 /* h */
iadd
8: .line 1066
iload 5 /* sx */
iload 6 /* sy */
iload 5 /* sx */
iload 7 /* w */
iadd
iload 6 /* sy */
iload 8 /* h */
iadd
9: .line 1067
aload 9 /* bgColor */
aload 10 /* observer */
10: .line 1064
invokevirtual sun.awt.image.ImageRepresentation.drawToBufImage:(Ljava/awt/Graphics;Lsun/awt/image/ToolkitImage;IIIIIIIILjava/awt/Color;Ljava/awt/image/ImageObserver;)Z
ireturn
end local 12 // sun.awt.image.ImageRepresentation ir
end local 11 // sun.awt.image.ToolkitImage sunimg
end local 10 // java.awt.image.ImageObserver observer
end local 9 // java.awt.Color bgColor
end local 8 // int h
end local 7 // int w
end local 6 // int sy
end local 5 // int sx
end local 4 // int dy
end local 3 // int dx
end local 2 // java.awt.Image img
end local 1 // sun.java2d.SunGraphics2D sg
end local 0 // sun.java2d.pipe.DrawImage this
LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lsun/java2d/pipe/DrawImage;
0 11 1 sg Lsun/java2d/SunGraphics2D;
0 11 2 img Ljava/awt/Image;
0 11 3 dx I
0 11 4 dy I
0 11 5 sx I
0 11 6 sy I
0 11 7 w I
0 11 8 h I
0 11 9 bgColor Ljava/awt/Color;
0 11 10 observer Ljava/awt/image/ImageObserver;
3 11 11 sunimg Lsun/awt/image/ToolkitImage;
6 11 12 ir Lsun/awt/image/ImageRepresentation;
MethodParameters:
Name Flags
sg
img
dx
dy
sx
sy
w
h
bgColor
observer
public boolean scaleImage(sun.java2d.SunGraphics2D, java.awt.Image, int, int, int, int, java.awt.Color, java.awt.image.ImageObserver);
descriptor: (Lsun/java2d/SunGraphics2D;Ljava/awt/Image;IIIILjava/awt/Color;Ljava/awt/image/ImageObserver;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=9, locals=11, args_size=9
start local 0 // sun.java2d.pipe.DrawImage this
start local 1 // sun.java2d.SunGraphics2D sg
start local 2 // java.awt.Image img
start local 3 // int x
start local 4 // int y
start local 5 // int width
start local 6 // int height
start local 7 // java.awt.Color bgColor
start local 8 // java.awt.image.ImageObserver observer
0: .line 1076
aload 2 /* img */
instanceof sun.awt.image.ToolkitImage
ifne 2
1: .line 1077
aload 0 /* this */
aload 1 /* sg */
aload 2 /* img */
iload 3 /* x */
iload 4 /* y */
iload 5 /* width */
iload 6 /* height */
aload 7 /* bgColor */
invokevirtual sun.java2d.pipe.DrawImage.scaleImage:(Lsun/java2d/SunGraphics2D;Ljava/awt/Image;IIIILjava/awt/Color;)Z
ireturn
2: .line 1079
StackMap locals:
StackMap stack:
aload 2 /* img */
checkcast sun.awt.image.ToolkitImage
astore 9 /* sunimg */
start local 9 // sun.awt.image.ToolkitImage sunimg
3: .line 1080
aload 9 /* sunimg */
aload 8 /* observer */
invokestatic sun.java2d.pipe.DrawImage.imageReady:(Lsun/awt/image/ToolkitImage;Ljava/awt/image/ImageObserver;)Z
ifne 5
4: .line 1081
iconst_0
ireturn
5: .line 1083
StackMap locals: sun.awt.image.ToolkitImage
StackMap stack:
aload 9 /* sunimg */
invokevirtual sun.awt.image.ToolkitImage.getImageRep:()Lsun/awt/image/ImageRepresentation;
astore 10 /* ir */
start local 10 // sun.awt.image.ImageRepresentation ir
6: .line 1084
aload 10 /* ir */
aload 1 /* sg */
aload 9 /* sunimg */
iload 3 /* x */
iload 4 /* y */
iload 5 /* width */
iload 6 /* height */
aload 7 /* bgColor */
7: .line 1085
aload 8 /* observer */
8: .line 1084
invokevirtual sun.awt.image.ImageRepresentation.drawToBufImage:(Ljava/awt/Graphics;Lsun/awt/image/ToolkitImage;IIIILjava/awt/Color;Ljava/awt/image/ImageObserver;)Z
ireturn
end local 10 // sun.awt.image.ImageRepresentation ir
end local 9 // sun.awt.image.ToolkitImage sunimg
end local 8 // java.awt.image.ImageObserver observer
end local 7 // java.awt.Color bgColor
end local 6 // int height
end local 5 // int width
end local 4 // int y
end local 3 // int x
end local 2 // java.awt.Image img
end local 1 // sun.java2d.SunGraphics2D sg
end local 0 // sun.java2d.pipe.DrawImage this
LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lsun/java2d/pipe/DrawImage;
0 9 1 sg Lsun/java2d/SunGraphics2D;
0 9 2 img Ljava/awt/Image;
0 9 3 x I
0 9 4 y I
0 9 5 width I
0 9 6 height I
0 9 7 bgColor Ljava/awt/Color;
0 9 8 observer Ljava/awt/image/ImageObserver;
3 9 9 sunimg Lsun/awt/image/ToolkitImage;
6 9 10 ir Lsun/awt/image/ImageRepresentation;
MethodParameters:
Name Flags
sg
img
x
y
width
height
bgColor
observer
public boolean scaleImage(sun.java2d.SunGraphics2D, java.awt.Image, int, int, int, int, int, int, int, int, java.awt.Color, java.awt.image.ImageObserver);
descriptor: (Lsun/java2d/SunGraphics2D;Ljava/awt/Image;IIIIIIIILjava/awt/Color;Ljava/awt/image/ImageObserver;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=13, locals=15, args_size=13
start local 0 // sun.java2d.pipe.DrawImage this
start local 1 // sun.java2d.SunGraphics2D sg
start local 2 // java.awt.Image img
start local 3 // int dx1
start local 4 // int dy1
start local 5 // int dx2
start local 6 // int dy2
start local 7 // int sx1
start local 8 // int sy1
start local 9 // int sx2
start local 10 // int sy2
start local 11 // java.awt.Color bgColor
start local 12 // java.awt.image.ImageObserver observer
0: .line 1094
aload 2 /* img */
instanceof sun.awt.image.ToolkitImage
ifne 4
1: .line 1095
aload 0 /* this */
aload 1 /* sg */
aload 2 /* img */
iload 3 /* dx1 */
iload 4 /* dy1 */
iload 5 /* dx2 */
iload 6 /* dy2 */
2: .line 1096
iload 7 /* sx1 */
iload 8 /* sy1 */
iload 9 /* sx2 */
iload 10 /* sy2 */
aload 11 /* bgColor */
3: .line 1095
invokevirtual sun.java2d.pipe.DrawImage.scaleImage:(Lsun/java2d/SunGraphics2D;Ljava/awt/Image;IIIIIIIILjava/awt/Color;)Z
ireturn
4: .line 1098
StackMap locals:
StackMap stack:
aload 2 /* img */
checkcast sun.awt.image.ToolkitImage
astore 13 /* sunimg */
start local 13 // sun.awt.image.ToolkitImage sunimg
5: .line 1099
aload 13 /* sunimg */
aload 12 /* observer */
invokestatic sun.java2d.pipe.DrawImage.imageReady:(Lsun/awt/image/ToolkitImage;Ljava/awt/image/ImageObserver;)Z
ifne 7
6: .line 1100
iconst_0
ireturn
7: .line 1102
StackMap locals: sun.awt.image.ToolkitImage
StackMap stack:
aload 13 /* sunimg */
invokevirtual sun.awt.image.ToolkitImage.getImageRep:()Lsun/awt/image/ImageRepresentation;
astore 14 /* ir */
start local 14 // sun.awt.image.ImageRepresentation ir
8: .line 1103
aload 14 /* ir */
aload 1 /* sg */
aload 13 /* sunimg */
iload 3 /* dx1 */
iload 4 /* dy1 */
iload 5 /* dx2 */
iload 6 /* dy2 */
9: .line 1104
iload 7 /* sx1 */
iload 8 /* sy1 */
iload 9 /* sx2 */
iload 10 /* sy2 */
aload 11 /* bgColor */
aload 12 /* observer */
10: .line 1103
invokevirtual sun.awt.image.ImageRepresentation.drawToBufImage:(Ljava/awt/Graphics;Lsun/awt/image/ToolkitImage;IIIIIIIILjava/awt/Color;Ljava/awt/image/ImageObserver;)Z
ireturn
end local 14 // sun.awt.image.ImageRepresentation ir
end local 13 // sun.awt.image.ToolkitImage sunimg
end local 12 // java.awt.image.ImageObserver observer
end local 11 // java.awt.Color bgColor
end local 10 // int sy2
end local 9 // int sx2
end local 8 // int sy1
end local 7 // int sx1
end local 6 // int dy2
end local 5 // int dx2
end local 4 // int dy1
end local 3 // int dx1
end local 2 // java.awt.Image img
end local 1 // sun.java2d.SunGraphics2D sg
end local 0 // sun.java2d.pipe.DrawImage this
LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lsun/java2d/pipe/DrawImage;
0 11 1 sg Lsun/java2d/SunGraphics2D;
0 11 2 img Ljava/awt/Image;
0 11 3 dx1 I
0 11 4 dy1 I
0 11 5 dx2 I
0 11 6 dy2 I
0 11 7 sx1 I
0 11 8 sy1 I
0 11 9 sx2 I
0 11 10 sy2 I
0 11 11 bgColor Ljava/awt/Color;
0 11 12 observer Ljava/awt/image/ImageObserver;
5 11 13 sunimg Lsun/awt/image/ToolkitImage;
8 11 14 ir Lsun/awt/image/ImageRepresentation;
MethodParameters:
Name Flags
sg
img
dx1
dy1
dx2
dy2
sx1
sy1
sx2
sy2
bgColor
observer
public boolean transformImage(sun.java2d.SunGraphics2D, java.awt.Image, java.awt.geom.AffineTransform, java.awt.image.ImageObserver);
descriptor: (Lsun/java2d/SunGraphics2D;Ljava/awt/Image;Ljava/awt/geom/AffineTransform;Ljava/awt/image/ImageObserver;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=7, args_size=5
start local 0 // sun.java2d.pipe.DrawImage this
start local 1 // sun.java2d.SunGraphics2D sg
start local 2 // java.awt.Image img
start local 3 // java.awt.geom.AffineTransform atfm
start local 4 // java.awt.image.ImageObserver observer
0: .line 1111
aload 2 /* img */
instanceof sun.awt.image.ToolkitImage
ifne 3
1: .line 1112
aload 0 /* this */
aload 1 /* sg */
aload 2 /* img */
iconst_0
iconst_0
aload 3 /* atfm */
aload 1 /* sg */
getfield sun.java2d.SunGraphics2D.interpolationType:I
invokevirtual sun.java2d.pipe.DrawImage.transformImage:(Lsun/java2d/SunGraphics2D;Ljava/awt/Image;IILjava/awt/geom/AffineTransform;I)V
2: .line 1113
iconst_1
ireturn
3: .line 1115
StackMap locals:
StackMap stack:
aload 2 /* img */
checkcast sun.awt.image.ToolkitImage
astore 5 /* sunimg */
start local 5 // sun.awt.image.ToolkitImage sunimg
4: .line 1116
aload 5 /* sunimg */
aload 4 /* observer */
invokestatic sun.java2d.pipe.DrawImage.imageReady:(Lsun/awt/image/ToolkitImage;Ljava/awt/image/ImageObserver;)Z
ifne 6
5: .line 1117
iconst_0
ireturn
6: .line 1119
StackMap locals: sun.awt.image.ToolkitImage
StackMap stack:
aload 5 /* sunimg */
invokevirtual sun.awt.image.ToolkitImage.getImageRep:()Lsun/awt/image/ImageRepresentation;
astore 6 /* ir */
start local 6 // sun.awt.image.ImageRepresentation ir
7: .line 1120
aload 6 /* ir */
aload 1 /* sg */
aload 5 /* sunimg */
aload 3 /* atfm */
aload 4 /* observer */
invokevirtual sun.awt.image.ImageRepresentation.drawToBufImage:(Ljava/awt/Graphics;Lsun/awt/image/ToolkitImage;Ljava/awt/geom/AffineTransform;Ljava/awt/image/ImageObserver;)Z
ireturn
end local 6 // sun.awt.image.ImageRepresentation ir
end local 5 // sun.awt.image.ToolkitImage sunimg
end local 4 // java.awt.image.ImageObserver observer
end local 3 // java.awt.geom.AffineTransform atfm
end local 2 // java.awt.Image img
end local 1 // sun.java2d.SunGraphics2D sg
end local 0 // sun.java2d.pipe.DrawImage this
LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lsun/java2d/pipe/DrawImage;
0 8 1 sg Lsun/java2d/SunGraphics2D;
0 8 2 img Ljava/awt/Image;
0 8 3 atfm Ljava/awt/geom/AffineTransform;
0 8 4 observer Ljava/awt/image/ImageObserver;
4 8 5 sunimg Lsun/awt/image/ToolkitImage;
7 8 6 ir Lsun/awt/image/ImageRepresentation;
MethodParameters:
Name Flags
sg
img
atfm
observer
public void transformImage(sun.java2d.SunGraphics2D, java.awt.image.BufferedImage, java.awt.image.BufferedImageOp, int, int);
descriptor: (Lsun/java2d/SunGraphics2D;Ljava/awt/image/BufferedImage;Ljava/awt/image/BufferedImageOp;II)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=7, args_size=6
start local 0 // sun.java2d.pipe.DrawImage this
start local 1 // sun.java2d.SunGraphics2D sg
start local 2 // java.awt.image.BufferedImage img
start local 3 // java.awt.image.BufferedImageOp op
start local 4 // int x
start local 5 // int y
0: .line 1127
aload 3 /* op */
ifnull 9
1: .line 1128
aload 3 /* op */
instanceof java.awt.image.AffineTransformOp
ifeq 8
2: .line 1129
aload 3 /* op */
checkcast java.awt.image.AffineTransformOp
astore 6 /* atop */
start local 6 // java.awt.image.AffineTransformOp atop
3: .line 1130
aload 0 /* this */
aload 1 /* sg */
aload 2 /* img */
iload 4 /* x */
iload 5 /* y */
4: .line 1131
aload 6 /* atop */
invokevirtual java.awt.image.AffineTransformOp.getTransform:()Ljava/awt/geom/AffineTransform;
5: .line 1132
aload 6 /* atop */
invokevirtual java.awt.image.AffineTransformOp.getInterpolationType:()I
6: .line 1130
invokevirtual sun.java2d.pipe.DrawImage.transformImage:(Lsun/java2d/SunGraphics2D;Ljava/awt/Image;IILjava/awt/geom/AffineTransform;I)V
7: .line 1133
return
end local 6 // java.awt.image.AffineTransformOp atop
8: .line 1135
StackMap locals:
StackMap stack:
aload 3 /* op */
aload 2 /* img */
aconst_null
invokeinterface java.awt.image.BufferedImageOp.filter:(Ljava/awt/image/BufferedImage;Ljava/awt/image/BufferedImage;)Ljava/awt/image/BufferedImage;
astore 2 /* img */
9: .line 1138
StackMap locals:
StackMap stack:
aload 0 /* this */
aload 1 /* sg */
aload 2 /* img */
iload 4 /* x */
iload 5 /* y */
aconst_null
invokevirtual sun.java2d.pipe.DrawImage.copyImage:(Lsun/java2d/SunGraphics2D;Ljava/awt/Image;IILjava/awt/Color;)Z
pop
10: .line 1139
return
end local 5 // int y
end local 4 // int x
end local 3 // java.awt.image.BufferedImageOp op
end local 2 // java.awt.image.BufferedImage img
end local 1 // sun.java2d.SunGraphics2D sg
end local 0 // sun.java2d.pipe.DrawImage this
LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lsun/java2d/pipe/DrawImage;
0 11 1 sg Lsun/java2d/SunGraphics2D;
0 11 2 img Ljava/awt/image/BufferedImage;
0 11 3 op Ljava/awt/image/BufferedImageOp;
0 11 4 x I
0 11 5 y I
3 8 6 atop Ljava/awt/image/AffineTransformOp;
MethodParameters:
Name Flags
sg
img
op
x
y
}
SourceFile: "DrawImage.java"