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 1075
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 1628
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 1085
aload 0 /* this */
iconst_1
bipush 20
invokespecial java.awt.geom.Path2D$Double.<init>:(II)V
1: .line 1086
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 1099
aload 0 /* this */
iload 1 /* rule */
bipush 20
invokespecial java.awt.geom.Path2D$Double.<init>:(II)V
1: .line 1100
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 1118
aload 0 /* this */
iload 1 /* rule */
iload 2 /* initialCapacity */
invokespecial java.awt.geom.Path2D.<init>:(II)V
1: .line 1119
aload 0 /* this */
iload 2 /* initialCapacity */
iconst_2
imul
newarray 7
putfield java.awt.geom.Path2D$Double.doubleCoords:[D
2: .line 1120
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 1132
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 1133
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 1147
aload 0 /* this */
invokespecial java.awt.geom.Path2D.<init>:()V
1: .line 1148
aload 1 /* s */
instanceof java.awt.geom.Path2D
ifeq 9
2: .line 1149
aload 1 /* s */
checkcast java.awt.geom.Path2D
astore 3 /* p2d */
start local 3 // java.awt.geom.Path2D p2d
3: .line 1150
aload 0 /* this */
aload 3 /* p2d */
getfield java.awt.geom.Path2D.windingRule:I
invokevirtual java.awt.geom.Path2D$Double.setWindingRule:(I)V
4: .line 1151
aload 0 /* this */
aload 3 /* p2d */
getfield java.awt.geom.Path2D.numTypes:I
putfield java.awt.geom.Path2D$Double.numTypes:I
5: .line 1153
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 1154
aload 0 /* this */
aload 3 /* p2d */
getfield java.awt.geom.Path2D.numCoords:I
putfield java.awt.geom.Path2D$Double.numCoords:I
7: .line 1155
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 1156
goto 14
9: .line 1157
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 1158
aload 0 /* this */
aload 3 /* pi */
invokeinterface java.awt.geom.PathIterator.getWindingRule:()I
invokevirtual java.awt.geom.Path2D$Double.setWindingRule:(I)V
11: .line 1159
aload 0 /* this */
bipush 20
newarray 8
putfield java.awt.geom.Path2D$Double.pointTypes:[B
12: .line 1160
aload 0 /* this */
bipush 40
newarray 7
putfield java.awt.geom.Path2D$Double.doubleCoords:[D
13: .line 1161
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 1163
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
public final void trimToSize();
descriptor: ()V
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 1168
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.numTypes:I
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.pointTypes:[B
arraylength
if_icmpge 2
1: .line 1169
aload 0 /* this */
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.pointTypes:[B
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.numTypes:I
invokestatic java.util.Arrays.copyOf:([BI)[B
putfield java.awt.geom.Path2D$Double.pointTypes:[B
2: .line 1171
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
if_icmpge 4
3: .line 1172
aload 0 /* this */
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
putfield java.awt.geom.Path2D$Double.doubleCoords:[D
4: .line 1174
StackMap locals:
StackMap stack:
return
end local 0 // java.awt.geom.Path2D$Double this
LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljava/awt/geom/Path2D$Double;
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 1179
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.numCoords:I
newarray 6
astore 2 /* ret */
start local 2 // float[] ret
1: .line 1180
aload 1 /* at */
ifnonnull 8
2: .line 1181
iconst_0
istore 3 /* i */
start local 3 // int i
3: goto 6
4: .line 1182
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 1181
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 1184
goto 9
8: .line 1185
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 1187
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 1194
aload 1 /* at */
ifnonnull 3
1: .line 1195
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 1196
goto 5
end local 2 // double[] ret
3: .line 1197
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 1198
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 1200
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 1204
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 1205
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 1206
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 1209
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 1210
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 1211
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 1214
new java.awt.geom.Point2D$Double
dup
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.doubleCoords:[D
iload 1 /* coordindex */
daload
1: .line 1215
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.doubleCoords:[D
iload 1 /* coordindex */
iconst_1
iadd
daload
2: .line 1214
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 1220
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.numTypes:I
ifne 2
iload 1 /* needMove */
ifeq 2
1: .line 1221
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 1224
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 1225
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 1227
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 1228
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 1230
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 1233
aload 0 /* oldCoords */
arraylength
istore 2 /* oldSize */
start local 2 // int oldSize
1: .line 1234
iload 2 /* oldSize */
iload 1 /* needed */
iadd
istore 3 /* newSizeMin */
start local 3 // int newSizeMin
2: .line 1235
iload 3 /* newSizeMin */
iload 2 /* oldSize */
if_icmpge 6
3: .line 1238
new java.lang.ArrayIndexOutOfBoundsException
dup
4: .line 1239
ldc "coords exceeds maximum capacity !"
5: .line 1238
invokespecial java.lang.ArrayIndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
athrow
6: .line 1242
StackMap locals: int int
StackMap stack:
iload 2 /* oldSize */
istore 4 /* grow */
start local 4 // int grow
7: .line 1243
iload 4 /* grow */
sipush 1000
if_icmple 10
8: .line 1244
sipush 1000
iload 2 /* oldSize */
iconst_3
ishr
invokestatic java.lang.Math.max:(II)I
istore 4 /* grow */
9: .line 1245
goto 12
StackMap locals: int
StackMap stack:
10: iload 4 /* grow */
bipush 10
if_icmpge 12
11: .line 1246
bipush 10
istore 4 /* grow */
12: .line 1248
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 1250
StackMap locals:
StackMap stack:
iload 2 /* oldSize */
iload 4 /* grow */
iadd
istore 5 /* newSize */
start local 5 // int newSize
14: .line 1251
iload 5 /* newSize */
iload 3 /* newSizeMin */
if_icmpge 16
15: .line 1253
ldc 2147483647
istore 5 /* newSize */
16: .line 1258
StackMap locals: int
StackMap stack:
aload 0 /* oldCoords */
iload 5 /* newSize */
invokestatic java.util.Arrays.copyOf:([DI)[D
17: areturn
18: .line 1259
StackMap locals:
StackMap stack: java.lang.OutOfMemoryError
astore 6 /* oome */
start local 6 // java.lang.OutOfMemoryError oome
19: .line 1260
iload 5 /* newSize */
iload 3 /* newSizeMin */
if_icmpne 21
20: .line 1261
aload 6 /* oome */
athrow
end local 6 // java.lang.OutOfMemoryError oome
21: .line 1264
StackMap locals:
StackMap stack:
iload 3 /* newSizeMin */
iload 5 /* newSize */
iload 3 /* newSizeMin */
isub
iconst_2
idiv
iadd
istore 5 /* newSize */
22: .line 1255
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 1273
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 1274
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 1275
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 1276
goto 8
4: .line 1277
StackMap locals:
StackMap stack:
aload 0 /* this */
iconst_0
iconst_2
invokevirtual java.awt.geom.Path2D$Double.needRoom:(ZI)V
5: .line 1278
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 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 1 /* x */
dastore
7: .line 1280
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 1282
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 1289
aload 0 /* this */
iconst_1
iconst_2
invokevirtual java.awt.geom.Path2D$Double.needRoom:(ZI)V
1: .line 1290
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 1291
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 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 3 /* y */
dastore
4: .line 1293
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 1302
aload 0 /* this */
iconst_1
iconst_4
invokevirtual java.awt.geom.Path2D$Double.needRoom:(ZI)V
1: .line 1303
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 1304
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 1305
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 1306
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 1307
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 1308
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 1318
aload 0 /* this */
iconst_1
bipush 6
invokevirtual java.awt.geom.Path2D$Double.needRoom:(ZI)V
1: .line 1319
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 1320
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 1321
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 1322
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 1323
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 1324
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 1325
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 1326
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 1329
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.numTypes:I
ifne 2
1: .line 1330
iconst_0
ireturn
2: .line 1333
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 1334
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 1335
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 1336
iconst_0
istore 18 /* crossings */
start local 18 // int crossings
8: .line 1337
iconst_2
istore 19 /* ci */
start local 19 // int ci
9: .line 1338
iconst_1
istore 20 /* i */
start local 20 // int i
10: goto 65
11: .line 1339
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 1341
StackMap locals:
StackMap stack:
dload 11 /* cury */
dload 7 /* movy */
dcmpl
ifeq 18
13: .line 1342
iload 18 /* crossings */
14: .line 1343
dload 1 /* px */
dload 3 /* py */
15: .line 1344
dload 9 /* curx */
dload 11 /* cury */
16: .line 1345
dload 5 /* movx */
dload 7 /* movy */
17: .line 1343
invokestatic sun.awt.geom.Curve.pointCrossingsForLine:(DDDDDD)I
iadd
istore 18 /* crossings */
18: .line 1347
StackMap locals:
StackMap stack:
aload 17 /* coords */
iload 19 /* ci */
iinc 19 /* ci */ 1
daload
dup2
dstore 9 /* curx */
dstore 5 /* movx */
19: .line 1348
aload 17 /* coords */
iload 19 /* ci */
iinc 19 /* ci */ 1
daload
dup2
dstore 11 /* cury */
dstore 7 /* movy */
20: .line 1349
goto 64
21: .line 1351
StackMap locals:
StackMap stack:
iload 18 /* crossings */
22: .line 1352
dload 1 /* px */
dload 3 /* py */
23: .line 1353
dload 9 /* curx */
dload 11 /* cury */
24: .line 1354
aload 17 /* coords */
iload 19 /* ci */
iinc 19 /* ci */ 1
daload
dup2
dstore 13 /* endx */
start local 13 // double endx
25: .line 1355
aload 17 /* coords */
iload 19 /* ci */
iinc 19 /* ci */ 1
daload
dup2
dstore 15 /* endy */
start local 15 // double endy
26: .line 1352
invokestatic sun.awt.geom.Curve.pointCrossingsForLine:(DDDDDD)I
iadd
istore 18 /* crossings */
27: .line 1356
dload 13 /* endx */
dstore 9 /* curx */
28: .line 1357
dload 15 /* endy */
dstore 11 /* cury */
29: .line 1358
goto 64
end local 15 // double endy
end local 13 // double endx
30: .line 1360
StackMap locals:
StackMap stack:
iload 18 /* crossings */
31: .line 1361
dload 1 /* px */
dload 3 /* py */
32: .line 1362
dload 9 /* curx */
dload 11 /* cury */
33: .line 1363
aload 17 /* coords */
iload 19 /* ci */
iinc 19 /* ci */ 1
daload
34: .line 1364
aload 17 /* coords */
iload 19 /* ci */
iinc 19 /* ci */ 1
daload
35: .line 1365
aload 17 /* coords */
iload 19 /* ci */
iinc 19 /* ci */ 1
daload
dup2
dstore 13 /* endx */
start local 13 // double endx
36: .line 1366
aload 17 /* coords */
iload 19 /* ci */
iinc 19 /* ci */ 1
daload
dup2
dstore 15 /* endy */
start local 15 // double endy
37: .line 1367
iconst_0
38: .line 1361
invokestatic sun.awt.geom.Curve.pointCrossingsForQuad:(DDDDDDDDI)I
iadd
istore 18 /* crossings */
39: .line 1368
dload 13 /* endx */
dstore 9 /* curx */
40: .line 1369
dload 15 /* endy */
dstore 11 /* cury */
41: .line 1370
goto 64
end local 15 // double endy
end local 13 // double endx
42: .line 1372
StackMap locals:
StackMap stack:
iload 18 /* crossings */
43: .line 1373
dload 1 /* px */
dload 3 /* py */
44: .line 1374
dload 9 /* curx */
dload 11 /* cury */
45: .line 1375
aload 17 /* coords */
iload 19 /* ci */
iinc 19 /* ci */ 1
daload
46: .line 1376
aload 17 /* coords */
iload 19 /* ci */
iinc 19 /* ci */ 1
daload
47: .line 1377
aload 17 /* coords */
iload 19 /* ci */
iinc 19 /* ci */ 1
daload
48: .line 1378
aload 17 /* coords */
iload 19 /* ci */
iinc 19 /* ci */ 1
daload
49: .line 1379
aload 17 /* coords */
iload 19 /* ci */
iinc 19 /* ci */ 1
daload
dup2
dstore 13 /* endx */
start local 13 // double endx
50: .line 1380
aload 17 /* coords */
iload 19 /* ci */
iinc 19 /* ci */ 1
daload
dup2
dstore 15 /* endy */
start local 15 // double endy
51: .line 1381
iconst_0
52: .line 1373
invokestatic sun.awt.geom.Curve.pointCrossingsForCubic:(DDDDDDDDDDI)I
iadd
istore 18 /* crossings */
53: .line 1382
dload 13 /* endx */
dstore 9 /* curx */
54: .line 1383
dload 15 /* endy */
dstore 11 /* cury */
55: .line 1384
goto 64
end local 15 // double endy
end local 13 // double endx
56: .line 1386
StackMap locals:
StackMap stack:
dload 11 /* cury */
dload 7 /* movy */
dcmpl
ifeq 62
57: .line 1387
iload 18 /* crossings */
58: .line 1388
dload 1 /* px */
dload 3 /* py */
59: .line 1389
dload 9 /* curx */
dload 11 /* cury */
60: .line 1390
dload 5 /* movx */
dload 7 /* movy */
61: .line 1388
invokestatic sun.awt.geom.Curve.pointCrossingsForLine:(DDDDDD)I
iadd
istore 18 /* crossings */
62: .line 1392
StackMap locals:
StackMap stack:
dload 5 /* movx */
dstore 9 /* curx */
63: .line 1393
dload 7 /* movy */
dstore 11 /* cury */
64: .line 1338
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 1397
dload 11 /* cury */
dload 7 /* movy */
dcmpl
ifeq 72
67: .line 1398
iload 18 /* crossings */
68: .line 1399
dload 1 /* px */
dload 3 /* py */
69: .line 1400
dload 9 /* curx */
dload 11 /* cury */
70: .line 1401
dload 5 /* movx */
dload 7 /* movy */
71: .line 1399
invokestatic sun.awt.geom.Curve.pointCrossingsForLine:(DDDDDD)I
iadd
istore 18 /* crossings */
72: .line 1403
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 1409
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.numTypes:I
ifne 2
1: .line 1410
iconst_0
ireturn
2: .line 1412
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 1414
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 1415
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 1416
iconst_0
istore 22 /* crossings */
start local 22 // int crossings
8: .line 1417
iconst_2
istore 23 /* ci */
start local 23 // int ci
9: .line 1418
iconst_1
istore 24 /* i */
start local 24 // int i
10: .line 1419
goto 76
11: .line 1422
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 1424
StackMap locals:
StackMap stack:
dload 10 /* curx */
dload 14 /* movx */
dcmpl
ifne 13
dload 12 /* cury */
dload 16 /* movy */
dcmpl
ifeq 20
13: .line 1426
StackMap locals:
StackMap stack:
iload 22 /* crossings */
14: .line 1427
dload 1 /* rxmin */
dload 3 /* rymin */
15: .line 1428
dload 5 /* rxmax */
dload 7 /* rymax */
16: .line 1429
dload 10 /* curx */
dload 12 /* cury */
17: .line 1430
dload 14 /* movx */
dload 16 /* movy */
18: .line 1426
invokestatic sun.awt.geom.Curve.rectCrossingsForLine:(IDDDDDDDD)I
19: .line 1425
istore 22 /* crossings */
20: .line 1434
StackMap locals:
StackMap stack:
aload 9 /* coords */
iload 23 /* ci */
iinc 23 /* ci */ 1
daload
dup2
dstore 10 /* curx */
dstore 14 /* movx */
21: .line 1435
aload 9 /* coords */
iload 23 /* ci */
iinc 23 /* ci */ 1
daload
dup2
dstore 12 /* cury */
dstore 16 /* movy */
22: .line 1436
goto 75
23: .line 1438
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 1439
aload 9 /* coords */
iload 23 /* ci */
iinc 23 /* ci */ 1
daload
dstore 20 /* endy */
start local 20 // double endy
25: .line 1441
iload 22 /* crossings */
26: .line 1442
dload 1 /* rxmin */
dload 3 /* rymin */
27: .line 1443
dload 5 /* rxmax */
dload 7 /* rymax */
28: .line 1444
dload 10 /* curx */
dload 12 /* cury */
29: .line 1445
dload 18 /* endx */
dload 20 /* endy */
30: .line 1441
invokestatic sun.awt.geom.Curve.rectCrossingsForLine:(IDDDDDDDD)I
31: .line 1440
istore 22 /* crossings */
32: .line 1446
dload 18 /* endx */
dstore 10 /* curx */
33: .line 1447
dload 20 /* endy */
dstore 12 /* cury */
34: .line 1448
goto 75
end local 20 // double endy
end local 18 // double endx
35: .line 1451
StackMap locals:
StackMap stack:
iload 22 /* crossings */
36: .line 1452
dload 1 /* rxmin */
dload 3 /* rymin */
37: .line 1453
dload 5 /* rxmax */
dload 7 /* rymax */
38: .line 1454
dload 10 /* curx */
dload 12 /* cury */
39: .line 1455
aload 9 /* coords */
iload 23 /* ci */
iinc 23 /* ci */ 1
daload
40: .line 1456
aload 9 /* coords */
iload 23 /* ci */
iinc 23 /* ci */ 1
daload
41: .line 1457
aload 9 /* coords */
iload 23 /* ci */
iinc 23 /* ci */ 1
daload
dup2
dstore 18 /* endx */
start local 18 // double endx
42: .line 1458
aload 9 /* coords */
iload 23 /* ci */
iinc 23 /* ci */ 1
daload
dup2
dstore 20 /* endy */
start local 20 // double endy
43: .line 1459
iconst_0
44: .line 1451
invokestatic sun.awt.geom.Curve.rectCrossingsForQuad:(IDDDDDDDDDDI)I
45: .line 1450
istore 22 /* crossings */
46: .line 1460
dload 18 /* endx */
dstore 10 /* curx */
47: .line 1461
dload 20 /* endy */
dstore 12 /* cury */
48: .line 1462
goto 75
end local 20 // double endy
end local 18 // double endx
49: .line 1465
StackMap locals:
StackMap stack:
iload 22 /* crossings */
50: .line 1466
dload 1 /* rxmin */
dload 3 /* rymin */
51: .line 1467
dload 5 /* rxmax */
dload 7 /* rymax */
52: .line 1468
dload 10 /* curx */
dload 12 /* cury */
53: .line 1469
aload 9 /* coords */
iload 23 /* ci */
iinc 23 /* ci */ 1
daload
54: .line 1470
aload 9 /* coords */
iload 23 /* ci */
iinc 23 /* ci */ 1
daload
55: .line 1471
aload 9 /* coords */
iload 23 /* ci */
iinc 23 /* ci */ 1
daload
56: .line 1472
aload 9 /* coords */
iload 23 /* ci */
iinc 23 /* ci */ 1
daload
57: .line 1473
aload 9 /* coords */
iload 23 /* ci */
iinc 23 /* ci */ 1
daload
dup2
dstore 18 /* endx */
start local 18 // double endx
58: .line 1474
aload 9 /* coords */
iload 23 /* ci */
iinc 23 /* ci */ 1
daload
dup2
dstore 20 /* endy */
start local 20 // double endy
59: .line 1475
iconst_0
60: .line 1465
invokestatic sun.awt.geom.Curve.rectCrossingsForCubic:(IDDDDDDDDDDDDI)I
61: .line 1464
istore 22 /* crossings */
62: .line 1476
dload 18 /* endx */
dstore 10 /* curx */
63: .line 1477
dload 20 /* endy */
dstore 12 /* cury */
64: .line 1478
goto 75
end local 20 // double endy
end local 18 // double endx
65: .line 1480
StackMap locals:
StackMap stack:
dload 10 /* curx */
dload 14 /* movx */
dcmpl
ifne 66
dload 12 /* cury */
dload 16 /* movy */
dcmpl
ifeq 73
66: .line 1482
StackMap locals:
StackMap stack:
iload 22 /* crossings */
67: .line 1483
dload 1 /* rxmin */
dload 3 /* rymin */
68: .line 1484
dload 5 /* rxmax */
dload 7 /* rymax */
69: .line 1485
dload 10 /* curx */
dload 12 /* cury */
70: .line 1486
dload 14 /* movx */
dload 16 /* movy */
71: .line 1482
invokestatic sun.awt.geom.Curve.rectCrossingsForLine:(IDDDDDDDD)I
72: .line 1481
istore 22 /* crossings */
73: .line 1488
StackMap locals:
StackMap stack:
dload 14 /* movx */
dstore 10 /* curx */
74: .line 1489
dload 16 /* movy */
dstore 12 /* cury */
75: .line 1420
StackMap locals:
StackMap stack:
iinc 24 /* i */ 1
76: .line 1419
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 1418
if_icmplt 11
end local 24 // int i
78: .line 1495
StackMap locals:
StackMap stack:
iload 22 /* crossings */
ldc -2147483648
if_icmpeq 87
79: .line 1496
dload 10 /* curx */
dload 14 /* movx */
dcmpl
ifne 80
dload 12 /* cury */
dload 16 /* movy */
dcmpl
ifeq 87
80: .line 1499
StackMap locals:
StackMap stack:
iload 22 /* crossings */
81: .line 1500
dload 1 /* rxmin */
dload 3 /* rymin */
82: .line 1501
dload 5 /* rxmax */
dload 7 /* rymax */
83: .line 1502
dload 10 /* curx */
dload 12 /* cury */
84: .line 1503
dload 14 /* movx */
dload 16 /* movy */
85: .line 1499
invokestatic sun.awt.geom.Curve.rectCrossingsForLine:(IDDDDDDDD)I
86: .line 1498
istore 22 /* crossings */
87: .line 1507
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 1515
bipush 6
newarray 7
astore 3 /* coords */
start local 3 // double[] coords
1: .line 1516
goto 26
2: .line 1517
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 1519
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 1520
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 1521
goto 24
6: .line 1523
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 1524
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 1525
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 1528
goto 24
10: .line 1530
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 1531
goto 24
12: .line 1533
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 1534
goto 24
14: .line 1536
StackMap locals:
StackMap stack:
aload 0 /* this */
aload 3 /* coords */
iconst_0
daload
aload 3 /* coords */
iconst_1
daload
15: .line 1537
aload 3 /* coords */
iconst_2
daload
aload 3 /* coords */
iconst_3
daload
16: .line 1536
invokevirtual java.awt.geom.Path2D$Double.quadTo:(DDDD)V
17: .line 1538
goto 24
18: .line 1540
StackMap locals:
StackMap stack:
aload 0 /* this */
aload 3 /* coords */
iconst_0
daload
aload 3 /* coords */
iconst_1
daload
19: .line 1541
aload 3 /* coords */
iconst_2
daload
aload 3 /* coords */
iconst_3
daload
20: .line 1542
aload 3 /* coords */
iconst_4
daload
aload 3 /* coords */
iconst_5
daload
21: .line 1540
invokevirtual java.awt.geom.Path2D$Double.curveTo:(DDDDDD)V
22: .line 1543
goto 24
23: .line 1545
StackMap locals:
StackMap stack:
aload 0 /* this */
invokevirtual java.awt.geom.Path2D$Double.closePath:()V
24: .line 1548
StackMap locals:
StackMap stack:
aload 1 /* pi */
invokeinterface java.awt.geom.PathIterator.next:()V
25: .line 1549
iconst_0
istore 2 /* connect */
26: .line 1516
StackMap locals:
StackMap stack:
aload 1 /* pi */
invokeinterface java.awt.geom.PathIterator.isDone:()Z
ifeq 2
27: .line 1551
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 1558
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 1559
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 1567
aload 0 /* this */
getfield java.awt.geom.Path2D$Double.numCoords:I
istore 9 /* i */
start local 9 // int i
1: .line 1568
iload 9 /* i */
ifle 15
2: .line 1569
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 1570
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 1571
goto 13
7: .line 1572
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 1573
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 1574
dload 12 /* x */
dload 1 /* x1 */
dcmpg
ifge 10
dload 12 /* x */
dstore 1 /* x1 */
10: .line 1575
StackMap locals: double double
StackMap stack:
dload 10 /* y */
dload 3 /* y1 */
dcmpg
ifge 11
dload 10 /* y */
dstore 3 /* y1 */
11: .line 1576
StackMap locals:
StackMap stack:
dload 12 /* x */
dload 5 /* x2 */
dcmpl
ifle 12
dload 12 /* x */
dstore 5 /* x2 */
12: .line 1577
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 1571
StackMap locals:
StackMap stack:
iload 9 /* i */
ifgt 7
14: .line 1579
goto 19
end local 7 // double y2
end local 5 // double x2
end local 3 // double y1
end local 1 // double x1
15: .line 1580
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 1582
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 1601
aload 1 /* at */
ifnonnull 2
1: .line 1602
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 1604
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 1622
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 1759
aload 0 /* this */
aload 1 /* s */
iconst_1
invokespecial java.awt.geom.Path2D.writeObject:(Ljava/io/ObjectOutputStream;Z)V
1: .line 1760
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 1778
aload 0 /* this */
aload 1 /* s */
iconst_1
invokespecial java.awt.geom.Path2D.readObject:(Ljava/io/ObjectInputStream;Z)V
1: .line 1779
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