public class java.awt.geom.Path2D$Double extends java.awt.geom.Path2D implements java.io.Serializable
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: java.awt.geom.Path2D$Double
super_class: java.awt.geom.Path2D
{
transient double[] doubleCoords;
descriptor: [D
flags: (0x0080) ACC_TRANSIENT
private static final long serialVersionUID;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1826762518450014216
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: .line 1058
ldc Ljava/awt/geom/Path2D;
invokevirtual java.lang.Class.desiredAssertionStatus:()Z
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic java.awt.geom.Path2D$Double.$assertionsDisabled:Z
3: .line 1600
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 // java.awt.geom.Path2D$Double this
0: .line 1068
aload 0 /* this */
iconst_1
bipush 20
invokespecial java.awt.geom.Path2D$Double.<init>:(II)V
1: .line 1069
return
end local 0 // java.awt.geom.Path2D$Double this
LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljava/awt/geom/Path2D$Double;
public void <init>(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 // java.awt.geom.Path2D$Double this
start local 1 // int rule
0: .line 1082
aload 0 /* this */
iload 1 /* rule */
bipush 20
invokespecial java.awt.geom.Path2D$Double.<init>:(II)V
1: .line 1083
return
end local 1 // int rule
end local 0 // java.awt.geom.Path2D$Double this
LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljava/awt/geom/Path2D$Double;
0 2 1 rule I
MethodParameters:
Name Flags
rule
public void <init>(int, int);
descriptor: (II)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 // java.awt.geom.Path2D$Double this
start local 1 // int rule
start local 2 // int initialCapacity
0: .line 1101
aload 0 /* this */
iload 1 /* rule */
iload 2 /* initialCapacity */
invokespecial java.awt.geom.Path2D.<init>:(II)V
1: .line 1102
aload 0 /* this */
iload 2 /* initialCapacity */
iconst_2
imul
newarray 7
putfield java.awt.geom.Path2D$Double.doubleCoords:[D
2: .line 1103
return
end local 2 // int initialCapacity
end local 1 // int rule
end local 0 // java.awt.geom.Path2D$Double this
LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljava/awt/geom/Path2D$Double;
0 3 1 rule I
0 3 2 initialCapacity I
MethodParameters:
Name Flags
rule
initialCapacity
public void <init>(java.awt.Shape);
descriptor: (Ljava/awt/Shape;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 // java.awt.geom.Path2D$Double this
start local 1 // java.awt.Shape s
0: .line 1115
aload 0 /* this */
aload 1 /* s */
aconst_null
invokespecial java.awt.geom.Path2D$Double.<init>:(Ljava/awt/Shape;Ljava/awt/geom/AffineTransform;)V
1: .line 1116
return
end local 1 // java.awt.Shape s
end local 0 // java.awt.geom.Path2D$Double this
LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljava/awt/geom/Path2D$Double;
0 2 1 s Ljava/awt/Shape;
MethodParameters:
Name Flags
s
public void <init>(java.awt.Shape, java.awt.geom.AffineTransform);
descriptor: (Ljava/awt/Shape;Ljava/awt/geom/AffineTransform;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=3
start local 0 // java.awt.geom.Path2D$Double this
start local 1 // java.awt.Shape s
start local 2 // java.awt.geom.AffineTransform at
0: .line 1130
aload 0 /* this */
invokespecial java.awt.geom.Path2D.<init>:()V
1: .line 1131
aload 1 /* s */
instanceof java.awt.geom.Path2D
ifeq 9
2: .line 1132
aload 1 /* s */
checkcast java.awt.geom.Path2D
astore 3 /* p2d */
start local 3 // java.awt.geom.Path2D p2d
3: .line 1133
aload 0 /* this */
aload 3 /* p2d */
getfield java.awt.geom.Path2D.windingRule:I
invokevirtual java.awt.geom.Path2D$Double.setWindingRule:(I)V
4: .line 1134
aload 0 /* this */
aload 3 /* p2d */
getfield java.awt.geom.Path2D.numTypes:I
putfield java.awt.geom.Path2D$Double.numTypes:I
5: .line 1136
aload 0 /* this */
aload 3 /* p2d */
getfield java.awt.geom.Path2D.pointTypes:[B
aload 3 /* p2d */
getfield java.awt.geom.Path2D.numTypes:I
invokestatic java.util.Arrays.copyOf:([BI)[B
putfield java.awt.geom.Path2D$Double.pointTypes:[B
6: .line 1137
aload 0 /* this */
aload 3 /* p2d */
getfield java.awt.geom.Path2D.numCoords:I
putfield java.awt.geom.Path2D$Double.numCoords:I
7: .line 1138
aload 0 /* this */
aload 3 /* p2d */
aload 2 /* at */
invokevirtual java.awt.geom.Path2D.cloneCoordsDouble:(Ljava/awt/geom/AffineTransform;)[D
putfield java.awt.geom.Path2D$Double.doubleCoords:[D
end local 3 // java.awt.geom.Path2D p2d
8: .line 1139
goto 14
9: .line 1140
StackMap locals: java.awt.geom.Path2D$Double java.awt.Shape java.awt.geom.AffineTransform
StackMap stack:
aload 1 /* s */
aload 2 /* at */
invokeinterface java.awt.Shape.getPathIterator:(Ljava/awt/geom/AffineTransform;)Ljava/awt/geom/PathIterator;
astore 3 /* pi */
start local 3 // java.awt.geom.PathIterator pi
10: .line 1141
aload 0 /* this */
aload 3 /* pi */
invokeinterface java.awt.geom.PathIterator.getWindingRule:()I
invokevirtual java.awt.geom.Path2D$Double.setWindingRule:(I)V
11: .line 1142
aload 0 /* this */
bipush 20
newarray 8
putfield java.awt.geom.Path2D$Double.pointTypes:[B
12: .line 1143
aload 0 /* this */
bipush 40
newarray 7
putfield java.awt.geom.Path2D$Double.doubleCoords:[D
13: .line 1144
aload 0 /* this */
aload 3 /* pi */
iconst_0
invokevirtual java.awt.geom.Path2D$Double.append:(Ljava/awt/geom/PathIterator;Z)V
end local 3 // java.awt.geom.PathIterator pi
14: .line 1146
StackMap locals:
StackMap stack:
return
end local 2 // java.awt.geom.AffineTransform at
end local 1 // java.awt.Shape s
end local 0 // java.awt.geom.Path2D$Double this
LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Ljava/awt/geom/Path2D$Double;
0 15 1 s Ljava/awt/Shape;
0 15 2 at Ljava/awt/geom/AffineTransform;
3 8 3 p2d Ljava/awt/geom/Path2D;
10 14 3 pi Ljava/awt/geom/PathIterator;
MethodParameters:
Name Flags
s
at
float[] cloneCoordsFloat(java.awt.geom.AffineTransform);
descriptor: (Ljava/awt/geom/AffineTransform;)[F
flags: (0x0000)
Code:
stack=7, locals=4, args_size=2
start local 0 // java.awt.geom.Path2D$Double this
start local 1 // java.awt.geom.AffineTransform at
0: .line 1151
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.numCoords:I
newarray 6
astore 2 /* ret */
start local 2 // float[] ret
1: .line 1152
aload 1 /* at */
ifnonnull 8
2: .line 1153
iconst_0
istore 3 /* i */
start local 3 // int i
3: goto 6
4: .line 1154
StackMap locals: float[] int
StackMap stack:
aload 2 /* ret */
iload 3 /* i */
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.doubleCoords:[D
iload 3 /* i */
daload
d2f
fastore
5: .line 1153
iinc 3 /* i */ 1
StackMap locals:
StackMap stack:
6: iload 3 /* i */
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.numCoords:I
if_icmplt 4
end local 3 // int i
7: .line 1156
goto 9
8: .line 1157
StackMap locals:
StackMap stack:
aload 1 /* at */
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.doubleCoords:[D
iconst_0
aload 2 /* ret */
iconst_0
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.numCoords:I
iconst_2
idiv
invokevirtual java.awt.geom.AffineTransform.transform:([DI[FII)V
9: .line 1159
StackMap locals:
StackMap stack:
aload 2 /* ret */
areturn
end local 2 // float[] ret
end local 1 // java.awt.geom.AffineTransform at
end local 0 // java.awt.geom.Path2D$Double this
LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Ljava/awt/geom/Path2D$Double;
0 10 1 at Ljava/awt/geom/AffineTransform;
1 10 2 ret [F
3 7 3 i I
MethodParameters:
Name Flags
at
double[] cloneCoordsDouble(java.awt.geom.AffineTransform);
descriptor: (Ljava/awt/geom/AffineTransform;)[D
flags: (0x0000)
Code:
stack=7, locals=3, args_size=2
start local 0 // java.awt.geom.Path2D$Double this
start local 1 // java.awt.geom.AffineTransform at
0: .line 1166
aload 1 /* at */
ifnonnull 3
1: .line 1167
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.doubleCoords:[D
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.numCoords:I
invokestatic java.util.Arrays.copyOf:([DI)[D
astore 2 /* ret */
start local 2 // double[] ret
2: .line 1168
goto 5
end local 2 // double[] ret
3: .line 1169
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.numCoords:I
newarray 7
astore 2 /* ret */
start local 2 // double[] ret
4: .line 1170
aload 1 /* at */
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.doubleCoords:[D
iconst_0
aload 2 /* ret */
iconst_0
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.numCoords:I
iconst_2
idiv
invokevirtual java.awt.geom.AffineTransform.transform:([DI[DII)V
5: .line 1172
StackMap locals: double[]
StackMap stack:
aload 2 /* ret */
areturn
end local 2 // double[] ret
end local 1 // java.awt.geom.AffineTransform at
end local 0 // java.awt.geom.Path2D$Double this
LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Ljava/awt/geom/Path2D$Double;
0 6 1 at Ljava/awt/geom/AffineTransform;
2 3 2 ret [D
4 6 2 ret [D
MethodParameters:
Name Flags
at
void append(float, float);
descriptor: (FF)V
flags: (0x0000)
Code:
stack=5, locals=3, args_size=3
start local 0 // java.awt.geom.Path2D$Double this
start local 1 // float x
start local 2 // float y
0: .line 1176
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.doubleCoords:[D
aload 0 /* this */
dup
getfield java.awt.geom.Path2D$Double.numCoords:I
dup_x1
iconst_1
iadd
putfield java.awt.geom.Path2D$Double.numCoords:I
fload 1 /* x */
f2d
dastore
1: .line 1177
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.doubleCoords:[D
aload 0 /* this */
dup
getfield java.awt.geom.Path2D$Double.numCoords:I
dup_x1
iconst_1
iadd
putfield java.awt.geom.Path2D$Double.numCoords:I
fload 2 /* y */
f2d
dastore
2: .line 1178
return
end local 2 // float y
end local 1 // float x
end local 0 // java.awt.geom.Path2D$Double this
LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljava/awt/geom/Path2D$Double;
0 3 1 x F
0 3 2 y F
MethodParameters:
Name Flags
x
y
void append(double, double);
descriptor: (DD)V
flags: (0x0000)
Code:
stack=5, locals=5, args_size=3
start local 0 // java.awt.geom.Path2D$Double this
start local 1 // double x
start local 3 // double y
0: .line 1181
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.doubleCoords:[D
aload 0 /* this */
dup
getfield java.awt.geom.Path2D$Double.numCoords:I
dup_x1
iconst_1
iadd
putfield java.awt.geom.Path2D$Double.numCoords:I
dload 1 /* x */
dastore
1: .line 1182
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.doubleCoords:[D
aload 0 /* this */
dup
getfield java.awt.geom.Path2D$Double.numCoords:I
dup_x1
iconst_1
iadd
putfield java.awt.geom.Path2D$Double.numCoords:I
dload 3 /* y */
dastore
2: .line 1183
return
end local 3 // double y
end local 1 // double x
end local 0 // java.awt.geom.Path2D$Double this
LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljava/awt/geom/Path2D$Double;
0 3 1 x D
0 3 3 y D
MethodParameters:
Name Flags
x
y
java.awt.geom.Point2D getPoint(int);
descriptor: (I)Ljava/awt/geom/Point2D;
flags: (0x0000)
Code:
stack=7, locals=2, args_size=2
start local 0 // java.awt.geom.Path2D$Double this
start local 1 // int coordindex
0: .line 1186
new java.awt.geom.Point2D$Double
dup
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.doubleCoords:[D
iload 1 /* coordindex */
daload
1: .line 1187
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.doubleCoords:[D
iload 1 /* coordindex */
iconst_1
iadd
daload
2: .line 1186
invokespecial java.awt.geom.Point2D$Double.<init>:(DD)V
areturn
end local 1 // int coordindex
end local 0 // java.awt.geom.Path2D$Double this
LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljava/awt/geom/Path2D$Double;
0 3 1 coordindex I
MethodParameters:
Name Flags
coordindex
void needRoom(boolean, int);
descriptor: (ZI)V
flags: (0x0000)
Code:
stack=3, locals=3, args_size=3
start local 0 // java.awt.geom.Path2D$Double this
start local 1 // boolean needMove
start local 2 // int newCoords
0: .line 1192
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.numTypes:I
ifne 2
iload 1 /* needMove */
ifeq 2
1: .line 1193
new java.awt.geom.IllegalPathStateException
dup
ldc "missing initial moveto in path definition"
invokespecial java.awt.geom.IllegalPathStateException.<init>:(Ljava/lang/String;)V
athrow
2: .line 1196
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.numTypes:I
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.pointTypes:[B
arraylength
if_icmplt 4
3: .line 1197
aload 0 /* this */
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.pointTypes:[B
iconst_1
invokestatic java.awt.geom.Path2D$Double.expandPointTypes:([BI)[B
putfield java.awt.geom.Path2D$Double.pointTypes:[B
4: .line 1199
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.numCoords:I
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.doubleCoords:[D
arraylength
iload 2 /* newCoords */
isub
if_icmple 6
5: .line 1200
aload 0 /* this */
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.doubleCoords:[D
iload 2 /* newCoords */
invokestatic java.awt.geom.Path2D$Double.expandCoords:([DI)[D
putfield java.awt.geom.Path2D$Double.doubleCoords:[D
6: .line 1202
StackMap locals:
StackMap stack:
return
end local 2 // int newCoords
end local 1 // boolean needMove
end local 0 // java.awt.geom.Path2D$Double this
LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Ljava/awt/geom/Path2D$Double;
0 7 1 needMove Z
0 7 2 newCoords I
MethodParameters:
Name Flags
needMove
newCoords
static double[] expandCoords(double[], int);
descriptor: ([DI)[D
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=7, args_size=2
start local 0 // double[] oldCoords
start local 1 // int needed
0: .line 1205
aload 0 /* oldCoords */
arraylength
istore 2 /* oldSize */
start local 2 // int oldSize
1: .line 1206
iload 2 /* oldSize */
iload 1 /* needed */
iadd
istore 3 /* newSizeMin */
start local 3 // int newSizeMin
2: .line 1207
iload 3 /* newSizeMin */
iload 2 /* oldSize */
if_icmpge 6
3: .line 1210
new java.lang.ArrayIndexOutOfBoundsException
dup
4: .line 1211
ldc "coords exceeds maximum capacity !"
5: .line 1210
invokespecial java.lang.ArrayIndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
athrow
6: .line 1214
StackMap locals: int int
StackMap stack:
iload 2 /* oldSize */
istore 4 /* grow */
start local 4 // int grow
7: .line 1215
iload 4 /* grow */
sipush 1000
if_icmple 10
8: .line 1216
sipush 1000
iload 2 /* oldSize */
iconst_3
ishr
invokestatic java.lang.Math.max:(II)I
istore 4 /* grow */
9: .line 1217
goto 12
StackMap locals: int
StackMap stack:
10: iload 4 /* grow */
bipush 10
if_icmpge 12
11: .line 1218
bipush 10
istore 4 /* grow */
12: .line 1220
StackMap locals:
StackMap stack:
getstatic java.awt.geom.Path2D$Double.$assertionsDisabled:Z
ifne 13
iload 4 /* grow */
iload 1 /* needed */
if_icmpgt 13
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
13: .line 1222
StackMap locals:
StackMap stack:
iload 2 /* oldSize */
iload 4 /* grow */
iadd
istore 5 /* newSize */
start local 5 // int newSize
14: .line 1223
iload 5 /* newSize */
iload 3 /* newSizeMin */
if_icmpge 16
15: .line 1225
ldc 2147483647
istore 5 /* newSize */
16: .line 1230
StackMap locals: int
StackMap stack:
aload 0 /* oldCoords */
iload 5 /* newSize */
invokestatic java.util.Arrays.copyOf:([DI)[D
17: areturn
18: .line 1231
StackMap locals:
StackMap stack: java.lang.OutOfMemoryError
astore 6 /* oome */
start local 6 // java.lang.OutOfMemoryError oome
19: .line 1232
iload 5 /* newSize */
iload 3 /* newSizeMin */
if_icmpne 21
20: .line 1233
aload 6 /* oome */
athrow
end local 6 // java.lang.OutOfMemoryError oome
21: .line 1236
StackMap locals:
StackMap stack:
iload 3 /* newSizeMin */
iload 5 /* newSize */
iload 3 /* newSizeMin */
isub
iconst_2
idiv
iadd
istore 5 /* newSize */
22: .line 1227
goto 16
end local 5 // int newSize
end local 4 // int grow
end local 3 // int newSizeMin
end local 2 // int oldSize
end local 1 // int needed
end local 0 // double[] oldCoords
LocalVariableTable:
Start End Slot Name Signature
0 23 0 oldCoords [D
0 23 1 needed I
1 23 2 oldSize I
2 23 3 newSizeMin I
7 23 4 grow I
14 23 5 newSize I
19 21 6 oome Ljava/lang/OutOfMemoryError;
Exception table:
from to target type
16 17 18 Class java.lang.OutOfMemoryError
MethodParameters:
Name Flags
oldCoords
needed
public final synchronized void moveTo(double, double);
descriptor: (DD)V
flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SYNCHRONIZED
Code:
stack=5, locals=5, args_size=3
start local 0 // java.awt.geom.Path2D$Double this
start local 1 // double x
start local 3 // double y
0: .line 1245
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.numTypes:I
ifle 4
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.pointTypes:[B
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.numTypes:I
iconst_1
isub
baload
ifne 4
1: .line 1246
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.doubleCoords:[D
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.numCoords:I
iconst_2
isub
dload 1 /* x */
dastore
2: .line 1247
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.doubleCoords:[D
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.numCoords:I
iconst_1
isub
dload 3 /* y */
dastore
3: .line 1248
goto 8
4: .line 1249
StackMap locals:
StackMap stack:
aload 0 /* this */
iconst_0
iconst_2
invokevirtual java.awt.geom.Path2D$Double.needRoom:(ZI)V
5: .line 1250
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.pointTypes:[B
aload 0 /* this */
dup
getfield java.awt.geom.Path2D$Double.numTypes:I
dup_x1
iconst_1
iadd
putfield java.awt.geom.Path2D$Double.numTypes:I
iconst_0
bastore
6: .line 1251
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.doubleCoords:[D
aload 0 /* this */
dup
getfield java.awt.geom.Path2D$Double.numCoords:I
dup_x1
iconst_1
iadd
putfield java.awt.geom.Path2D$Double.numCoords:I
dload 1 /* x */
dastore
7: .line 1252
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.doubleCoords:[D
aload 0 /* this */
dup
getfield java.awt.geom.Path2D$Double.numCoords:I
dup_x1
iconst_1
iadd
putfield java.awt.geom.Path2D$Double.numCoords:I
dload 3 /* y */
dastore
8: .line 1254
StackMap locals:
StackMap stack:
return
end local 3 // double y
end local 1 // double x
end local 0 // java.awt.geom.Path2D$Double this
LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Ljava/awt/geom/Path2D$Double;
0 9 1 x D
0 9 3 y D
MethodParameters:
Name Flags
x
y
public final synchronized void lineTo(double, double);
descriptor: (DD)V
flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SYNCHRONIZED
Code:
stack=5, locals=5, args_size=3
start local 0 // java.awt.geom.Path2D$Double this
start local 1 // double x
start local 3 // double y
0: .line 1261
aload 0 /* this */
iconst_1
iconst_2
invokevirtual java.awt.geom.Path2D$Double.needRoom:(ZI)V
1: .line 1262
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.pointTypes:[B
aload 0 /* this */
dup
getfield java.awt.geom.Path2D$Double.numTypes:I
dup_x1
iconst_1
iadd
putfield java.awt.geom.Path2D$Double.numTypes:I
iconst_1
bastore
2: .line 1263
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.doubleCoords:[D
aload 0 /* this */
dup
getfield java.awt.geom.Path2D$Double.numCoords:I
dup_x1
iconst_1
iadd
putfield java.awt.geom.Path2D$Double.numCoords:I
dload 1 /* x */
dastore
3: .line 1264
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.doubleCoords:[D
aload 0 /* this */
dup
getfield java.awt.geom.Path2D$Double.numCoords:I
dup_x1
iconst_1
iadd
putfield java.awt.geom.Path2D$Double.numCoords:I
dload 3 /* y */
dastore
4: .line 1265
return
end local 3 // double y
end local 1 // double x
end local 0 // java.awt.geom.Path2D$Double this
LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljava/awt/geom/Path2D$Double;
0 5 1 x D
0 5 3 y D
MethodParameters:
Name Flags
x
y
public final synchronized void quadTo(double, double, double, double);
descriptor: (DDDD)V
flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SYNCHRONIZED
Code:
stack=5, locals=9, args_size=5
start local 0 // java.awt.geom.Path2D$Double this
start local 1 // double x1
start local 3 // double y1
start local 5 // double x2
start local 7 // double y2
0: .line 1274
aload 0 /* this */
iconst_1
iconst_4
invokevirtual java.awt.geom.Path2D$Double.needRoom:(ZI)V
1: .line 1275
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.pointTypes:[B
aload 0 /* this */
dup
getfield java.awt.geom.Path2D$Double.numTypes:I
dup_x1
iconst_1
iadd
putfield java.awt.geom.Path2D$Double.numTypes:I
iconst_2
bastore
2: .line 1276
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.doubleCoords:[D
aload 0 /* this */
dup
getfield java.awt.geom.Path2D$Double.numCoords:I
dup_x1
iconst_1
iadd
putfield java.awt.geom.Path2D$Double.numCoords:I
dload 1 /* x1 */
dastore
3: .line 1277
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.doubleCoords:[D
aload 0 /* this */
dup
getfield java.awt.geom.Path2D$Double.numCoords:I
dup_x1
iconst_1
iadd
putfield java.awt.geom.Path2D$Double.numCoords:I
dload 3 /* y1 */
dastore
4: .line 1278
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.doubleCoords:[D
aload 0 /* this */
dup
getfield java.awt.geom.Path2D$Double.numCoords:I
dup_x1
iconst_1
iadd
putfield java.awt.geom.Path2D$Double.numCoords:I
dload 5 /* x2 */
dastore
5: .line 1279
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.doubleCoords:[D
aload 0 /* this */
dup
getfield java.awt.geom.Path2D$Double.numCoords:I
dup_x1
iconst_1
iadd
putfield java.awt.geom.Path2D$Double.numCoords:I
dload 7 /* y2 */
dastore
6: .line 1280
return
end local 7 // double y2
end local 5 // double x2
end local 3 // double y1
end local 1 // double x1
end local 0 // java.awt.geom.Path2D$Double this
LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Ljava/awt/geom/Path2D$Double;
0 7 1 x1 D
0 7 3 y1 D
0 7 5 x2 D
0 7 7 y2 D
MethodParameters:
Name Flags
x1
y1
x2
y2
public final synchronized void curveTo(double, double, double, double, double, double);
descriptor: (DDDDDD)V
flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SYNCHRONIZED
Code:
stack=5, locals=13, args_size=7
start local 0 // java.awt.geom.Path2D$Double this
start local 1 // double x1
start local 3 // double y1
start local 5 // double x2
start local 7 // double y2
start local 9 // double x3
start local 11 // double y3
0: .line 1290
aload 0 /* this */
iconst_1
bipush 6
invokevirtual java.awt.geom.Path2D$Double.needRoom:(ZI)V
1: .line 1291
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.pointTypes:[B
aload 0 /* this */
dup
getfield java.awt.geom.Path2D$Double.numTypes:I
dup_x1
iconst_1
iadd
putfield java.awt.geom.Path2D$Double.numTypes:I
iconst_3
bastore
2: .line 1292
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.doubleCoords:[D
aload 0 /* this */
dup
getfield java.awt.geom.Path2D$Double.numCoords:I
dup_x1
iconst_1
iadd
putfield java.awt.geom.Path2D$Double.numCoords:I
dload 1 /* x1 */
dastore
3: .line 1293
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.doubleCoords:[D
aload 0 /* this */
dup
getfield java.awt.geom.Path2D$Double.numCoords:I
dup_x1
iconst_1
iadd
putfield java.awt.geom.Path2D$Double.numCoords:I
dload 3 /* y1 */
dastore
4: .line 1294
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.doubleCoords:[D
aload 0 /* this */
dup
getfield java.awt.geom.Path2D$Double.numCoords:I
dup_x1
iconst_1
iadd
putfield java.awt.geom.Path2D$Double.numCoords:I
dload 5 /* x2 */
dastore
5: .line 1295
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.doubleCoords:[D
aload 0 /* this */
dup
getfield java.awt.geom.Path2D$Double.numCoords:I
dup_x1
iconst_1
iadd
putfield java.awt.geom.Path2D$Double.numCoords:I
dload 7 /* y2 */
dastore
6: .line 1296
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.doubleCoords:[D
aload 0 /* this */
dup
getfield java.awt.geom.Path2D$Double.numCoords:I
dup_x1
iconst_1
iadd
putfield java.awt.geom.Path2D$Double.numCoords:I
dload 9 /* x3 */
dastore
7: .line 1297
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.doubleCoords:[D
aload 0 /* this */
dup
getfield java.awt.geom.Path2D$Double.numCoords:I
dup_x1
iconst_1
iadd
putfield java.awt.geom.Path2D$Double.numCoords:I
dload 11 /* y3 */
dastore
8: .line 1298
return
end local 11 // double y3
end local 9 // double x3
end local 7 // double y2
end local 5 // double x2
end local 3 // double y1
end local 1 // double x1
end local 0 // java.awt.geom.Path2D$Double this
LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Ljava/awt/geom/Path2D$Double;
0 9 1 x1 D
0 9 3 y1 D
0 9 5 x2 D
0 9 7 y2 D
0 9 9 x3 D
0 9 11 y3 D
MethodParameters:
Name Flags
x1
y1
x2
y2
x3
y3
int pointCrossings(double, double);
descriptor: (DD)I
flags: (0x0000)
Code:
stack=23, locals=21, args_size=3
start local 0 // java.awt.geom.Path2D$Double this
start local 1 // double px
start local 3 // double py
0: .line 1301
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.numTypes:I
ifne 2
1: .line 1302
iconst_0
ireturn
2: .line 1305
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.doubleCoords:[D
astore 17 /* coords */
start local 17 // double[] coords
3: .line 1306
aload 17 /* coords */
iconst_0
daload
dup2
dstore 5 /* movx */
start local 5 // double movx
4: dstore 9 /* curx */
start local 9 // double curx
5: .line 1307
aload 17 /* coords */
iconst_1
daload
dup2
dstore 7 /* movy */
start local 7 // double movy
6: dstore 11 /* cury */
start local 11 // double cury
7: .line 1308
iconst_0
istore 18 /* crossings */
start local 18 // int crossings
8: .line 1309
iconst_2
istore 19 /* ci */
start local 19 // int ci
9: .line 1310
iconst_1
istore 20 /* i */
start local 20 // int i
10: goto 65
11: .line 1311
StackMap locals: java.awt.geom.Path2D$Double double double double double double double top top top top double[] int int int
StackMap stack:
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.pointTypes:[B
iload 20 /* i */
baload
tableswitch { // 0 - 4
0: 12
1: 21
2: 30
3: 42
4: 56
default: 64
}
12: .line 1313
StackMap locals:
StackMap stack:
dload 11 /* cury */
dload 7 /* movy */
dcmpl
ifeq 18
13: .line 1314
iload 18 /* crossings */
14: .line 1315
dload 1 /* px */
dload 3 /* py */
15: .line 1316
dload 9 /* curx */
dload 11 /* cury */
16: .line 1317
dload 5 /* movx */
dload 7 /* movy */
17: .line 1315
invokestatic sun.awt.geom.Curve.pointCrossingsForLine:(DDDDDD)I
iadd
istore 18 /* crossings */
18: .line 1319
StackMap locals:
StackMap stack:
aload 17 /* coords */
iload 19 /* ci */
iinc 19 /* ci */ 1
daload
dup2
dstore 9 /* curx */
dstore 5 /* movx */
19: .line 1320
aload 17 /* coords */
iload 19 /* ci */
iinc 19 /* ci */ 1
daload
dup2
dstore 11 /* cury */
dstore 7 /* movy */
20: .line 1321
goto 64
21: .line 1323
StackMap locals:
StackMap stack:
iload 18 /* crossings */
22: .line 1324
dload 1 /* px */
dload 3 /* py */
23: .line 1325
dload 9 /* curx */
dload 11 /* cury */
24: .line 1326
aload 17 /* coords */
iload 19 /* ci */
iinc 19 /* ci */ 1
daload
dup2
dstore 13 /* endx */
start local 13 // double endx
25: .line 1327
aload 17 /* coords */
iload 19 /* ci */
iinc 19 /* ci */ 1
daload
dup2
dstore 15 /* endy */
start local 15 // double endy
26: .line 1324
invokestatic sun.awt.geom.Curve.pointCrossingsForLine:(DDDDDD)I
iadd
istore 18 /* crossings */
27: .line 1328
dload 13 /* endx */
dstore 9 /* curx */
28: .line 1329
dload 15 /* endy */
dstore 11 /* cury */
29: .line 1330
goto 64
end local 15 // double endy
end local 13 // double endx
30: .line 1332
StackMap locals:
StackMap stack:
iload 18 /* crossings */
31: .line 1333
dload 1 /* px */
dload 3 /* py */
32: .line 1334
dload 9 /* curx */
dload 11 /* cury */
33: .line 1335
aload 17 /* coords */
iload 19 /* ci */
iinc 19 /* ci */ 1
daload
34: .line 1336
aload 17 /* coords */
iload 19 /* ci */
iinc 19 /* ci */ 1
daload
35: .line 1337
aload 17 /* coords */
iload 19 /* ci */
iinc 19 /* ci */ 1
daload
dup2
dstore 13 /* endx */
start local 13 // double endx
36: .line 1338
aload 17 /* coords */
iload 19 /* ci */
iinc 19 /* ci */ 1
daload
dup2
dstore 15 /* endy */
start local 15 // double endy
37: .line 1339
iconst_0
38: .line 1333
invokestatic sun.awt.geom.Curve.pointCrossingsForQuad:(DDDDDDDDI)I
iadd
istore 18 /* crossings */
39: .line 1340
dload 13 /* endx */
dstore 9 /* curx */
40: .line 1341
dload 15 /* endy */
dstore 11 /* cury */
41: .line 1342
goto 64
end local 15 // double endy
end local 13 // double endx
42: .line 1344
StackMap locals:
StackMap stack:
iload 18 /* crossings */
43: .line 1345
dload 1 /* px */
dload 3 /* py */
44: .line 1346
dload 9 /* curx */
dload 11 /* cury */
45: .line 1347
aload 17 /* coords */
iload 19 /* ci */
iinc 19 /* ci */ 1
daload
46: .line 1348
aload 17 /* coords */
iload 19 /* ci */
iinc 19 /* ci */ 1
daload
47: .line 1349
aload 17 /* coords */
iload 19 /* ci */
iinc 19 /* ci */ 1
daload
48: .line 1350
aload 17 /* coords */
iload 19 /* ci */
iinc 19 /* ci */ 1
daload
49: .line 1351
aload 17 /* coords */
iload 19 /* ci */
iinc 19 /* ci */ 1
daload
dup2
dstore 13 /* endx */
start local 13 // double endx
50: .line 1352
aload 17 /* coords */
iload 19 /* ci */
iinc 19 /* ci */ 1
daload
dup2
dstore 15 /* endy */
start local 15 // double endy
51: .line 1353
iconst_0
52: .line 1345
invokestatic sun.awt.geom.Curve.pointCrossingsForCubic:(DDDDDDDDDDI)I
iadd
istore 18 /* crossings */
53: .line 1354
dload 13 /* endx */
dstore 9 /* curx */
54: .line 1355
dload 15 /* endy */
dstore 11 /* cury */
55: .line 1356
goto 64
end local 15 // double endy
end local 13 // double endx
56: .line 1358
StackMap locals:
StackMap stack:
dload 11 /* cury */
dload 7 /* movy */
dcmpl
ifeq 62
57: .line 1359
iload 18 /* crossings */
58: .line 1360
dload 1 /* px */
dload 3 /* py */
59: .line 1361
dload 9 /* curx */
dload 11 /* cury */
60: .line 1362
dload 5 /* movx */
dload 7 /* movy */
61: .line 1360
invokestatic sun.awt.geom.Curve.pointCrossingsForLine:(DDDDDD)I
iadd
istore 18 /* crossings */
62: .line 1364
StackMap locals:
StackMap stack:
dload 5 /* movx */
dstore 9 /* curx */
63: .line 1365
dload 7 /* movy */
dstore 11 /* cury */
64: .line 1310
StackMap locals:
StackMap stack:
iinc 20 /* i */ 1
StackMap locals:
StackMap stack:
65: iload 20 /* i */
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.numTypes:I
if_icmplt 11
end local 20 // int i
66: .line 1369
dload 11 /* cury */
dload 7 /* movy */
dcmpl
ifeq 72
67: .line 1370
iload 18 /* crossings */
68: .line 1371
dload 1 /* px */
dload 3 /* py */
69: .line 1372
dload 9 /* curx */
dload 11 /* cury */
70: .line 1373
dload 5 /* movx */
dload 7 /* movy */
71: .line 1371
invokestatic sun.awt.geom.Curve.pointCrossingsForLine:(DDDDDD)I
iadd
istore 18 /* crossings */
72: .line 1375
StackMap locals:
StackMap stack:
iload 18 /* crossings */
ireturn
end local 19 // int ci
end local 18 // int crossings
end local 17 // double[] coords
end local 11 // double cury
end local 9 // double curx
end local 7 // double movy
end local 5 // double movx
end local 3 // double py
end local 1 // double px
end local 0 // java.awt.geom.Path2D$Double this
LocalVariableTable:
Start End Slot Name Signature
0 73 0 this Ljava/awt/geom/Path2D$Double;
0 73 1 px D
0 73 3 py D
4 73 5 movx D
6 73 7 movy D
5 73 9 curx D
7 73 11 cury D
25 30 13 endx D
36 42 13 endx D
50 56 13 endx D
26 30 15 endy D
37 42 15 endy D
51 56 15 endy D
3 73 17 coords [D
8 73 18 crossings I
9 73 19 ci I
10 66 20 i I
MethodParameters:
Name Flags
px
py
int rectCrossings(double, double, double, double);
descriptor: (DDDD)I
flags: (0x0000)
Code:
stack=27, locals=25, args_size=5
start local 0 // java.awt.geom.Path2D$Double this
start local 1 // double rxmin
start local 3 // double rymin
start local 5 // double rxmax
start local 7 // double rymax
0: .line 1381
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.numTypes:I
ifne 2
1: .line 1382
iconst_0
ireturn
2: .line 1384
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.doubleCoords:[D
astore 9 /* coords */
start local 9 // double[] coords
3: .line 1386
aload 9 /* coords */
iconst_0
daload
dup2
dstore 14 /* movx */
start local 14 // double movx
4: dstore 10 /* curx */
start local 10 // double curx
5: .line 1387
aload 9 /* coords */
iconst_1
daload
dup2
dstore 16 /* movy */
start local 16 // double movy
6: dstore 12 /* cury */
start local 12 // double cury
7: .line 1388
iconst_0
istore 22 /* crossings */
start local 22 // int crossings
8: .line 1389
iconst_2
istore 23 /* ci */
start local 23 // int ci
9: .line 1390
iconst_1
istore 24 /* i */
start local 24 // int i
10: .line 1391
goto 76
11: .line 1394
StackMap locals: java.awt.geom.Path2D$Double double double double double double[] double double double double top top top top int int int
StackMap stack:
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.pointTypes:[B
iload 24 /* i */
baload
tableswitch { // 0 - 4
0: 12
1: 23
2: 35
3: 49
4: 65
default: 75
}
12: .line 1396
StackMap locals:
StackMap stack:
dload 10 /* curx */
dload 14 /* movx */
dcmpl
ifne 13
dload 12 /* cury */
dload 16 /* movy */
dcmpl
ifeq 20
13: .line 1398
StackMap locals:
StackMap stack:
iload 22 /* crossings */
14: .line 1399
dload 1 /* rxmin */
dload 3 /* rymin */
15: .line 1400
dload 5 /* rxmax */
dload 7 /* rymax */
16: .line 1401
dload 10 /* curx */
dload 12 /* cury */
17: .line 1402
dload 14 /* movx */
dload 16 /* movy */
18: .line 1398
invokestatic sun.awt.geom.Curve.rectCrossingsForLine:(IDDDDDDDD)I
19: .line 1397
istore 22 /* crossings */
20: .line 1406
StackMap locals:
StackMap stack:
aload 9 /* coords */
iload 23 /* ci */
iinc 23 /* ci */ 1
daload
dup2
dstore 10 /* curx */
dstore 14 /* movx */
21: .line 1407
aload 9 /* coords */
iload 23 /* ci */
iinc 23 /* ci */ 1
daload
dup2
dstore 12 /* cury */
dstore 16 /* movy */
22: .line 1408
goto 75
23: .line 1410
StackMap locals:
StackMap stack:
aload 9 /* coords */
iload 23 /* ci */
iinc 23 /* ci */ 1
daload
dstore 18 /* endx */
start local 18 // double endx
24: .line 1411
aload 9 /* coords */
iload 23 /* ci */
iinc 23 /* ci */ 1
daload
dstore 20 /* endy */
start local 20 // double endy
25: .line 1413
iload 22 /* crossings */
26: .line 1414
dload 1 /* rxmin */
dload 3 /* rymin */
27: .line 1415
dload 5 /* rxmax */
dload 7 /* rymax */
28: .line 1416
dload 10 /* curx */
dload 12 /* cury */
29: .line 1417
dload 18 /* endx */
dload 20 /* endy */
30: .line 1413
invokestatic sun.awt.geom.Curve.rectCrossingsForLine:(IDDDDDDDD)I
31: .line 1412
istore 22 /* crossings */
32: .line 1418
dload 18 /* endx */
dstore 10 /* curx */
33: .line 1419
dload 20 /* endy */
dstore 12 /* cury */
34: .line 1420
goto 75
end local 20 // double endy
end local 18 // double endx
35: .line 1423
StackMap locals:
StackMap stack:
iload 22 /* crossings */
36: .line 1424
dload 1 /* rxmin */
dload 3 /* rymin */
37: .line 1425
dload 5 /* rxmax */
dload 7 /* rymax */
38: .line 1426
dload 10 /* curx */
dload 12 /* cury */
39: .line 1427
aload 9 /* coords */
iload 23 /* ci */
iinc 23 /* ci */ 1
daload
40: .line 1428
aload 9 /* coords */
iload 23 /* ci */
iinc 23 /* ci */ 1
daload
41: .line 1429
aload 9 /* coords */
iload 23 /* ci */
iinc 23 /* ci */ 1
daload
dup2
dstore 18 /* endx */
start local 18 // double endx
42: .line 1430
aload 9 /* coords */
iload 23 /* ci */
iinc 23 /* ci */ 1
daload
dup2
dstore 20 /* endy */
start local 20 // double endy
43: .line 1431
iconst_0
44: .line 1423
invokestatic sun.awt.geom.Curve.rectCrossingsForQuad:(IDDDDDDDDDDI)I
45: .line 1422
istore 22 /* crossings */
46: .line 1432
dload 18 /* endx */
dstore 10 /* curx */
47: .line 1433
dload 20 /* endy */
dstore 12 /* cury */
48: .line 1434
goto 75
end local 20 // double endy
end local 18 // double endx
49: .line 1437
StackMap locals:
StackMap stack:
iload 22 /* crossings */
50: .line 1438
dload 1 /* rxmin */
dload 3 /* rymin */
51: .line 1439
dload 5 /* rxmax */
dload 7 /* rymax */
52: .line 1440
dload 10 /* curx */
dload 12 /* cury */
53: .line 1441
aload 9 /* coords */
iload 23 /* ci */
iinc 23 /* ci */ 1
daload
54: .line 1442
aload 9 /* coords */
iload 23 /* ci */
iinc 23 /* ci */ 1
daload
55: .line 1443
aload 9 /* coords */
iload 23 /* ci */
iinc 23 /* ci */ 1
daload
56: .line 1444
aload 9 /* coords */
iload 23 /* ci */
iinc 23 /* ci */ 1
daload
57: .line 1445
aload 9 /* coords */
iload 23 /* ci */
iinc 23 /* ci */ 1
daload
dup2
dstore 18 /* endx */
start local 18 // double endx
58: .line 1446
aload 9 /* coords */
iload 23 /* ci */
iinc 23 /* ci */ 1
daload
dup2
dstore 20 /* endy */
start local 20 // double endy
59: .line 1447
iconst_0
60: .line 1437
invokestatic sun.awt.geom.Curve.rectCrossingsForCubic:(IDDDDDDDDDDDDI)I
61: .line 1436
istore 22 /* crossings */
62: .line 1448
dload 18 /* endx */
dstore 10 /* curx */
63: .line 1449
dload 20 /* endy */
dstore 12 /* cury */
64: .line 1450
goto 75
end local 20 // double endy
end local 18 // double endx
65: .line 1452
StackMap locals:
StackMap stack:
dload 10 /* curx */
dload 14 /* movx */
dcmpl
ifne 66
dload 12 /* cury */
dload 16 /* movy */
dcmpl
ifeq 73
66: .line 1454
StackMap locals:
StackMap stack:
iload 22 /* crossings */
67: .line 1455
dload 1 /* rxmin */
dload 3 /* rymin */
68: .line 1456
dload 5 /* rxmax */
dload 7 /* rymax */
69: .line 1457
dload 10 /* curx */
dload 12 /* cury */
70: .line 1458
dload 14 /* movx */
dload 16 /* movy */
71: .line 1454
invokestatic sun.awt.geom.Curve.rectCrossingsForLine:(IDDDDDDDD)I
72: .line 1453
istore 22 /* crossings */
73: .line 1460
StackMap locals:
StackMap stack:
dload 14 /* movx */
dstore 10 /* curx */
74: .line 1461
dload 16 /* movy */
dstore 12 /* cury */
75: .line 1392
StackMap locals:
StackMap stack:
iinc 24 /* i */ 1
76: .line 1391
StackMap locals:
StackMap stack:
iload 22 /* crossings */
ldc -2147483648
if_icmpeq 78
iload 24 /* i */
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.numTypes:I
77: .line 1390
if_icmplt 11
end local 24 // int i
78: .line 1467
StackMap locals:
StackMap stack:
iload 22 /* crossings */
ldc -2147483648
if_icmpeq 87
79: .line 1468
dload 10 /* curx */
dload 14 /* movx */
dcmpl
ifne 80
dload 12 /* cury */
dload 16 /* movy */
dcmpl
ifeq 87
80: .line 1471
StackMap locals:
StackMap stack:
iload 22 /* crossings */
81: .line 1472
dload 1 /* rxmin */
dload 3 /* rymin */
82: .line 1473
dload 5 /* rxmax */
dload 7 /* rymax */
83: .line 1474
dload 10 /* curx */
dload 12 /* cury */
84: .line 1475
dload 14 /* movx */
dload 16 /* movy */
85: .line 1471
invokestatic sun.awt.geom.Curve.rectCrossingsForLine:(IDDDDDDDD)I
86: .line 1470
istore 22 /* crossings */
87: .line 1479
StackMap locals:
StackMap stack:
iload 22 /* crossings */
ireturn
end local 23 // int ci
end local 22 // int crossings
end local 16 // double movy
end local 14 // double movx
end local 12 // double cury
end local 10 // double curx
end local 9 // double[] coords
end local 7 // double rymax
end local 5 // double rxmax
end local 3 // double rymin
end local 1 // double rxmin
end local 0 // java.awt.geom.Path2D$Double this
LocalVariableTable:
Start End Slot Name Signature
0 88 0 this Ljava/awt/geom/Path2D$Double;
0 88 1 rxmin D
0 88 3 rymin D
0 88 5 rxmax D
0 88 7 rymax D
3 88 9 coords [D
5 88 10 curx D
7 88 12 cury D
4 88 14 movx D
6 88 16 movy D
24 35 18 endx D
42 49 18 endx D
58 65 18 endx D
25 35 20 endy D
43 49 20 endy D
59 65 20 endy D
8 88 22 crossings I
9 88 23 ci I
10 78 24 i I
MethodParameters:
Name Flags
rxmin
rymin
rxmax
rymax
public final void append(java.awt.geom.PathIterator, boolean);
descriptor: (Ljava/awt/geom/PathIterator;Z)V
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=13, locals=4, args_size=3
start local 0 // java.awt.geom.Path2D$Double this
start local 1 // java.awt.geom.PathIterator pi
start local 2 // boolean connect
0: .line 1487
bipush 6
newarray 7
astore 3 /* coords */
start local 3 // double[] coords
1: .line 1488
goto 26
2: .line 1489
StackMap locals: double[]
StackMap stack:
aload 1 /* pi */
aload 3 /* coords */
invokeinterface java.awt.geom.PathIterator.currentSegment:([D)I
tableswitch { // 0 - 4
0: 3
1: 12
2: 14
3: 18
4: 23
default: 24
}
3: .line 1491
StackMap locals:
StackMap stack:
iload 2 /* connect */
ifeq 4
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.numTypes:I
iconst_1
if_icmplt 4
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.numCoords:I
iconst_1
if_icmpge 6
4: .line 1492
StackMap locals:
StackMap stack:
aload 0 /* this */
aload 3 /* coords */
iconst_0
daload
aload 3 /* coords */
iconst_1
daload
invokevirtual java.awt.geom.Path2D$Double.moveTo:(DD)V
5: .line 1493
goto 24
6: .line 1495
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.pointTypes:[B
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.numTypes:I
iconst_1
isub
baload
iconst_4
if_icmpeq 10
7: .line 1496
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.doubleCoords:[D
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.numCoords:I
iconst_2
isub
daload
aload 3 /* coords */
iconst_0
daload
dcmpl
ifne 10
8: .line 1497
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.doubleCoords:[D
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.numCoords:I
iconst_1
isub
daload
aload 3 /* coords */
iconst_1
daload
dcmpl
ifne 10
9: .line 1500
goto 24
10: .line 1502
StackMap locals:
StackMap stack:
aload 0 /* this */
aload 3 /* coords */
iconst_0
daload
aload 3 /* coords */
iconst_1
daload
invokevirtual java.awt.geom.Path2D$Double.lineTo:(DD)V
11: .line 1503
goto 24
12: .line 1505
StackMap locals:
StackMap stack:
aload 0 /* this */
aload 3 /* coords */
iconst_0
daload
aload 3 /* coords */
iconst_1
daload
invokevirtual java.awt.geom.Path2D$Double.lineTo:(DD)V
13: .line 1506
goto 24
14: .line 1508
StackMap locals:
StackMap stack:
aload 0 /* this */
aload 3 /* coords */
iconst_0
daload
aload 3 /* coords */
iconst_1
daload
15: .line 1509
aload 3 /* coords */
iconst_2
daload
aload 3 /* coords */
iconst_3
daload
16: .line 1508
invokevirtual java.awt.geom.Path2D$Double.quadTo:(DDDD)V
17: .line 1510
goto 24
18: .line 1512
StackMap locals:
StackMap stack:
aload 0 /* this */
aload 3 /* coords */
iconst_0
daload
aload 3 /* coords */
iconst_1
daload
19: .line 1513
aload 3 /* coords */
iconst_2
daload
aload 3 /* coords */
iconst_3
daload
20: .line 1514
aload 3 /* coords */
iconst_4
daload
aload 3 /* coords */
iconst_5
daload
21: .line 1512
invokevirtual java.awt.geom.Path2D$Double.curveTo:(DDDDDD)V
22: .line 1515
goto 24
23: .line 1517
StackMap locals:
StackMap stack:
aload 0 /* this */
invokevirtual java.awt.geom.Path2D$Double.closePath:()V
24: .line 1520
StackMap locals:
StackMap stack:
aload 1 /* pi */
invokeinterface java.awt.geom.PathIterator.next:()V
25: .line 1521
iconst_0
istore 2 /* connect */
26: .line 1488
StackMap locals:
StackMap stack:
aload 1 /* pi */
invokeinterface java.awt.geom.PathIterator.isDone:()Z
ifeq 2
27: .line 1523
return
end local 3 // double[] coords
end local 2 // boolean connect
end local 1 // java.awt.geom.PathIterator pi
end local 0 // java.awt.geom.Path2D$Double this
LocalVariableTable:
Start End Slot Name Signature
0 28 0 this Ljava/awt/geom/Path2D$Double;
0 28 1 pi Ljava/awt/geom/PathIterator;
0 28 2 connect Z
1 28 3 coords [D
MethodParameters:
Name Flags
pi
connect
public final void transform(java.awt.geom.AffineTransform);
descriptor: (Ljava/awt/geom/AffineTransform;)V
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=7, locals=2, args_size=2
start local 0 // java.awt.geom.Path2D$Double this
start local 1 // java.awt.geom.AffineTransform at
0: .line 1530
aload 1 /* at */
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.doubleCoords:[D
iconst_0
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.doubleCoords:[D
iconst_0
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.numCoords:I
iconst_2
idiv
invokevirtual java.awt.geom.AffineTransform.transform:([DI[DII)V
1: .line 1531
return
end local 1 // java.awt.geom.AffineTransform at
end local 0 // java.awt.geom.Path2D$Double this
LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljava/awt/geom/Path2D$Double;
0 2 1 at Ljava/awt/geom/AffineTransform;
MethodParameters:
Name Flags
at
public final synchronized java.awt.geom.Rectangle2D getBounds2D();
descriptor: ()Ljava/awt/geom/Rectangle2D;
flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SYNCHRONIZED
Code:
stack=12, locals=14, args_size=1
start local 0 // java.awt.geom.Path2D$Double this
0: .line 1539
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.numCoords:I
istore 9 /* i */
start local 9 // int i
1: .line 1540
iload 9 /* i */
ifle 15
2: .line 1541
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.doubleCoords:[D
iinc 9 /* i */ -1
iload 9 /* i */
daload
dup2
dstore 7 /* y2 */
start local 7 // double y2
3: dstore 3 /* y1 */
start local 3 // double y1
4: .line 1542
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.doubleCoords:[D
iinc 9 /* i */ -1
iload 9 /* i */
daload
dup2
dstore 5 /* x2 */
start local 5 // double x2
5: dstore 1 /* x1 */
start local 1 // double x1
6: .line 1543
goto 13
7: .line 1544
StackMap locals: java.awt.geom.Path2D$Double double double double double int
StackMap stack:
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.doubleCoords:[D
iinc 9 /* i */ -1
iload 9 /* i */
daload
dstore 10 /* y */
start local 10 // double y
8: .line 1545
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.doubleCoords:[D
iinc 9 /* i */ -1
iload 9 /* i */
daload
dstore 12 /* x */
start local 12 // double x
9: .line 1546
dload 12 /* x */
dload 1 /* x1 */
dcmpg
ifge 10
dload 12 /* x */
dstore 1 /* x1 */
10: .line 1547
StackMap locals: double double
StackMap stack:
dload 10 /* y */
dload 3 /* y1 */
dcmpg
ifge 11
dload 10 /* y */
dstore 3 /* y1 */
11: .line 1548
StackMap locals:
StackMap stack:
dload 12 /* x */
dload 5 /* x2 */
dcmpl
ifle 12
dload 12 /* x */
dstore 5 /* x2 */
12: .line 1549
StackMap locals:
StackMap stack:
dload 10 /* y */
dload 7 /* y2 */
dcmpl
ifle 13
dload 10 /* y */
dstore 7 /* y2 */
end local 12 // double x
end local 10 // double y
13: .line 1543
StackMap locals:
StackMap stack:
iload 9 /* i */
ifgt 7
14: .line 1551
goto 19
end local 7 // double y2
end local 5 // double x2
end local 3 // double y1
end local 1 // double x1
15: .line 1552
StackMap locals: java.awt.geom.Path2D$Double top top top top top top top top int
StackMap stack:
dconst_0
dup2
dstore 7 /* y2 */
start local 7 // double y2
16: dup2
dstore 5 /* x2 */
start local 5 // double x2
17: dup2
dstore 3 /* y1 */
start local 3 // double y1
18: dstore 1 /* x1 */
start local 1 // double x1
19: .line 1554
StackMap locals: java.awt.geom.Path2D$Double double double double double int
StackMap stack:
new java.awt.geom.Rectangle2D$Double
dup
dload 1 /* x1 */
dload 3 /* y1 */
dload 5 /* x2 */
dload 1 /* x1 */
dsub
dload 7 /* y2 */
dload 3 /* y1 */
dsub
invokespecial java.awt.geom.Rectangle2D$Double.<init>:(DDDD)V
areturn
end local 9 // int i
end local 7 // double y2
end local 5 // double x2
end local 3 // double y1
end local 1 // double x1
end local 0 // java.awt.geom.Path2D$Double this
LocalVariableTable:
Start End Slot Name Signature
0 20 0 this Ljava/awt/geom/Path2D$Double;
6 15 1 x1 D
19 20 1 x1 D
4 15 3 y1 D
18 20 3 y1 D
5 15 5 x2 D
17 20 5 x2 D
3 15 7 y2 D
16 20 7 y2 D
1 20 9 i I
8 13 10 y D
9 13 12 x D
public final java.awt.geom.PathIterator getPathIterator(java.awt.geom.AffineTransform);
descriptor: (Ljava/awt/geom/AffineTransform;)Ljava/awt/geom/PathIterator;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=4, locals=2, args_size=2
start local 0 // java.awt.geom.Path2D$Double this
start local 1 // java.awt.geom.AffineTransform at
0: .line 1573
aload 1 /* at */
ifnonnull 2
1: .line 1574
new java.awt.geom.Path2D$Double$CopyIterator
dup
aload 0 /* this */
invokespecial java.awt.geom.Path2D$Double$CopyIterator.<init>:(Ljava/awt/geom/Path2D$Double;)V
areturn
2: .line 1576
StackMap locals:
StackMap stack:
new java.awt.geom.Path2D$Double$TxIterator
dup
aload 0 /* this */
aload 1 /* at */
invokespecial java.awt.geom.Path2D$Double$TxIterator.<init>:(Ljava/awt/geom/Path2D$Double;Ljava/awt/geom/AffineTransform;)V
areturn
end local 1 // java.awt.geom.AffineTransform at
end local 0 // java.awt.geom.Path2D$Double this
LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljava/awt/geom/Path2D$Double;
0 3 1 at Ljava/awt/geom/AffineTransform;
MethodParameters:
Name Flags
at
public final java.lang.Object clone();
descriptor: ()Ljava/lang/Object;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=3, locals=1, args_size=1
start local 0 // java.awt.geom.Path2D$Double this
0: .line 1594
new java.awt.geom.Path2D$Double
dup
aload 0 /* this */
invokespecial java.awt.geom.Path2D$Double.<init>:(Ljava/awt/Shape;)V
areturn
end local 0 // java.awt.geom.Path2D$Double this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/awt/geom/Path2D$Double;
private void writeObject(java.io.ObjectOutputStream);
descriptor: (Ljava/io/ObjectOutputStream;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=2, args_size=2
start local 0 // java.awt.geom.Path2D$Double this
start local 1 // java.io.ObjectOutputStream s
0: .line 1726
aload 0 /* this */
aload 1 /* s */
iconst_1
invokespecial java.awt.geom.Path2D.writeObject:(Ljava/io/ObjectOutputStream;Z)V
1: .line 1727
return
end local 1 // java.io.ObjectOutputStream s
end local 0 // java.awt.geom.Path2D$Double this
LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljava/awt/geom/Path2D$Double;
0 2 1 s Ljava/io/ObjectOutputStream;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
s
private void readObject(java.io.ObjectInputStream);
descriptor: (Ljava/io/ObjectInputStream;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=2, args_size=2
start local 0 // java.awt.geom.Path2D$Double this
start local 1 // java.io.ObjectInputStream s
0: .line 1745
aload 0 /* this */
aload 1 /* s */
iconst_1
invokespecial java.awt.geom.Path2D.readObject:(Ljava/io/ObjectInputStream;Z)V
1: .line 1746
return
end local 1 // java.io.ObjectInputStream s
end local 0 // java.awt.geom.Path2D$Double this
LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljava/awt/geom/Path2D$Double;
0 2 1 s Ljava/io/ObjectInputStream;
Exceptions:
throws java.lang.ClassNotFoundException, java.io.IOException
MethodParameters:
Name Flags
s
}
SourceFile: "Path2D.java"
NestHost: java.awt.geom.Path2D
InnerClasses:
public Double = java.awt.geom.Path2D$Double of java.awt.geom.Path2D
CopyIterator = java.awt.geom.Path2D$Double$CopyIterator of java.awt.geom.Path2D$Double
TxIterator = java.awt.geom.Path2D$Double$TxIterator of java.awt.geom.Path2D$Double
public Double = java.awt.geom.Point2D$Double of java.awt.geom.Point2D
public Double = java.awt.geom.Rectangle2D$Double of java.awt.geom.Rectangle2D