public abstract class sun.awt.geom.Curve
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: sun.awt.geom.Curve
super_class: java.lang.Object
{
public static final int INCREASING;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 1
public static final int DECREASING;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: -1
protected int direction;
descriptor: I
flags: (0x0004) ACC_PROTECTED
public static final int RECT_INTERSECTS;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: -2147483648
public static final double TMIN;
descriptor: D
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 0.001
public static void insertMove(java.util.Vector<sun.awt.geom.Curve>, double, );
descriptor: (Ljava/util/Vector;DD)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=7, locals=5, args_size=3
start local 0 // java.util.Vector curves
start local 1 // double x
start local 3 // double y
0: .line 42
aload 0 /* curves */
new sun.awt.geom.Order0
dup
dload 1 /* x */
dload 3 /* y */
invokespecial sun.awt.geom.Order0.<init>:(DD)V
invokevirtual java.util.Vector.add:(Ljava/lang/Object;)Z
pop
1: .line 43
return
end local 3 // double y
end local 1 // double x
end local 0 // java.util.Vector curves
LocalVariableTable:
Start End Slot Name Signature
0 2 0 curves Ljava/util/Vector<Lsun/awt/geom/Curve;>;
0 2 1 x D
0 2 3 y D
Signature: (Ljava/util/Vector<Lsun/awt/geom/Curve;>;DD)V
MethodParameters:
Name Flags
curves
x
y
public static void insertLine(java.util.Vector<sun.awt.geom.Curve>, double, double, double, );
descriptor: (Ljava/util/Vector;DDDD)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=12, locals=9, args_size=5
start local 0 // java.util.Vector curves
start local 1 // double x0
start local 3 // double y0
start local 5 // double x1
start local 7 // double y1
0: .line 49
dload 3 /* y0 */
dload 7 /* y1 */
dcmpg
ifge 6
1: .line 50
aload 0 /* curves */
new sun.awt.geom.Order1
dup
dload 1 /* x0 */
dload 3 /* y0 */
2: .line 51
dload 5 /* x1 */
dload 7 /* y1 */
3: .line 52
iconst_1
invokespecial sun.awt.geom.Order1.<init>:(DDDDI)V
4: .line 50
invokevirtual java.util.Vector.add:(Ljava/lang/Object;)Z
pop
5: .line 53
goto 11
StackMap locals:
StackMap stack:
6: dload 3 /* y0 */
dload 7 /* y1 */
dcmpl
ifle 11
7: .line 54
aload 0 /* curves */
new sun.awt.geom.Order1
dup
dload 5 /* x1 */
dload 7 /* y1 */
8: .line 55
dload 1 /* x0 */
dload 3 /* y0 */
9: .line 56
iconst_m1
invokespecial sun.awt.geom.Order1.<init>:(DDDDI)V
10: .line 54
invokevirtual java.util.Vector.add:(Ljava/lang/Object;)Z
pop
11: .line 60
StackMap locals:
StackMap stack:
return
end local 7 // double y1
end local 5 // double x1
end local 3 // double y0
end local 1 // double x0
end local 0 // java.util.Vector curves
LocalVariableTable:
Start End Slot Name Signature
0 12 0 curves Ljava/util/Vector<Lsun/awt/geom/Curve;>;
0 12 1 x0 D
0 12 3 y0 D
0 12 5 x1 D
0 12 7 y1 D
Signature: (Ljava/util/Vector<Lsun/awt/geom/Curve;>;DDDD)V
MethodParameters:
Name Flags
curves
x0
y0
x1
y1
public static void insertQuad(java.util.Vector<sun.awt.geom.Curve>, double, double, );
descriptor: (Ljava/util/Vector;DD[D)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=15, locals=8, args_size=4
start local 0 // java.util.Vector curves
start local 1 // double x0
start local 3 // double y0
start local 5 // double[] coords
0: .line 66
aload 5 /* coords */
iconst_3
daload
dstore 6 /* y1 */
start local 6 // double y1
1: .line 67
dload 3 /* y0 */
dload 6 /* y1 */
dcmpl
ifle 9
2: .line 68
aload 0 /* curves */
aload 5 /* coords */
3: .line 69
aload 5 /* coords */
iconst_2
daload
dload 6 /* y1 */
4: .line 70
aload 5 /* coords */
iconst_0
daload
aload 5 /* coords */
iconst_1
daload
5: .line 71
dload 1 /* x0 */
dload 3 /* y0 */
6: .line 72
iconst_m1
7: .line 68
invokestatic sun.awt.geom.Order2.insert:(Ljava/util/Vector;[DDDDDDDI)V
8: .line 73
goto 17
StackMap locals: double
StackMap stack:
9: dload 3 /* y0 */
dload 6 /* y1 */
dcmpl
ifne 11
dload 3 /* y0 */
aload 5 /* coords */
iconst_1
daload
dcmpl
ifne 11
10: .line 75
return
11: .line 77
StackMap locals:
StackMap stack:
aload 0 /* curves */
aload 5 /* coords */
12: .line 78
dload 1 /* x0 */
dload 3 /* y0 */
13: .line 79
aload 5 /* coords */
iconst_0
daload
aload 5 /* coords */
iconst_1
daload
14: .line 80
aload 5 /* coords */
iconst_2
daload
dload 6 /* y1 */
15: .line 81
iconst_1
16: .line 77
invokestatic sun.awt.geom.Order2.insert:(Ljava/util/Vector;[DDDDDDDI)V
17: .line 83
StackMap locals:
StackMap stack:
return
end local 6 // double y1
end local 5 // double[] coords
end local 3 // double y0
end local 1 // double x0
end local 0 // java.util.Vector curves
LocalVariableTable:
Start End Slot Name Signature
0 18 0 curves Ljava/util/Vector<Lsun/awt/geom/Curve;>;
0 18 1 x0 D
0 18 3 y0 D
0 18 5 coords [D
1 18 6 y1 D
Signature: (Ljava/util/Vector<Lsun/awt/geom/Curve;>;DD[D)V
MethodParameters:
Name Flags
curves
x0
y0
coords
public static void insertCubic(java.util.Vector<sun.awt.geom.Curve>, double, double, );
descriptor: (Ljava/util/Vector;DD[D)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=19, locals=8, args_size=4
start local 0 // java.util.Vector curves
start local 1 // double x0
start local 3 // double y0
start local 5 // double[] coords
0: .line 89
aload 5 /* coords */
iconst_5
daload
dstore 6 /* y1 */
start local 6 // double y1
1: .line 90
dload 3 /* y0 */
dload 6 /* y1 */
dcmpl
ifle 10
2: .line 91
aload 0 /* curves */
aload 5 /* coords */
3: .line 92
aload 5 /* coords */
iconst_4
daload
dload 6 /* y1 */
4: .line 93
aload 5 /* coords */
iconst_2
daload
aload 5 /* coords */
iconst_3
daload
5: .line 94
aload 5 /* coords */
iconst_0
daload
aload 5 /* coords */
iconst_1
daload
6: .line 95
dload 1 /* x0 */
dload 3 /* y0 */
7: .line 96
iconst_m1
8: .line 91
invokestatic sun.awt.geom.Order3.insert:(Ljava/util/Vector;[DDDDDDDDDI)V
9: .line 97
goto 19
StackMap locals: double
StackMap stack:
10: dload 3 /* y0 */
dload 6 /* y1 */
dcmpl
ifne 12
dload 3 /* y0 */
aload 5 /* coords */
iconst_1
daload
dcmpl
ifne 12
dload 3 /* y0 */
aload 5 /* coords */
iconst_3
daload
dcmpl
ifne 12
11: .line 99
return
12: .line 101
StackMap locals:
StackMap stack:
aload 0 /* curves */
aload 5 /* coords */
13: .line 102
dload 1 /* x0 */
dload 3 /* y0 */
14: .line 103
aload 5 /* coords */
iconst_0
daload
aload 5 /* coords */
iconst_1
daload
15: .line 104
aload 5 /* coords */
iconst_2
daload
aload 5 /* coords */
iconst_3
daload
16: .line 105
aload 5 /* coords */
iconst_4
daload
dload 6 /* y1 */
17: .line 106
iconst_1
18: .line 101
invokestatic sun.awt.geom.Order3.insert:(Ljava/util/Vector;[DDDDDDDDDI)V
19: .line 108
StackMap locals:
StackMap stack:
return
end local 6 // double y1
end local 5 // double[] coords
end local 3 // double y0
end local 1 // double x0
end local 0 // java.util.Vector curves
LocalVariableTable:
Start End Slot Name Signature
0 20 0 curves Ljava/util/Vector<Lsun/awt/geom/Curve;>;
0 20 1 x0 D
0 20 3 y0 D
0 20 5 coords [D
1 20 6 y1 D
Signature: (Ljava/util/Vector<Lsun/awt/geom/Curve;>;DD[D)V
MethodParameters:
Name Flags
curves
x0
y0
coords
public static int pointCrossingsForPath(java.awt.geom.PathIterator, double, double);
descriptor: (Ljava/awt/geom/PathIterator;DD)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=22, locals=19, args_size=3
start local 0 // java.awt.geom.PathIterator pi
start local 1 // double px
start local 3 // double py
0: .line 127
aload 0 /* pi */
invokeinterface java.awt.geom.PathIterator.isDone:()Z
ifeq 2
1: .line 128
iconst_0
ireturn
2: .line 130
StackMap locals:
StackMap stack:
bipush 6
newarray 7
astore 5 /* coords */
start local 5 // double[] coords
3: .line 131
aload 0 /* pi */
aload 5 /* coords */
invokeinterface java.awt.geom.PathIterator.currentSegment:([D)I
ifeq 5
4: .line 132
new java.awt.geom.IllegalPathStateException
dup
ldc "missing initial moveto in path definition"
invokespecial java.awt.geom.IllegalPathStateException.<init>:(Ljava/lang/String;)V
athrow
5: .line 135
StackMap locals: double[]
StackMap stack:
aload 0 /* pi */
invokeinterface java.awt.geom.PathIterator.next:()V
6: .line 136
aload 5 /* coords */
iconst_0
daload
dstore 6 /* movx */
start local 6 // double movx
7: .line 137
aload 5 /* coords */
iconst_1
daload
dstore 8 /* movy */
start local 8 // double movy
8: .line 138
dload 6 /* movx */
dstore 10 /* curx */
start local 10 // double curx
9: .line 139
dload 8 /* movy */
dstore 12 /* cury */
start local 12 // double cury
10: .line 141
iconst_0
istore 18 /* crossings */
start local 18 // int crossings
11: .line 142
goto 59
12: .line 143
StackMap locals: java.awt.geom.PathIterator double double double[] double double double double top top top top int
StackMap stack:
aload 0 /* pi */
aload 5 /* coords */
invokeinterface java.awt.geom.PathIterator.currentSegment:([D)I
tableswitch { // 0 - 4
0: 13
1: 21
2: 30
3: 40
4: 51
default: 58
}
13: .line 145
StackMap locals:
StackMap stack:
dload 12 /* cury */
dload 8 /* movy */
dcmpl
ifeq 18
14: .line 146
iload 18 /* crossings */
dload 1 /* px */
dload 3 /* py */
15: .line 147
dload 10 /* curx */
dload 12 /* cury */
16: .line 148
dload 6 /* movx */
dload 8 /* movy */
17: .line 146
invokestatic sun.awt.geom.Curve.pointCrossingsForLine:(DDDDDD)I
iadd
istore 18 /* crossings */
18: .line 150
StackMap locals:
StackMap stack:
aload 5 /* coords */
iconst_0
daload
dup2
dstore 10 /* curx */
dstore 6 /* movx */
19: .line 151
aload 5 /* coords */
iconst_1
daload
dup2
dstore 12 /* cury */
dstore 8 /* movy */
20: .line 152
goto 58
21: .line 154
StackMap locals:
StackMap stack:
aload 5 /* coords */
iconst_0
daload
dstore 14 /* endx */
start local 14 // double endx
22: .line 155
aload 5 /* coords */
iconst_1
daload
dstore 16 /* endy */
start local 16 // double endy
23: .line 156
iload 18 /* crossings */
dload 1 /* px */
dload 3 /* py */
24: .line 157
dload 10 /* curx */
dload 12 /* cury */
25: .line 158
dload 14 /* endx */
dload 16 /* endy */
26: .line 156
invokestatic sun.awt.geom.Curve.pointCrossingsForLine:(DDDDDD)I
iadd
istore 18 /* crossings */
27: .line 159
dload 14 /* endx */
dstore 10 /* curx */
28: .line 160
dload 16 /* endy */
dstore 12 /* cury */
29: .line 161
goto 58
end local 16 // double endy
end local 14 // double endx
30: .line 163
StackMap locals:
StackMap stack:
aload 5 /* coords */
iconst_2
daload
dstore 14 /* endx */
start local 14 // double endx
31: .line 164
aload 5 /* coords */
iconst_3
daload
dstore 16 /* endy */
start local 16 // double endy
32: .line 165
iload 18 /* crossings */
dload 1 /* px */
dload 3 /* py */
33: .line 166
dload 10 /* curx */
dload 12 /* cury */
34: .line 167
aload 5 /* coords */
iconst_0
daload
aload 5 /* coords */
iconst_1
daload
35: .line 168
dload 14 /* endx */
dload 16 /* endy */
iconst_0
36: .line 165
invokestatic sun.awt.geom.Curve.pointCrossingsForQuad:(DDDDDDDDI)I
iadd
istore 18 /* crossings */
37: .line 169
dload 14 /* endx */
dstore 10 /* curx */
38: .line 170
dload 16 /* endy */
dstore 12 /* cury */
39: .line 171
goto 58
end local 16 // double endy
end local 14 // double endx
40: .line 173
StackMap locals:
StackMap stack:
aload 5 /* coords */
iconst_4
daload
dstore 14 /* endx */
start local 14 // double endx
41: .line 174
aload 5 /* coords */
iconst_5
daload
dstore 16 /* endy */
start local 16 // double endy
42: .line 175
iload 18 /* crossings */
dload 1 /* px */
dload 3 /* py */
43: .line 176
dload 10 /* curx */
dload 12 /* cury */
44: .line 177
aload 5 /* coords */
iconst_0
daload
aload 5 /* coords */
iconst_1
daload
45: .line 178
aload 5 /* coords */
iconst_2
daload
aload 5 /* coords */
iconst_3
daload
46: .line 179
dload 14 /* endx */
dload 16 /* endy */
iconst_0
47: .line 175
invokestatic sun.awt.geom.Curve.pointCrossingsForCubic:(DDDDDDDDDDI)I
iadd
istore 18 /* crossings */
48: .line 180
dload 14 /* endx */
dstore 10 /* curx */
49: .line 181
dload 16 /* endy */
dstore 12 /* cury */
50: .line 182
goto 58
end local 16 // double endy
end local 14 // double endx
51: .line 184
StackMap locals:
StackMap stack:
dload 12 /* cury */
dload 8 /* movy */
dcmpl
ifeq 56
52: .line 185
iload 18 /* crossings */
dload 1 /* px */
dload 3 /* py */
53: .line 186
dload 10 /* curx */
dload 12 /* cury */
54: .line 187
dload 6 /* movx */
dload 8 /* movy */
55: .line 185
invokestatic sun.awt.geom.Curve.pointCrossingsForLine:(DDDDDD)I
iadd
istore 18 /* crossings */
56: .line 189
StackMap locals:
StackMap stack:
dload 6 /* movx */
dstore 10 /* curx */
57: .line 190
dload 8 /* movy */
dstore 12 /* cury */
58: .line 193
StackMap locals:
StackMap stack:
aload 0 /* pi */
invokeinterface java.awt.geom.PathIterator.next:()V
59: .line 142
StackMap locals:
StackMap stack:
aload 0 /* pi */
invokeinterface java.awt.geom.PathIterator.isDone:()Z
ifeq 12
60: .line 195
dload 12 /* cury */
dload 8 /* movy */
dcmpl
ifeq 65
61: .line 196
iload 18 /* crossings */
dload 1 /* px */
dload 3 /* py */
62: .line 197
dload 10 /* curx */
dload 12 /* cury */
63: .line 198
dload 6 /* movx */
dload 8 /* movy */
64: .line 196
invokestatic sun.awt.geom.Curve.pointCrossingsForLine:(DDDDDD)I
iadd
istore 18 /* crossings */
65: .line 200
StackMap locals:
StackMap stack:
iload 18 /* crossings */
ireturn
end local 18 // int crossings
end local 12 // double cury
end local 10 // double curx
end local 8 // double movy
end local 6 // double movx
end local 5 // double[] coords
end local 3 // double py
end local 1 // double px
end local 0 // java.awt.geom.PathIterator pi
LocalVariableTable:
Start End Slot Name Signature
0 66 0 pi Ljava/awt/geom/PathIterator;
0 66 1 px D
0 66 3 py D
3 66 5 coords [D
7 66 6 movx D
8 66 8 movy D
9 66 10 curx D
10 66 12 cury D
22 30 14 endx D
31 40 14 endx D
41 51 14 endx D
23 30 16 endy D
32 40 16 endy D
42 51 16 endy D
11 66 18 crossings I
MethodParameters:
Name Flags
pi
px
py
public static int pointCrossingsForLine(double, double, double, double, double, double);
descriptor: (DDDDDD)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=8, locals=14, args_size=6
start local 0 // double px
start local 2 // double py
start local 4 // double x0
start local 6 // double y0
start local 8 // double x1
start local 10 // double y1
0: .line 214
dload 2 /* py */
dload 6 /* y0 */
dcmpg
ifge 1
dload 2 /* py */
dload 10 /* y1 */
dcmpg
ifge 1
iconst_0
ireturn
1: .line 215
StackMap locals:
StackMap stack:
dload 2 /* py */
dload 6 /* y0 */
dcmpl
iflt 2
dload 2 /* py */
dload 10 /* y1 */
dcmpl
iflt 2
iconst_0
ireturn
2: .line 217
StackMap locals:
StackMap stack:
dload 0 /* px */
dload 4 /* x0 */
dcmpl
iflt 3
dload 0 /* px */
dload 8 /* x1 */
dcmpl
iflt 3
iconst_0
ireturn
3: .line 218
StackMap locals:
StackMap stack:
dload 0 /* px */
dload 4 /* x0 */
dcmpg
ifge 6
dload 0 /* px */
dload 8 /* x1 */
dcmpg
ifge 6
dload 6 /* y0 */
dload 10 /* y1 */
dcmpg
ifge 4
iconst_1
goto 5
StackMap locals:
StackMap stack:
4: iconst_m1
StackMap locals:
StackMap stack: int
5: ireturn
6: .line 219
StackMap locals:
StackMap stack:
dload 4 /* x0 */
dload 2 /* py */
dload 6 /* y0 */
dsub
dload 8 /* x1 */
dload 4 /* x0 */
dsub
dmul
dload 10 /* y1 */
dload 6 /* y0 */
dsub
ddiv
dadd
dstore 12 /* xintercept */
start local 12 // double xintercept
7: .line 220
dload 0 /* px */
dload 12 /* xintercept */
dcmpl
iflt 8
iconst_0
ireturn
8: .line 221
StackMap locals: double
StackMap stack:
dload 6 /* y0 */
dload 10 /* y1 */
dcmpg
ifge 9
iconst_1
goto 10
StackMap locals:
StackMap stack:
9: iconst_m1
StackMap locals:
StackMap stack: int
10: ireturn
end local 12 // double xintercept
end local 10 // double y1
end local 8 // double x1
end local 6 // double y0
end local 4 // double x0
end local 2 // double py
end local 0 // double px
LocalVariableTable:
Start End Slot Name Signature
0 11 0 px D
0 11 2 py D
0 11 4 x0 D
0 11 6 y0 D
0 11 8 x1 D
0 11 10 y1 D
7 11 12 xintercept D
MethodParameters:
Name Flags
px
py
x0
y0
x1
y1
public static int pointCrossingsForQuad(double, double, double, double, double, double, double, double, int);
descriptor: (DDDDDDDDI)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=19, locals=25, args_size=9
start local 0 // double px
start local 2 // double py
start local 4 // double x0
start local 6 // double y0
start local 8 // double xc
start local 10 // double yc
start local 12 // double x1
start local 14 // double y1
start local 16 // int level
0: .line 239
dload 2 /* py */
dload 6 /* y0 */
dcmpg
ifge 1
dload 2 /* py */
dload 10 /* yc */
dcmpg
ifge 1
dload 2 /* py */
dload 14 /* y1 */
dcmpg
ifge 1
iconst_0
ireturn
1: .line 240
StackMap locals:
StackMap stack:
dload 2 /* py */
dload 6 /* y0 */
dcmpl
iflt 2
dload 2 /* py */
dload 10 /* yc */
dcmpl
iflt 2
dload 2 /* py */
dload 14 /* y1 */
dcmpl
iflt 2
iconst_0
ireturn
2: .line 242
StackMap locals:
StackMap stack:
dload 0 /* px */
dload 4 /* x0 */
dcmpl
iflt 3
dload 0 /* px */
dload 8 /* xc */
dcmpl
iflt 3
dload 0 /* px */
dload 12 /* x1 */
dcmpl
iflt 3
iconst_0
ireturn
3: .line 243
StackMap locals:
StackMap stack:
dload 0 /* px */
dload 4 /* x0 */
dcmpg
ifge 8
dload 0 /* px */
dload 8 /* xc */
dcmpg
ifge 8
dload 0 /* px */
dload 12 /* x1 */
dcmpg
ifge 8
4: .line 244
dload 2 /* py */
dload 6 /* y0 */
dcmpl
iflt 6
5: .line 245
dload 2 /* py */
dload 14 /* y1 */
dcmpg
ifge 7
iconst_1
ireturn
6: .line 248
StackMap locals:
StackMap stack:
dload 2 /* py */
dload 14 /* y1 */
dcmpl
iflt 7
iconst_m1
ireturn
7: .line 251
StackMap locals:
StackMap stack:
iconst_0
ireturn
8: .line 254
StackMap locals:
StackMap stack:
iload 16 /* level */
bipush 52
if_icmple 9
dload 0 /* px */
dload 2 /* py */
dload 4 /* x0 */
dload 6 /* y0 */
dload 12 /* x1 */
dload 14 /* y1 */
invokestatic sun.awt.geom.Curve.pointCrossingsForLine:(DDDDDD)I
ireturn
9: .line 255
StackMap locals:
StackMap stack:
dload 4 /* x0 */
dload 8 /* xc */
dadd
ldc 2.0
ddiv
dstore 17 /* x0c */
start local 17 // double x0c
10: .line 256
dload 6 /* y0 */
dload 10 /* yc */
dadd
ldc 2.0
ddiv
dstore 19 /* y0c */
start local 19 // double y0c
11: .line 257
dload 8 /* xc */
dload 12 /* x1 */
dadd
ldc 2.0
ddiv
dstore 21 /* xc1 */
start local 21 // double xc1
12: .line 258
dload 10 /* yc */
dload 14 /* y1 */
dadd
ldc 2.0
ddiv
dstore 23 /* yc1 */
start local 23 // double yc1
13: .line 259
dload 17 /* x0c */
dload 21 /* xc1 */
dadd
ldc 2.0
ddiv
dstore 8 /* xc */
14: .line 260
dload 19 /* y0c */
dload 23 /* yc1 */
dadd
ldc 2.0
ddiv
dstore 10 /* yc */
15: .line 261
dload 8 /* xc */
invokestatic java.lang.Double.isNaN:(D)Z
ifne 16
dload 10 /* yc */
invokestatic java.lang.Double.isNaN:(D)Z
ifeq 17
16: .line 265
StackMap locals: double double double double double double double double int double double double double
StackMap stack:
iconst_0
ireturn
17: .line 267
StackMap locals:
StackMap stack:
dload 0 /* px */
dload 2 /* py */
18: .line 268
dload 4 /* x0 */
dload 6 /* y0 */
dload 17 /* x0c */
dload 19 /* y0c */
dload 8 /* xc */
dload 10 /* yc */
19: .line 269
iload 16 /* level */
iconst_1
iadd
20: .line 267
invokestatic sun.awt.geom.Curve.pointCrossingsForQuad:(DDDDDDDDI)I
21: .line 270
dload 0 /* px */
dload 2 /* py */
22: .line 271
dload 8 /* xc */
dload 10 /* yc */
dload 21 /* xc1 */
dload 23 /* yc1 */
dload 12 /* x1 */
dload 14 /* y1 */
23: .line 272
iload 16 /* level */
iconst_1
iadd
24: .line 270
invokestatic sun.awt.geom.Curve.pointCrossingsForQuad:(DDDDDDDDI)I
25: .line 267
iadd
ireturn
end local 23 // double yc1
end local 21 // double xc1
end local 19 // double y0c
end local 17 // double x0c
end local 16 // int level
end local 14 // double y1
end local 12 // double x1
end local 10 // double yc
end local 8 // double xc
end local 6 // double y0
end local 4 // double x0
end local 2 // double py
end local 0 // double px
LocalVariableTable:
Start End Slot Name Signature
0 26 0 px D
0 26 2 py D
0 26 4 x0 D
0 26 6 y0 D
0 26 8 xc D
0 26 10 yc D
0 26 12 x1 D
0 26 14 y1 D
0 26 16 level I
10 26 17 x0c D
11 26 19 y0c D
12 26 21 xc1 D
13 26 23 yc1 D
MethodParameters:
Name Flags
px
py
x0
y0
xc
yc
x1
y1
level
public static int pointCrossingsForCubic(double, double, double, double, double, double, double, double, double, double, int);
descriptor: (DDDDDDDDDDI)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=23, locals=33, args_size=11
start local 0 // double px
start local 2 // double py
start local 4 // double x0
start local 6 // double y0
start local 8 // double xc0
start local 10 // double yc0
start local 12 // double xc1
start local 14 // double yc1
start local 16 // double x1
start local 18 // double y1
start local 20 // int level
0: .line 291
dload 2 /* py */
dload 6 /* y0 */
dcmpg
ifge 1
dload 2 /* py */
dload 10 /* yc0 */
dcmpg
ifge 1
dload 2 /* py */
dload 14 /* yc1 */
dcmpg
ifge 1
dload 2 /* py */
dload 18 /* y1 */
dcmpg
ifge 1
iconst_0
ireturn
1: .line 292
StackMap locals:
StackMap stack:
dload 2 /* py */
dload 6 /* y0 */
dcmpl
iflt 2
dload 2 /* py */
dload 10 /* yc0 */
dcmpl
iflt 2
dload 2 /* py */
dload 14 /* yc1 */
dcmpl
iflt 2
dload 2 /* py */
dload 18 /* y1 */
dcmpl
iflt 2
iconst_0
ireturn
2: .line 294
StackMap locals:
StackMap stack:
dload 0 /* px */
dload 4 /* x0 */
dcmpl
iflt 3
dload 0 /* px */
dload 8 /* xc0 */
dcmpl
iflt 3
dload 0 /* px */
dload 12 /* xc1 */
dcmpl
iflt 3
dload 0 /* px */
dload 16 /* x1 */
dcmpl
iflt 3
iconst_0
ireturn
3: .line 295
StackMap locals:
StackMap stack:
dload 0 /* px */
dload 4 /* x0 */
dcmpg
ifge 8
dload 0 /* px */
dload 8 /* xc0 */
dcmpg
ifge 8
dload 0 /* px */
dload 12 /* xc1 */
dcmpg
ifge 8
dload 0 /* px */
dload 16 /* x1 */
dcmpg
ifge 8
4: .line 296
dload 2 /* py */
dload 6 /* y0 */
dcmpl
iflt 6
5: .line 297
dload 2 /* py */
dload 18 /* y1 */
dcmpg
ifge 7
iconst_1
ireturn
6: .line 300
StackMap locals:
StackMap stack:
dload 2 /* py */
dload 18 /* y1 */
dcmpl
iflt 7
iconst_m1
ireturn
7: .line 303
StackMap locals:
StackMap stack:
iconst_0
ireturn
8: .line 306
StackMap locals:
StackMap stack:
iload 20 /* level */
bipush 52
if_icmple 9
dload 0 /* px */
dload 2 /* py */
dload 4 /* x0 */
dload 6 /* y0 */
dload 16 /* x1 */
dload 18 /* y1 */
invokestatic sun.awt.geom.Curve.pointCrossingsForLine:(DDDDDD)I
ireturn
9: .line 307
StackMap locals:
StackMap stack:
dload 8 /* xc0 */
dload 12 /* xc1 */
dadd
ldc 2.0
ddiv
dstore 21 /* xmid */
start local 21 // double xmid
10: .line 308
dload 10 /* yc0 */
dload 14 /* yc1 */
dadd
ldc 2.0
ddiv
dstore 23 /* ymid */
start local 23 // double ymid
11: .line 309
dload 4 /* x0 */
dload 8 /* xc0 */
dadd
ldc 2.0
ddiv
dstore 8 /* xc0 */
12: .line 310
dload 6 /* y0 */
dload 10 /* yc0 */
dadd
ldc 2.0
ddiv
dstore 10 /* yc0 */
13: .line 311
dload 12 /* xc1 */
dload 16 /* x1 */
dadd
ldc 2.0
ddiv
dstore 12 /* xc1 */
14: .line 312
dload 14 /* yc1 */
dload 18 /* y1 */
dadd
ldc 2.0
ddiv
dstore 14 /* yc1 */
15: .line 313
dload 8 /* xc0 */
dload 21 /* xmid */
dadd
ldc 2.0
ddiv
dstore 25 /* xc0m */
start local 25 // double xc0m
16: .line 314
dload 10 /* yc0 */
dload 23 /* ymid */
dadd
ldc 2.0
ddiv
dstore 27 /* yc0m */
start local 27 // double yc0m
17: .line 315
dload 21 /* xmid */
dload 12 /* xc1 */
dadd
ldc 2.0
ddiv
dstore 29 /* xmc1 */
start local 29 // double xmc1
18: .line 316
dload 23 /* ymid */
dload 14 /* yc1 */
dadd
ldc 2.0
ddiv
dstore 31 /* ymc1 */
start local 31 // double ymc1
19: .line 317
dload 25 /* xc0m */
dload 29 /* xmc1 */
dadd
ldc 2.0
ddiv
dstore 21 /* xmid */
20: .line 318
dload 27 /* yc0m */
dload 31 /* ymc1 */
dadd
ldc 2.0
ddiv
dstore 23 /* ymid */
21: .line 319
dload 21 /* xmid */
invokestatic java.lang.Double.isNaN:(D)Z
ifne 22
dload 23 /* ymid */
invokestatic java.lang.Double.isNaN:(D)Z
ifeq 23
22: .line 323
StackMap locals: double double double double double double double double double double int double double double double double double
StackMap stack:
iconst_0
ireturn
23: .line 325
StackMap locals:
StackMap stack:
dload 0 /* px */
dload 2 /* py */
24: .line 326
dload 4 /* x0 */
dload 6 /* y0 */
dload 8 /* xc0 */
dload 10 /* yc0 */
25: .line 327
dload 25 /* xc0m */
dload 27 /* yc0m */
dload 21 /* xmid */
dload 23 /* ymid */
iload 20 /* level */
iconst_1
iadd
26: .line 325
invokestatic sun.awt.geom.Curve.pointCrossingsForCubic:(DDDDDDDDDDI)I
27: .line 328
dload 0 /* px */
dload 2 /* py */
28: .line 329
dload 21 /* xmid */
dload 23 /* ymid */
dload 29 /* xmc1 */
dload 31 /* ymc1 */
29: .line 330
dload 12 /* xc1 */
dload 14 /* yc1 */
dload 16 /* x1 */
dload 18 /* y1 */
iload 20 /* level */
iconst_1
iadd
30: .line 328
invokestatic sun.awt.geom.Curve.pointCrossingsForCubic:(DDDDDDDDDDI)I
31: .line 325
iadd
ireturn
end local 31 // double ymc1
end local 29 // double xmc1
end local 27 // double yc0m
end local 25 // double xc0m
end local 23 // double ymid
end local 21 // double xmid
end local 20 // int level
end local 18 // double y1
end local 16 // double x1
end local 14 // double yc1
end local 12 // double xc1
end local 10 // double yc0
end local 8 // double xc0
end local 6 // double y0
end local 4 // double x0
end local 2 // double py
end local 0 // double px
LocalVariableTable:
Start End Slot Name Signature
0 32 0 px D
0 32 2 py D
0 32 4 x0 D
0 32 6 y0 D
0 32 8 xc0 D
0 32 10 yc0 D
0 32 12 xc1 D
0 32 14 yc1 D
0 32 16 x1 D
0 32 18 y1 D
0 32 20 level I
10 32 21 xmid D
11 32 23 ymid D
16 32 25 xc0m D
17 32 27 yc0m D
18 32 29 xmc1 D
19 32 31 ymc1 D
MethodParameters:
Name Flags
px
py
x0
y0
xc0
yc0
xc1
yc1
x1
y1
level
public static int rectCrossingsForPath(java.awt.geom.PathIterator, double, double, double, double);
descriptor: (Ljava/awt/geom/PathIterator;DDDD)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=26, locals=23, args_size=5
start local 0 // java.awt.geom.PathIterator pi
start local 1 // double rxmin
start local 3 // double rymin
start local 5 // double rxmax
start local 7 // double rymax
0: .line 381
dload 5 /* rxmax */
dload 1 /* rxmin */
dcmpg
ifle 1
dload 7 /* rymax */
dload 3 /* rymin */
dcmpg
ifgt 2
1: .line 382
StackMap locals:
StackMap stack:
iconst_0
ireturn
2: .line 384
StackMap locals:
StackMap stack:
aload 0 /* pi */
invokeinterface java.awt.geom.PathIterator.isDone:()Z
ifeq 4
3: .line 385
iconst_0
ireturn
4: .line 387
StackMap locals:
StackMap stack:
bipush 6
newarray 7
astore 9 /* coords */
start local 9 // double[] coords
5: .line 388
aload 0 /* pi */
aload 9 /* coords */
invokeinterface java.awt.geom.PathIterator.currentSegment:([D)I
ifeq 7
6: .line 389
new java.awt.geom.IllegalPathStateException
dup
ldc "missing initial moveto in path definition"
invokespecial java.awt.geom.IllegalPathStateException.<init>:(Ljava/lang/String;)V
athrow
7: .line 392
StackMap locals: double[]
StackMap stack:
aload 0 /* pi */
invokeinterface java.awt.geom.PathIterator.next:()V
8: .line 394
aload 9 /* coords */
iconst_0
daload
dup2
dstore 14 /* movx */
start local 14 // double movx
9: dstore 10 /* curx */
start local 10 // double curx
10: .line 395
aload 9 /* coords */
iconst_1
daload
dup2
dstore 16 /* movy */
start local 16 // double movy
11: dstore 12 /* cury */
start local 12 // double cury
12: .line 396
iconst_0
istore 22 /* crossings */
start local 22 // int crossings
13: .line 397
goto 71
14: .line 398
StackMap locals: java.awt.geom.PathIterator double double double double double[] double double double double top top top top int
StackMap stack:
aload 0 /* pi */
aload 9 /* coords */
invokeinterface java.awt.geom.PathIterator.currentSegment:([D)I
tableswitch { // 0 - 4
0: 15
1: 25
2: 36
3: 48
4: 61
default: 70
}
15: .line 400
StackMap locals:
StackMap stack:
dload 10 /* curx */
dload 14 /* movx */
dcmpl
ifne 16
dload 12 /* cury */
dload 16 /* movy */
dcmpl
ifeq 22
16: .line 401
StackMap locals:
StackMap stack:
iload 22 /* crossings */
17: .line 402
dload 1 /* rxmin */
dload 3 /* rymin */
18: .line 403
dload 5 /* rxmax */
dload 7 /* rymax */
19: .line 404
dload 10 /* curx */
dload 12 /* cury */
20: .line 405
dload 14 /* movx */
dload 16 /* movy */
21: .line 401
invokestatic sun.awt.geom.Curve.rectCrossingsForLine:(IDDDDDDDD)I
istore 22 /* crossings */
22: .line 409
StackMap locals:
StackMap stack:
aload 9 /* coords */
iconst_0
daload
dup2
dstore 10 /* curx */
dstore 14 /* movx */
23: .line 410
aload 9 /* coords */
iconst_1
daload
dup2
dstore 12 /* cury */
dstore 16 /* movy */
24: .line 411
goto 70
25: .line 413
StackMap locals:
StackMap stack:
aload 9 /* coords */
iconst_0
daload
dstore 18 /* endx */
start local 18 // double endx
26: .line 414
aload 9 /* coords */
iconst_1
daload
dstore 20 /* endy */
start local 20 // double endy
27: .line 415
iload 22 /* crossings */
28: .line 416
dload 1 /* rxmin */
dload 3 /* rymin */
29: .line 417
dload 5 /* rxmax */
dload 7 /* rymax */
30: .line 418
dload 10 /* curx */
dload 12 /* cury */
31: .line 419
dload 18 /* endx */
dload 20 /* endy */
32: .line 415
invokestatic sun.awt.geom.Curve.rectCrossingsForLine:(IDDDDDDDD)I
istore 22 /* crossings */
33: .line 420
dload 18 /* endx */
dstore 10 /* curx */
34: .line 421
dload 20 /* endy */
dstore 12 /* cury */
35: .line 422
goto 70
end local 20 // double endy
end local 18 // double endx
36: .line 424
StackMap locals:
StackMap stack:
aload 9 /* coords */
iconst_2
daload
dstore 18 /* endx */
start local 18 // double endx
37: .line 425
aload 9 /* coords */
iconst_3
daload
dstore 20 /* endy */
start local 20 // double endy
38: .line 426
iload 22 /* crossings */
39: .line 427
dload 1 /* rxmin */
dload 3 /* rymin */
40: .line 428
dload 5 /* rxmax */
dload 7 /* rymax */
41: .line 429
dload 10 /* curx */
dload 12 /* cury */
42: .line 430
aload 9 /* coords */
iconst_0
daload
aload 9 /* coords */
iconst_1
daload
43: .line 431
dload 18 /* endx */
dload 20 /* endy */
iconst_0
44: .line 426
invokestatic sun.awt.geom.Curve.rectCrossingsForQuad:(IDDDDDDDDDDI)I
istore 22 /* crossings */
45: .line 432
dload 18 /* endx */
dstore 10 /* curx */
46: .line 433
dload 20 /* endy */
dstore 12 /* cury */
47: .line 434
goto 70
end local 20 // double endy
end local 18 // double endx
48: .line 436
StackMap locals:
StackMap stack:
aload 9 /* coords */
iconst_4
daload
dstore 18 /* endx */
start local 18 // double endx
49: .line 437
aload 9 /* coords */
iconst_5
daload
dstore 20 /* endy */
start local 20 // double endy
50: .line 438
iload 22 /* crossings */
51: .line 439
dload 1 /* rxmin */
dload 3 /* rymin */
52: .line 440
dload 5 /* rxmax */
dload 7 /* rymax */
53: .line 441
dload 10 /* curx */
dload 12 /* cury */
54: .line 442
aload 9 /* coords */
iconst_0
daload
aload 9 /* coords */
iconst_1
daload
55: .line 443
aload 9 /* coords */
iconst_2
daload
aload 9 /* coords */
iconst_3
daload
56: .line 444
dload 18 /* endx */
dload 20 /* endy */
iconst_0
57: .line 438
invokestatic sun.awt.geom.Curve.rectCrossingsForCubic:(IDDDDDDDDDDDDI)I
istore 22 /* crossings */
58: .line 445
dload 18 /* endx */
dstore 10 /* curx */
59: .line 446
dload 20 /* endy */
dstore 12 /* cury */
60: .line 447
goto 70
end local 20 // double endy
end local 18 // double endx
61: .line 449
StackMap locals:
StackMap stack:
dload 10 /* curx */
dload 14 /* movx */
dcmpl
ifne 62
dload 12 /* cury */
dload 16 /* movy */
dcmpl
ifeq 68
62: .line 450
StackMap locals:
StackMap stack:
iload 22 /* crossings */
63: .line 451
dload 1 /* rxmin */
dload 3 /* rymin */
64: .line 452
dload 5 /* rxmax */
dload 7 /* rymax */
65: .line 453
dload 10 /* curx */
dload 12 /* cury */
66: .line 454
dload 14 /* movx */
dload 16 /* movy */
67: .line 450
invokestatic sun.awt.geom.Curve.rectCrossingsForLine:(IDDDDDDDD)I
istore 22 /* crossings */
68: .line 456
StackMap locals:
StackMap stack:
dload 14 /* movx */
dstore 10 /* curx */
69: .line 457
dload 16 /* movy */
dstore 12 /* cury */
70: .line 462
StackMap locals:
StackMap stack:
aload 0 /* pi */
invokeinterface java.awt.geom.PathIterator.next:()V
71: .line 397
StackMap locals:
StackMap stack:
iload 22 /* crossings */
ldc -2147483648
if_icmpeq 72
aload 0 /* pi */
invokeinterface java.awt.geom.PathIterator.isDone:()Z
ifeq 14
72: .line 464
StackMap locals:
StackMap stack:
iload 22 /* crossings */
ldc -2147483648
if_icmpeq 79
dload 10 /* curx */
dload 14 /* movx */
dcmpl
ifne 73
dload 12 /* cury */
dload 16 /* movy */
dcmpl
ifeq 79
73: .line 465
StackMap locals:
StackMap stack:
iload 22 /* crossings */
74: .line 466
dload 1 /* rxmin */
dload 3 /* rymin */
75: .line 467
dload 5 /* rxmax */
dload 7 /* rymax */
76: .line 468
dload 10 /* curx */
dload 12 /* cury */
77: .line 469
dload 14 /* movx */
dload 16 /* movy */
78: .line 465
invokestatic sun.awt.geom.Curve.rectCrossingsForLine:(IDDDDDDDD)I
istore 22 /* crossings */
79: .line 473
StackMap locals:
StackMap stack:
iload 22 /* crossings */
ireturn
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.PathIterator pi
LocalVariableTable:
Start End Slot Name Signature
0 80 0 pi Ljava/awt/geom/PathIterator;
0 80 1 rxmin D
0 80 3 rymin D
0 80 5 rxmax D
0 80 7 rymax D
5 80 9 coords [D
10 80 10 curx D
12 80 12 cury D
9 80 14 movx D
11 80 16 movy D
26 36 18 endx D
37 48 18 endx D
49 61 18 endx D
27 36 20 endy D
38 48 20 endy D
50 61 20 endy D
13 80 22 crossings I
MethodParameters:
Name Flags
pi
rxmin
rymin
rxmax
rymax
public static int rectCrossingsForLine(int, double, double, double, double, double, double, double, double);
descriptor: (IDDDDDDDD)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=8, locals=21, args_size=9
start local 0 // int crossings
start local 1 // double rxmin
start local 3 // double rymin
start local 5 // double rxmax
start local 7 // double rymax
start local 9 // double x0
start local 11 // double y0
start local 13 // double x1
start local 15 // double y1
0: .line 487
dload 11 /* y0 */
dload 7 /* rymax */
dcmpl
iflt 1
dload 15 /* y1 */
dload 7 /* rymax */
dcmpl
iflt 1
iload 0 /* crossings */
ireturn
1: .line 488
StackMap locals:
StackMap stack:
dload 11 /* y0 */
dload 3 /* rymin */
dcmpg
ifgt 2
dload 15 /* y1 */
dload 3 /* rymin */
dcmpg
ifgt 2
iload 0 /* crossings */
ireturn
2: .line 489
StackMap locals:
StackMap stack:
dload 9 /* x0 */
dload 1 /* rxmin */
dcmpg
ifgt 3
dload 13 /* x1 */
dload 1 /* rxmin */
dcmpg
ifgt 3
iload 0 /* crossings */
ireturn
3: .line 490
StackMap locals:
StackMap stack:
dload 9 /* x0 */
dload 5 /* rxmax */
dcmpl
iflt 12
dload 13 /* x1 */
dload 5 /* rxmax */
dcmpl
iflt 12
4: .line 496
dload 11 /* y0 */
dload 15 /* y1 */
dcmpg
ifge 8
5: .line 499
dload 11 /* y0 */
dload 3 /* rymin */
dcmpg
ifgt 6
iinc 0 /* crossings */ 1
6: .line 500
StackMap locals:
StackMap stack:
dload 15 /* y1 */
dload 7 /* rymax */
dcmpl
iflt 11
iinc 0 /* crossings */ 1
7: .line 501
goto 11
StackMap locals:
StackMap stack:
8: dload 15 /* y1 */
dload 11 /* y0 */
dcmpg
ifge 11
9: .line 504
dload 15 /* y1 */
dload 3 /* rymin */
dcmpg
ifgt 10
iinc 0 /* crossings */ -1
10: .line 505
StackMap locals:
StackMap stack:
dload 11 /* y0 */
dload 7 /* rymax */
dcmpl
iflt 11
iinc 0 /* crossings */ -1
11: .line 507
StackMap locals:
StackMap stack:
iload 0 /* crossings */
ireturn
12: .line 513
StackMap locals:
StackMap stack:
dload 9 /* x0 */
dload 1 /* rxmin */
dcmpl
ifle 13
dload 9 /* x0 */
dload 5 /* rxmax */
dcmpg
ifge 13
dload 11 /* y0 */
dload 3 /* rymin */
dcmpl
ifle 13
dload 11 /* y0 */
dload 7 /* rymax */
dcmpg
iflt 14
13: .line 514
StackMap locals:
StackMap stack:
dload 13 /* x1 */
dload 1 /* rxmin */
dcmpl
ifle 15
dload 13 /* x1 */
dload 5 /* rxmax */
dcmpg
ifge 15
dload 15 /* y1 */
dload 3 /* rymin */
dcmpl
ifle 15
dload 15 /* y1 */
dload 7 /* rymax */
dcmpg
ifge 15
14: .line 516
StackMap locals:
StackMap stack:
ldc -2147483648
ireturn
15: .line 520
StackMap locals:
StackMap stack:
dload 9 /* x0 */
dstore 17 /* xi0 */
start local 17 // double xi0
16: .line 521
dload 11 /* y0 */
dload 3 /* rymin */
dcmpg
ifge 19
17: .line 522
dload 17 /* xi0 */
dload 3 /* rymin */
dload 11 /* y0 */
dsub
dload 13 /* x1 */
dload 9 /* x0 */
dsub
dmul
dload 15 /* y1 */
dload 11 /* y0 */
dsub
ddiv
dadd
dstore 17 /* xi0 */
18: .line 523
goto 21
StackMap locals: double
StackMap stack:
19: dload 11 /* y0 */
dload 7 /* rymax */
dcmpl
ifle 21
20: .line 524
dload 17 /* xi0 */
dload 7 /* rymax */
dload 11 /* y0 */
dsub
dload 13 /* x1 */
dload 9 /* x0 */
dsub
dmul
dload 15 /* y1 */
dload 11 /* y0 */
dsub
ddiv
dadd
dstore 17 /* xi0 */
21: .line 526
StackMap locals:
StackMap stack:
dload 13 /* x1 */
dstore 19 /* xi1 */
start local 19 // double xi1
22: .line 527
dload 15 /* y1 */
dload 3 /* rymin */
dcmpg
ifge 25
23: .line 528
dload 19 /* xi1 */
dload 3 /* rymin */
dload 15 /* y1 */
dsub
dload 9 /* x0 */
dload 13 /* x1 */
dsub
dmul
dload 11 /* y0 */
dload 15 /* y1 */
dsub
ddiv
dadd
dstore 19 /* xi1 */
24: .line 529
goto 27
StackMap locals: double
StackMap stack:
25: dload 15 /* y1 */
dload 7 /* rymax */
dcmpl
ifle 27
26: .line 530
dload 19 /* xi1 */
dload 7 /* rymax */
dload 15 /* y1 */
dsub
dload 9 /* x0 */
dload 13 /* x1 */
dsub
dmul
dload 11 /* y0 */
dload 15 /* y1 */
dsub
ddiv
dadd
dstore 19 /* xi1 */
27: .line 532
StackMap locals:
StackMap stack:
dload 17 /* xi0 */
dload 1 /* rxmin */
dcmpg
ifgt 28
dload 19 /* xi1 */
dload 1 /* rxmin */
dcmpg
ifgt 28
iload 0 /* crossings */
ireturn
28: .line 533
StackMap locals:
StackMap stack:
dload 17 /* xi0 */
dload 5 /* rxmax */
dcmpl
iflt 37
dload 19 /* xi1 */
dload 5 /* rxmax */
dcmpl
iflt 37
29: .line 534
dload 11 /* y0 */
dload 15 /* y1 */
dcmpg
ifge 33
30: .line 537
dload 11 /* y0 */
dload 3 /* rymin */
dcmpg
ifgt 31
iinc 0 /* crossings */ 1
31: .line 538
StackMap locals:
StackMap stack:
dload 15 /* y1 */
dload 7 /* rymax */
dcmpl
iflt 36
iinc 0 /* crossings */ 1
32: .line 539
goto 36
StackMap locals:
StackMap stack:
33: dload 15 /* y1 */
dload 11 /* y0 */
dcmpg
ifge 36
34: .line 542
dload 15 /* y1 */
dload 3 /* rymin */
dcmpg
ifgt 35
iinc 0 /* crossings */ -1
35: .line 543
StackMap locals:
StackMap stack:
dload 11 /* y0 */
dload 7 /* rymax */
dcmpl
iflt 36
iinc 0 /* crossings */ -1
36: .line 545
StackMap locals:
StackMap stack:
iload 0 /* crossings */
ireturn
37: .line 547
StackMap locals:
StackMap stack:
ldc -2147483648
ireturn
end local 19 // double xi1
end local 17 // double xi0
end local 15 // double y1
end local 13 // double x1
end local 11 // double y0
end local 9 // double x0
end local 7 // double rymax
end local 5 // double rxmax
end local 3 // double rymin
end local 1 // double rxmin
end local 0 // int crossings
LocalVariableTable:
Start End Slot Name Signature
0 38 0 crossings I
0 38 1 rxmin D
0 38 3 rymin D
0 38 5 rxmax D
0 38 7 rymax D
0 38 9 x0 D
0 38 11 y0 D
0 38 13 x1 D
0 38 15 y1 D
16 38 17 xi0 D
22 38 19 xi1 D
MethodParameters:
Name Flags
crossings
rxmin
rymin
rxmax
rymax
x0
y0
x1
y1
public static int rectCrossingsForQuad(int, double, double, double, double, double, double, double, double, double, double, int);
descriptor: (IDDDDDDDDDDI)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=23, locals=30, args_size=12
start local 0 // int crossings
start local 1 // double rxmin
start local 3 // double rymin
start local 5 // double rxmax
start local 7 // double rymax
start local 9 // double x0
start local 11 // double y0
start local 13 // double xc
start local 15 // double yc
start local 17 // double x1
start local 19 // double y1
start local 21 // int level
0: .line 563
dload 11 /* y0 */
dload 7 /* rymax */
dcmpl
iflt 1
dload 15 /* yc */
dload 7 /* rymax */
dcmpl
iflt 1
dload 19 /* y1 */
dload 7 /* rymax */
dcmpl
iflt 1
iload 0 /* crossings */
ireturn
1: .line 564
StackMap locals:
StackMap stack:
dload 11 /* y0 */
dload 3 /* rymin */
dcmpg
ifgt 2
dload 15 /* yc */
dload 3 /* rymin */
dcmpg
ifgt 2
dload 19 /* y1 */
dload 3 /* rymin */
dcmpg
ifgt 2
iload 0 /* crossings */
ireturn
2: .line 565
StackMap locals:
StackMap stack:
dload 9 /* x0 */
dload 1 /* rxmin */
dcmpg
ifgt 3
dload 13 /* xc */
dload 1 /* rxmin */
dcmpg
ifgt 3
dload 17 /* x1 */
dload 1 /* rxmin */
dcmpg
ifgt 3
iload 0 /* crossings */
ireturn
3: .line 566
StackMap locals:
StackMap stack:
dload 9 /* x0 */
dload 5 /* rxmax */
dcmpl
iflt 12
dload 13 /* xc */
dload 5 /* rxmax */
dcmpl
iflt 12
dload 17 /* x1 */
dload 5 /* rxmax */
dcmpl
iflt 12
4: .line 575
dload 11 /* y0 */
dload 19 /* y1 */
dcmpg
ifge 8
5: .line 577
dload 11 /* y0 */
dload 3 /* rymin */
dcmpg
ifgt 6
dload 19 /* y1 */
dload 3 /* rymin */
dcmpl
ifle 6
iinc 0 /* crossings */ 1
6: .line 578
StackMap locals:
StackMap stack:
dload 11 /* y0 */
dload 7 /* rymax */
dcmpg
ifge 11
dload 19 /* y1 */
dload 7 /* rymax */
dcmpl
iflt 11
iinc 0 /* crossings */ 1
7: .line 579
goto 11
StackMap locals:
StackMap stack:
8: dload 19 /* y1 */
dload 11 /* y0 */
dcmpg
ifge 11
9: .line 581
dload 19 /* y1 */
dload 3 /* rymin */
dcmpg
ifgt 10
dload 11 /* y0 */
dload 3 /* rymin */
dcmpl
ifle 10
iinc 0 /* crossings */ -1
10: .line 582
StackMap locals:
StackMap stack:
dload 19 /* y1 */
dload 7 /* rymax */
dcmpg
ifge 11
dload 11 /* y0 */
dload 7 /* rymax */
dcmpl
iflt 11
iinc 0 /* crossings */ -1
11: .line 584
StackMap locals:
StackMap stack:
iload 0 /* crossings */
ireturn
12: .line 589
StackMap locals:
StackMap stack:
dload 9 /* x0 */
dload 5 /* rxmax */
dcmpg
ifge 13
dload 9 /* x0 */
dload 1 /* rxmin */
dcmpl
ifle 13
dload 11 /* y0 */
dload 7 /* rymax */
dcmpg
ifge 13
dload 11 /* y0 */
dload 3 /* rymin */
dcmpl
ifgt 14
13: .line 590
StackMap locals:
StackMap stack:
dload 17 /* x1 */
dload 5 /* rxmax */
dcmpg
ifge 15
dload 17 /* x1 */
dload 1 /* rxmin */
dcmpl
ifle 15
dload 19 /* y1 */
dload 7 /* rymax */
dcmpg
ifge 15
dload 19 /* y1 */
dload 3 /* rymin */
dcmpl
ifle 15
14: .line 592
StackMap locals:
StackMap stack:
ldc -2147483648
ireturn
15: .line 596
StackMap locals:
StackMap stack:
iload 21 /* level */
bipush 52
if_icmple 20
16: .line 597
iload 0 /* crossings */
17: .line 598
dload 1 /* rxmin */
dload 3 /* rymin */
dload 5 /* rxmax */
dload 7 /* rymax */
18: .line 599
dload 9 /* x0 */
dload 11 /* y0 */
dload 17 /* x1 */
dload 19 /* y1 */
19: .line 597
invokestatic sun.awt.geom.Curve.rectCrossingsForLine:(IDDDDDDDD)I
ireturn
20: .line 601
StackMap locals:
StackMap stack:
dload 9 /* x0 */
dload 13 /* xc */
dadd
ldc 2.0
ddiv
dstore 22 /* x0c */
start local 22 // double x0c
21: .line 602
dload 11 /* y0 */
dload 15 /* yc */
dadd
ldc 2.0
ddiv
dstore 24 /* y0c */
start local 24 // double y0c
22: .line 603
dload 13 /* xc */
dload 17 /* x1 */
dadd
ldc 2.0
ddiv
dstore 26 /* xc1 */
start local 26 // double xc1
23: .line 604
dload 15 /* yc */
dload 19 /* y1 */
dadd
ldc 2.0
ddiv
dstore 28 /* yc1 */
start local 28 // double yc1
24: .line 605
dload 22 /* x0c */
dload 26 /* xc1 */
dadd
ldc 2.0
ddiv
dstore 13 /* xc */
25: .line 606
dload 24 /* y0c */
dload 28 /* yc1 */
dadd
ldc 2.0
ddiv
dstore 15 /* yc */
26: .line 607
dload 13 /* xc */
invokestatic java.lang.Double.isNaN:(D)Z
ifne 27
dload 15 /* yc */
invokestatic java.lang.Double.isNaN:(D)Z
ifeq 28
27: .line 611
StackMap locals: int double double double double double double double double double double int double double double double
StackMap stack:
iconst_0
ireturn
28: .line 613
StackMap locals:
StackMap stack:
iload 0 /* crossings */
29: .line 614
dload 1 /* rxmin */
dload 3 /* rymin */
dload 5 /* rxmax */
dload 7 /* rymax */
30: .line 615
dload 9 /* x0 */
dload 11 /* y0 */
dload 22 /* x0c */
dload 24 /* y0c */
dload 13 /* xc */
dload 15 /* yc */
31: .line 616
iload 21 /* level */
iconst_1
iadd
32: .line 613
invokestatic sun.awt.geom.Curve.rectCrossingsForQuad:(IDDDDDDDDDDI)I
istore 0 /* crossings */
33: .line 617
iload 0 /* crossings */
ldc -2147483648
if_icmpeq 39
34: .line 618
iload 0 /* crossings */
35: .line 619
dload 1 /* rxmin */
dload 3 /* rymin */
dload 5 /* rxmax */
dload 7 /* rymax */
36: .line 620
dload 13 /* xc */
dload 15 /* yc */
dload 26 /* xc1 */
dload 28 /* yc1 */
dload 17 /* x1 */
dload 19 /* y1 */
37: .line 621
iload 21 /* level */
iconst_1
iadd
38: .line 618
invokestatic sun.awt.geom.Curve.rectCrossingsForQuad:(IDDDDDDDDDDI)I
istore 0 /* crossings */
39: .line 623
StackMap locals:
StackMap stack:
iload 0 /* crossings */
ireturn
end local 28 // double yc1
end local 26 // double xc1
end local 24 // double y0c
end local 22 // double x0c
end local 21 // int level
end local 19 // double y1
end local 17 // double x1
end local 15 // double yc
end local 13 // double xc
end local 11 // double y0
end local 9 // double x0
end local 7 // double rymax
end local 5 // double rxmax
end local 3 // double rymin
end local 1 // double rxmin
end local 0 // int crossings
LocalVariableTable:
Start End Slot Name Signature
0 40 0 crossings I
0 40 1 rxmin D
0 40 3 rymin D
0 40 5 rxmax D
0 40 7 rymax D
0 40 9 x0 D
0 40 11 y0 D
0 40 13 xc D
0 40 15 yc D
0 40 17 x1 D
0 40 19 y1 D
0 40 21 level I
21 40 22 x0c D
22 40 24 y0c D
23 40 26 xc1 D
24 40 28 yc1 D
MethodParameters:
Name Flags
crossings
rxmin
rymin
rxmax
rymax
x0
y0
xc
yc
x1
y1
level
public static int rectCrossingsForCubic(int, double, double, double, double, double, double, double, double, double, double, double, double, int);
descriptor: (IDDDDDDDDDDDDI)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=27, locals=38, args_size=14
start local 0 // int crossings
start local 1 // double rxmin
start local 3 // double rymin
start local 5 // double rxmax
start local 7 // double rymax
start local 9 // double x0
start local 11 // double y0
start local 13 // double xc0
start local 15 // double yc0
start local 17 // double xc1
start local 19 // double yc1
start local 21 // double x1
start local 23 // double y1
start local 25 // int level
0: .line 640
dload 11 /* y0 */
dload 7 /* rymax */
dcmpl
iflt 2
dload 15 /* yc0 */
dload 7 /* rymax */
dcmpl
iflt 2
dload 19 /* yc1 */
dload 7 /* rymax */
dcmpl
iflt 2
dload 23 /* y1 */
dload 7 /* rymax */
dcmpl
iflt 2
1: .line 641
iload 0 /* crossings */
ireturn
2: .line 643
StackMap locals:
StackMap stack:
dload 11 /* y0 */
dload 3 /* rymin */
dcmpg
ifgt 4
dload 15 /* yc0 */
dload 3 /* rymin */
dcmpg
ifgt 4
dload 19 /* yc1 */
dload 3 /* rymin */
dcmpg
ifgt 4
dload 23 /* y1 */
dload 3 /* rymin */
dcmpg
ifgt 4
3: .line 644
iload 0 /* crossings */
ireturn
4: .line 646
StackMap locals:
StackMap stack:
dload 9 /* x0 */
dload 1 /* rxmin */
dcmpg
ifgt 6
dload 13 /* xc0 */
dload 1 /* rxmin */
dcmpg
ifgt 6
dload 17 /* xc1 */
dload 1 /* rxmin */
dcmpg
ifgt 6
dload 21 /* x1 */
dload 1 /* rxmin */
dcmpg
ifgt 6
5: .line 647
iload 0 /* crossings */
ireturn
6: .line 649
StackMap locals:
StackMap stack:
dload 9 /* x0 */
dload 5 /* rxmax */
dcmpl
iflt 15
dload 13 /* xc0 */
dload 5 /* rxmax */
dcmpl
iflt 15
dload 17 /* xc1 */
dload 5 /* rxmax */
dcmpl
iflt 15
dload 21 /* x1 */
dload 5 /* rxmax */
dcmpl
iflt 15
7: .line 658
dload 11 /* y0 */
dload 23 /* y1 */
dcmpg
ifge 11
8: .line 660
dload 11 /* y0 */
dload 3 /* rymin */
dcmpg
ifgt 9
dload 23 /* y1 */
dload 3 /* rymin */
dcmpl
ifle 9
iinc 0 /* crossings */ 1
9: .line 661
StackMap locals:
StackMap stack:
dload 11 /* y0 */
dload 7 /* rymax */
dcmpg
ifge 14
dload 23 /* y1 */
dload 7 /* rymax */
dcmpl
iflt 14
iinc 0 /* crossings */ 1
10: .line 662
goto 14
StackMap locals:
StackMap stack:
11: dload 23 /* y1 */
dload 11 /* y0 */
dcmpg
ifge 14
12: .line 664
dload 23 /* y1 */
dload 3 /* rymin */
dcmpg
ifgt 13
dload 11 /* y0 */
dload 3 /* rymin */
dcmpl
ifle 13
iinc 0 /* crossings */ -1
13: .line 665
StackMap locals:
StackMap stack:
dload 23 /* y1 */
dload 7 /* rymax */
dcmpg
ifge 14
dload 11 /* y0 */
dload 7 /* rymax */
dcmpl
iflt 14
iinc 0 /* crossings */ -1
14: .line 667
StackMap locals:
StackMap stack:
iload 0 /* crossings */
ireturn
15: .line 672
StackMap locals:
StackMap stack:
dload 9 /* x0 */
dload 1 /* rxmin */
dcmpl
ifle 16
dload 9 /* x0 */
dload 5 /* rxmax */
dcmpg
ifge 16
dload 11 /* y0 */
dload 3 /* rymin */
dcmpl
ifle 16
dload 11 /* y0 */
dload 7 /* rymax */
dcmpg
iflt 17
16: .line 673
StackMap locals:
StackMap stack:
dload 21 /* x1 */
dload 1 /* rxmin */
dcmpl
ifle 18
dload 21 /* x1 */
dload 5 /* rxmax */
dcmpg
ifge 18
dload 23 /* y1 */
dload 3 /* rymin */
dcmpl
ifle 18
dload 23 /* y1 */
dload 7 /* rymax */
dcmpg
ifge 18
17: .line 675
StackMap locals:
StackMap stack:
ldc -2147483648
ireturn
18: .line 679
StackMap locals:
StackMap stack:
iload 25 /* level */
bipush 52
if_icmple 23
19: .line 680
iload 0 /* crossings */
20: .line 681
dload 1 /* rxmin */
dload 3 /* rymin */
dload 5 /* rxmax */
dload 7 /* rymax */
21: .line 682
dload 9 /* x0 */
dload 11 /* y0 */
dload 21 /* x1 */
dload 23 /* y1 */
22: .line 680
invokestatic sun.awt.geom.Curve.rectCrossingsForLine:(IDDDDDDDD)I
ireturn
23: .line 684
StackMap locals:
StackMap stack:
dload 13 /* xc0 */
dload 17 /* xc1 */
dadd
ldc 2.0
ddiv
dstore 26 /* xmid */
start local 26 // double xmid
24: .line 685
dload 15 /* yc0 */
dload 19 /* yc1 */
dadd
ldc 2.0
ddiv
dstore 28 /* ymid */
start local 28 // double ymid
25: .line 686
dload 9 /* x0 */
dload 13 /* xc0 */
dadd
ldc 2.0
ddiv
dstore 13 /* xc0 */
26: .line 687
dload 11 /* y0 */
dload 15 /* yc0 */
dadd
ldc 2.0
ddiv
dstore 15 /* yc0 */
27: .line 688
dload 17 /* xc1 */
dload 21 /* x1 */
dadd
ldc 2.0
ddiv
dstore 17 /* xc1 */
28: .line 689
dload 19 /* yc1 */
dload 23 /* y1 */
dadd
ldc 2.0
ddiv
dstore 19 /* yc1 */
29: .line 690
dload 13 /* xc0 */
dload 26 /* xmid */
dadd
ldc 2.0
ddiv
dstore 30 /* xc0m */
start local 30 // double xc0m
30: .line 691
dload 15 /* yc0 */
dload 28 /* ymid */
dadd
ldc 2.0
ddiv
dstore 32 /* yc0m */
start local 32 // double yc0m
31: .line 692
dload 26 /* xmid */
dload 17 /* xc1 */
dadd
ldc 2.0
ddiv
dstore 34 /* xmc1 */
start local 34 // double xmc1
32: .line 693
dload 28 /* ymid */
dload 19 /* yc1 */
dadd
ldc 2.0
ddiv
dstore 36 /* ymc1 */
start local 36 // double ymc1
33: .line 694
dload 30 /* xc0m */
dload 34 /* xmc1 */
dadd
ldc 2.0
ddiv
dstore 26 /* xmid */
34: .line 695
dload 32 /* yc0m */
dload 36 /* ymc1 */
dadd
ldc 2.0
ddiv
dstore 28 /* ymid */
35: .line 696
dload 26 /* xmid */
invokestatic java.lang.Double.isNaN:(D)Z
ifne 36
dload 28 /* ymid */
invokestatic java.lang.Double.isNaN:(D)Z
ifeq 37
36: .line 700
StackMap locals: int double double double double double double double double double double double double int double double double double double double
StackMap stack:
iconst_0
ireturn
37: .line 702
StackMap locals:
StackMap stack:
iload 0 /* crossings */
38: .line 703
dload 1 /* rxmin */
dload 3 /* rymin */
dload 5 /* rxmax */
dload 7 /* rymax */
39: .line 704
dload 9 /* x0 */
dload 11 /* y0 */
dload 13 /* xc0 */
dload 15 /* yc0 */
40: .line 705
dload 30 /* xc0m */
dload 32 /* yc0m */
dload 26 /* xmid */
dload 28 /* ymid */
iload 25 /* level */
iconst_1
iadd
41: .line 702
invokestatic sun.awt.geom.Curve.rectCrossingsForCubic:(IDDDDDDDDDDDDI)I
istore 0 /* crossings */
42: .line 706
iload 0 /* crossings */
ldc -2147483648
if_icmpeq 48
43: .line 707
iload 0 /* crossings */
44: .line 708
dload 1 /* rxmin */
dload 3 /* rymin */
dload 5 /* rxmax */
dload 7 /* rymax */
45: .line 709
dload 26 /* xmid */
dload 28 /* ymid */
dload 34 /* xmc1 */
dload 36 /* ymc1 */
46: .line 710
dload 17 /* xc1 */
dload 19 /* yc1 */
dload 21 /* x1 */
dload 23 /* y1 */
iload 25 /* level */
iconst_1
iadd
47: .line 707
invokestatic sun.awt.geom.Curve.rectCrossingsForCubic:(IDDDDDDDDDDDDI)I
istore 0 /* crossings */
48: .line 712
StackMap locals:
StackMap stack:
iload 0 /* crossings */
ireturn
end local 36 // double ymc1
end local 34 // double xmc1
end local 32 // double yc0m
end local 30 // double xc0m
end local 28 // double ymid
end local 26 // double xmid
end local 25 // int level
end local 23 // double y1
end local 21 // double x1
end local 19 // double yc1
end local 17 // double xc1
end local 15 // double yc0
end local 13 // double xc0
end local 11 // double y0
end local 9 // double x0
end local 7 // double rymax
end local 5 // double rxmax
end local 3 // double rymin
end local 1 // double rxmin
end local 0 // int crossings
LocalVariableTable:
Start End Slot Name Signature
0 49 0 crossings I
0 49 1 rxmin D
0 49 3 rymin D
0 49 5 rxmax D
0 49 7 rymax D
0 49 9 x0 D
0 49 11 y0 D
0 49 13 xc0 D
0 49 15 yc0 D
0 49 17 xc1 D
0 49 19 yc1 D
0 49 21 x1 D
0 49 23 y1 D
0 49 25 level I
24 49 26 xmid D
25 49 28 ymid D
30 49 30 xc0m D
31 49 32 yc0m D
32 49 34 xmc1 D
33 49 36 ymc1 D
MethodParameters:
Name Flags
crossings
rxmin
rymin
rxmax
rymax
x0
y0
xc0
yc0
xc1
yc1
x1
y1
level
public void <init>(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 // sun.awt.geom.Curve this
start local 1 // int direction
0: .line 715
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
1: .line 716
aload 0 /* this */
iload 1 /* direction */
putfield sun.awt.geom.Curve.direction:I
2: .line 717
return
end local 1 // int direction
end local 0 // sun.awt.geom.Curve this
LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/awt/geom/Curve;
0 3 1 direction I
MethodParameters:
Name Flags
direction
public final int getDirection();
descriptor: ()I
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 // sun.awt.geom.Curve this
0: .line 720
aload 0 /* this */
getfield sun.awt.geom.Curve.direction:I
ireturn
end local 0 // sun.awt.geom.Curve this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/awt/geom/Curve;
public final sun.awt.geom.Curve getWithDirection(int);
descriptor: (I)Lsun/awt/geom/Curve;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=2, locals=2, args_size=2
start local 0 // sun.awt.geom.Curve this
start local 1 // int direction
0: .line 724
aload 0 /* this */
getfield sun.awt.geom.Curve.direction:I
iload 1 /* direction */
if_icmpne 1
aload 0 /* this */
goto 2
StackMap locals:
StackMap stack:
1: aload 0 /* this */
invokevirtual sun.awt.geom.Curve.getReversedCurve:()Lsun/awt/geom/Curve;
StackMap locals:
StackMap stack: sun.awt.geom.Curve
2: areturn
end local 1 // int direction
end local 0 // sun.awt.geom.Curve this
LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/awt/geom/Curve;
0 3 1 direction I
MethodParameters:
Name Flags
direction
public static double round(double);
descriptor: (D)D
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 // double v
0: .line 729
dload 0 /* v */
dreturn
end local 0 // double v
LocalVariableTable:
Start End Slot Name Signature
0 1 0 v D
MethodParameters:
Name Flags
v
public static int orderof(double, double);
descriptor: (DD)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=4, args_size=2
start local 0 // double x1
start local 2 // double x2
0: .line 733
dload 0 /* x1 */
dload 2 /* x2 */
dcmpg
ifge 2
1: .line 734
iconst_m1
ireturn
2: .line 736
StackMap locals:
StackMap stack:
dload 0 /* x1 */
dload 2 /* x2 */
dcmpl
ifle 4
3: .line 737
iconst_1
ireturn
4: .line 739
StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 2 // double x2
end local 0 // double x1
LocalVariableTable:
Start End Slot Name Signature
0 5 0 x1 D
0 5 2 x2 D
MethodParameters:
Name Flags
x1
x2
public static long signeddiffbits(double, double);
descriptor: (DD)J
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=4, args_size=2
start local 0 // double y1
start local 2 // double y2
0: .line 743
dload 0 /* y1 */
invokestatic java.lang.Double.doubleToLongBits:(D)J
dload 2 /* y2 */
invokestatic java.lang.Double.doubleToLongBits:(D)J
lsub
lreturn
end local 2 // double y2
end local 0 // double y1
LocalVariableTable:
Start End Slot Name Signature
0 1 0 y1 D
0 1 2 y2 D
MethodParameters:
Name Flags
y1
y2
public static long diffbits(double, double);
descriptor: (DD)J
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=4, args_size=2
start local 0 // double y1
start local 2 // double y2
0: .line 746
dload 0 /* y1 */
invokestatic java.lang.Double.doubleToLongBits:(D)J
1: .line 747
dload 2 /* y2 */
invokestatic java.lang.Double.doubleToLongBits:(D)J
2: .line 746
lsub
invokestatic java.lang.Math.abs:(J)J
lreturn
end local 2 // double y2
end local 0 // double y1
LocalVariableTable:
Start End Slot Name Signature
0 3 0 y1 D
0 3 2 y2 D
MethodParameters:
Name Flags
y1
y2
public static double prev(double);
descriptor: (D)D
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=2, args_size=1
start local 0 // double v
0: .line 750
dload 0 /* v */
invokestatic java.lang.Double.doubleToLongBits:(D)J
lconst_1
lsub
invokestatic java.lang.Double.longBitsToDouble:(J)D
dreturn
end local 0 // double v
LocalVariableTable:
Start End Slot Name Signature
0 1 0 v D
MethodParameters:
Name Flags
v
public static double next(double);
descriptor: (D)D
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=2, args_size=1
start local 0 // double v
0: .line 753
dload 0 /* v */
invokestatic java.lang.Double.doubleToLongBits:(D)J
lconst_1
ladd
invokestatic java.lang.Double.longBitsToDouble:(J)D
dreturn
end local 0 // double v
LocalVariableTable:
Start End Slot Name Signature
0 1 0 v D
MethodParameters:
Name Flags
v
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 // sun.awt.geom.Curve this
0: .line 757
new java.lang.StringBuilder
dup
ldc "Curve["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
1: .line 758
aload 0 /* this */
invokevirtual sun.awt.geom.Curve.getOrder:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ", "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
2: .line 759
ldc "("
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0 /* this */
invokevirtual sun.awt.geom.Curve.getX0:()D
invokestatic sun.awt.geom.Curve.round:(D)D
invokevirtual java.lang.StringBuilder.append:(D)Ljava/lang/StringBuilder;
ldc ", "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0 /* this */
invokevirtual sun.awt.geom.Curve.getY0:()D
invokestatic sun.awt.geom.Curve.round:(D)D
invokevirtual java.lang.StringBuilder.append:(D)Ljava/lang/StringBuilder;
ldc "), "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
3: .line 760
aload 0 /* this */
invokevirtual sun.awt.geom.Curve.controlPointString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
4: .line 761
ldc "("
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0 /* this */
invokevirtual sun.awt.geom.Curve.getX1:()D
invokestatic sun.awt.geom.Curve.round:(D)D
invokevirtual java.lang.StringBuilder.append:(D)Ljava/lang/StringBuilder;
ldc ", "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0 /* this */
invokevirtual sun.awt.geom.Curve.getY1:()D
invokestatic sun.awt.geom.Curve.round:(D)D
invokevirtual java.lang.StringBuilder.append:(D)Ljava/lang/StringBuilder;
ldc "), "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
5: .line 762
aload 0 /* this */
getfield sun.awt.geom.Curve.direction:I
iconst_1
if_icmpne 6
ldc "D"
goto 7
StackMap locals:
StackMap stack: java.lang.StringBuilder
6: ldc "U"
StackMap locals: sun.awt.geom.Curve
StackMap stack: java.lang.StringBuilder java.lang.String
7: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
8: .line 763
ldc "]"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
9: .line 757
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 0 // sun.awt.geom.Curve this
LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lsun/awt/geom/Curve;
public java.lang.String controlPointString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 // sun.awt.geom.Curve this
0: .line 767
ldc ""
areturn
end local 0 // sun.awt.geom.Curve this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/awt/geom/Curve;
public abstract int getOrder();
descriptor: ()I
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract double getXTop();
descriptor: ()D
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract double getYTop();
descriptor: ()D
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract double getXBot();
descriptor: ()D
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract double getYBot();
descriptor: ()D
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract double getXMin();
descriptor: ()D
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract double getXMax();
descriptor: ()D
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract double getX0();
descriptor: ()D
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract double getY0();
descriptor: ()D
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract double getX1();
descriptor: ()D
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract double getY1();
descriptor: ()D
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract double XforY(double);
descriptor: (D)D
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
y
public abstract double TforY(double);
descriptor: (D)D
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
y
public abstract double XforT(double);
descriptor: (D)D
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
t
public abstract double YforT(double);
descriptor: (D)D
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
t
public abstract double dXforT(double, int);
descriptor: (DI)D
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
t
deriv
public abstract double dYforT(double, int);
descriptor: (DI)D
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
t
deriv
public abstract double nextVertical(double, double);
descriptor: (DD)D
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
t0
t1
public int crossingsFor(double, double);
descriptor: (DD)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=3
start local 0 // sun.awt.geom.Curve this
start local 1 // double x
start local 3 // double y
0: .line 795
dload 3 /* y */
aload 0 /* this */
invokevirtual sun.awt.geom.Curve.getYTop:()D
dcmpl
iflt 3
dload 3 /* y */
aload 0 /* this */
invokevirtual sun.awt.geom.Curve.getYBot:()D
dcmpg
ifge 3
1: .line 796
dload 1 /* x */
aload 0 /* this */
invokevirtual sun.awt.geom.Curve.getXMax:()D
dcmpg
ifge 3
dload 1 /* x */
aload 0 /* this */
invokevirtual sun.awt.geom.Curve.getXMin:()D
dcmpg
iflt 2
dload 1 /* x */
aload 0 /* this */
dload 3 /* y */
invokevirtual sun.awt.geom.Curve.XforY:(D)D
dcmpg
ifge 3
2: .line 797
StackMap locals:
StackMap stack:
iconst_1
ireturn
3: .line 800
StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 3 // double y
end local 1 // double x
end local 0 // sun.awt.geom.Curve this
LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/awt/geom/Curve;
0 4 1 x D
0 4 3 y D
MethodParameters:
Name Flags
x
y
public boolean accumulateCrossings(sun.awt.geom.Crossings);
descriptor: (Lsun/awt/geom/Crossings;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=26, args_size=2
start local 0 // sun.awt.geom.Curve this
start local 1 // sun.awt.geom.Crossings c
0: .line 804
aload 1 /* c */
invokevirtual sun.awt.geom.Crossings.getXHi:()D
dstore 2 /* xhi */
start local 2 // double xhi
1: .line 805
aload 0 /* this */
invokevirtual sun.awt.geom.Curve.getXMin:()D
dload 2 /* xhi */
dcmpl
iflt 3
2: .line 806
iconst_0
ireturn
3: .line 808
StackMap locals: double
StackMap stack:
aload 1 /* c */
invokevirtual sun.awt.geom.Crossings.getXLo:()D
dstore 4 /* xlo */
start local 4 // double xlo
4: .line 809
aload 1 /* c */
invokevirtual sun.awt.geom.Crossings.getYLo:()D
dstore 6 /* ylo */
start local 6 // double ylo
5: .line 810
aload 1 /* c */
invokevirtual sun.awt.geom.Crossings.getYHi:()D
dstore 8 /* yhi */
start local 8 // double yhi
6: .line 811
aload 0 /* this */
invokevirtual sun.awt.geom.Curve.getYTop:()D
dstore 10 /* y0 */
start local 10 // double y0
7: .line 812
aload 0 /* this */
invokevirtual sun.awt.geom.Curve.getYBot:()D
dstore 12 /* y1 */
start local 12 // double y1
8: .line 814
dload 10 /* y0 */
dload 6 /* ylo */
dcmpg
ifge 14
9: .line 815
dload 12 /* y1 */
dload 6 /* ylo */
dcmpg
ifgt 11
10: .line 816
iconst_0
ireturn
11: .line 818
StackMap locals: sun.awt.geom.Curve sun.awt.geom.Crossings double double double double double double
StackMap stack:
dload 6 /* ylo */
dstore 16 /* ystart */
start local 16 // double ystart
12: .line 819
aload 0 /* this */
dload 6 /* ylo */
invokevirtual sun.awt.geom.Curve.TforY:(D)D
dstore 14 /* tstart */
start local 14 // double tstart
13: .line 820
goto 18
end local 16 // double ystart
end local 14 // double tstart
14: .line 821
StackMap locals:
StackMap stack:
dload 10 /* y0 */
dload 8 /* yhi */
dcmpl
iflt 16
15: .line 822
iconst_0
ireturn
16: .line 824
StackMap locals:
StackMap stack:
dload 10 /* y0 */
dstore 16 /* ystart */
start local 16 // double ystart
17: .line 825
dconst_0
dstore 14 /* tstart */
start local 14 // double tstart
18: .line 827
StackMap locals: double double
StackMap stack:
dload 12 /* y1 */
dload 8 /* yhi */
dcmpl
ifle 22
19: .line 828
dload 8 /* yhi */
dstore 20 /* yend */
start local 20 // double yend
20: .line 829
aload 0 /* this */
dload 8 /* yhi */
invokevirtual sun.awt.geom.Curve.TforY:(D)D
dstore 18 /* tend */
start local 18 // double tend
21: .line 830
goto 24
end local 20 // double yend
end local 18 // double tend
22: .line 831
StackMap locals:
StackMap stack:
dload 12 /* y1 */
dstore 20 /* yend */
start local 20 // double yend
23: .line 832
dconst_1
dstore 18 /* tend */
start local 18 // double tend
24: .line 834
StackMap locals: double double
StackMap stack:
iconst_0
istore 22 /* hitLo */
start local 22 // boolean hitLo
25: .line 835
iconst_0
istore 23 /* hitHi */
start local 23 // boolean hitHi
26: .line 837
StackMap locals: int int
StackMap stack:
aload 0 /* this */
dload 14 /* tstart */
invokevirtual sun.awt.geom.Curve.XforT:(D)D
dstore 24 /* x */
start local 24 // double x
27: .line 838
dload 24 /* x */
dload 2 /* xhi */
dcmpg
ifge 32
28: .line 839
iload 23 /* hitHi */
ifne 29
dload 24 /* x */
dload 4 /* xlo */
dcmpl
ifle 30
29: .line 840
StackMap locals: double
StackMap stack:
iconst_1
ireturn
30: .line 842
StackMap locals:
StackMap stack:
iconst_1
istore 22 /* hitLo */
31: .line 843
goto 35
32: .line 844
StackMap locals:
StackMap stack:
iload 22 /* hitLo */
ifeq 34
33: .line 845
iconst_1
ireturn
34: .line 847
StackMap locals:
StackMap stack:
iconst_1
istore 23 /* hitHi */
35: .line 849
StackMap locals:
StackMap stack:
dload 14 /* tstart */
dload 18 /* tend */
dcmpl
iflt 37
36: .line 850
goto 39
37: .line 852
StackMap locals:
StackMap stack:
aload 0 /* this */
dload 14 /* tstart */
dload 18 /* tend */
invokevirtual sun.awt.geom.Curve.nextVertical:(DD)D
dstore 14 /* tstart */
end local 24 // double x
38: .line 836
goto 26
39: .line 854
StackMap locals:
StackMap stack:
iload 22 /* hitLo */
ifeq 41
40: .line 855
aload 1 /* c */
dload 16 /* ystart */
dload 20 /* yend */
aload 0 /* this */
getfield sun.awt.geom.Curve.direction:I
invokevirtual sun.awt.geom.Crossings.record:(DDI)V
41: .line 857
StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 23 // boolean hitHi
end local 22 // boolean hitLo
end local 20 // double yend
end local 18 // double tend
end local 16 // double ystart
end local 14 // double tstart
end local 12 // double y1
end local 10 // double y0
end local 8 // double yhi
end local 6 // double ylo
end local 4 // double xlo
end local 2 // double xhi
end local 1 // sun.awt.geom.Crossings c
end local 0 // sun.awt.geom.Curve this
LocalVariableTable:
Start End Slot Name Signature
0 42 0 this Lsun/awt/geom/Curve;
0 42 1 c Lsun/awt/geom/Crossings;
1 42 2 xhi D
4 42 4 xlo D
5 42 6 ylo D
6 42 8 yhi D
7 42 10 y0 D
8 42 12 y1 D
13 14 14 tstart D
18 42 14 tstart D
12 14 16 ystart D
17 42 16 ystart D
21 22 18 tend D
24 42 18 tend D
20 22 20 yend D
23 42 20 yend D
25 42 22 hitLo Z
26 42 23 hitHi Z
27 38 24 x D
MethodParameters:
Name Flags
c
public abstract void enlarge(java.awt.geom.Rectangle2D);
descriptor: (Ljava/awt/geom/Rectangle2D;)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
r
public sun.awt.geom.Curve getSubCurve(double, double);
descriptor: (DD)Lsun/awt/geom/Curve;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=5, args_size=3
start local 0 // sun.awt.geom.Curve this
start local 1 // double ystart
start local 3 // double yend
0: .line 863
aload 0 /* this */
dload 1 /* ystart */
dload 3 /* yend */
aload 0 /* this */
getfield sun.awt.geom.Curve.direction:I
invokevirtual sun.awt.geom.Curve.getSubCurve:(DDI)Lsun/awt/geom/Curve;
areturn
end local 3 // double yend
end local 1 // double ystart
end local 0 // sun.awt.geom.Curve this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/awt/geom/Curve;
0 1 1 ystart D
0 1 3 yend D
MethodParameters:
Name Flags
ystart
yend
public abstract sun.awt.geom.Curve getReversedCurve();
descriptor: ()Lsun/awt/geom/Curve;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract sun.awt.geom.Curve getSubCurve(double, double, int);
descriptor: (DDI)Lsun/awt/geom/Curve;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
ystart
yend
dir
public int compareTo(sun.awt.geom.Curve, double[]);
descriptor: (Lsun/awt/geom/Curve;[D)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=31, locals=40, args_size=3
start local 0 // sun.awt.geom.Curve this
start local 1 // sun.awt.geom.Curve that
start local 2 // double[] yrange
0: .line 874
aload 2 /* yrange */
iconst_0
daload
dstore 3 /* y0 */
start local 3 // double y0
1: .line 875
aload 2 /* yrange */
iconst_1
daload
dstore 5 /* y1 */
start local 5 // double y1
2: .line 876
dload 5 /* y1 */
aload 0 /* this */
invokevirtual sun.awt.geom.Curve.getYBot:()D
invokestatic java.lang.Math.min:(DD)D
aload 1 /* that */
invokevirtual sun.awt.geom.Curve.getYBot:()D
invokestatic java.lang.Math.min:(DD)D
dstore 5 /* y1 */
3: .line 877
dload 5 /* y1 */
aload 2 /* yrange */
iconst_0
daload
dcmpg
ifgt 8
4: .line 878
getstatic java.lang.System.err:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "this == "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0 /* this */
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
5: .line 879
getstatic java.lang.System.err:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "that == "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1 /* that */
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
6: .line 880
getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "target range = "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2 /* yrange */
iconst_0
daload
invokevirtual java.lang.StringBuilder.append:(D)Ljava/lang/StringBuilder;
ldc "=>"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 2 /* yrange */
iconst_1
daload
invokevirtual java.lang.StringBuilder.append:(D)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
7: .line 881
new java.lang.InternalError
dup
new java.lang.StringBuilder
dup
ldc "backstepping from "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2 /* yrange */
iconst_0
daload
invokevirtual java.lang.StringBuilder.append:(D)Ljava/lang/StringBuilder;
ldc " to "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
dload 5 /* y1 */
invokevirtual java.lang.StringBuilder.append:(D)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
athrow
8: .line 883
StackMap locals: double double
StackMap stack:
aload 2 /* yrange */
iconst_1
dload 5 /* y1 */
dastore
9: .line 884
aload 0 /* this */
invokevirtual sun.awt.geom.Curve.getXMax:()D
aload 1 /* that */
invokevirtual sun.awt.geom.Curve.getXMin:()D
dcmpg
ifgt 13
10: .line 885
aload 0 /* this */
invokevirtual sun.awt.geom.Curve.getXMin:()D
aload 1 /* that */
invokevirtual sun.awt.geom.Curve.getXMax:()D
dcmpl
ifne 12
11: .line 886
iconst_0
ireturn
12: .line 888
StackMap locals:
StackMap stack:
iconst_m1
ireturn
13: .line 890
StackMap locals:
StackMap stack:
aload 0 /* this */
invokevirtual sun.awt.geom.Curve.getXMin:()D
aload 1 /* that */
invokevirtual sun.awt.geom.Curve.getXMax:()D
dcmpl
iflt 15
14: .line 891
iconst_1
ireturn
15: .line 899
StackMap locals:
StackMap stack:
aload 0 /* this */
dload 3 /* y0 */
invokevirtual sun.awt.geom.Curve.TforY:(D)D
dstore 7 /* s0 */
start local 7 // double s0
16: .line 900
aload 0 /* this */
dload 7 /* s0 */
invokevirtual sun.awt.geom.Curve.YforT:(D)D
dstore 9 /* ys0 */
start local 9 // double ys0
17: .line 901
dload 9 /* ys0 */
dload 3 /* y0 */
dcmpg
ifge 20
18: .line 902
aload 0 /* this */
dload 7 /* s0 */
dload 9 /* ys0 */
dload 3 /* y0 */
invokevirtual sun.awt.geom.Curve.refineTforY:(DDD)D
dstore 7 /* s0 */
19: .line 903
aload 0 /* this */
dload 7 /* s0 */
invokevirtual sun.awt.geom.Curve.YforT:(D)D
dstore 9 /* ys0 */
20: .line 905
StackMap locals: double double
StackMap stack:
aload 0 /* this */
dload 5 /* y1 */
invokevirtual sun.awt.geom.Curve.TforY:(D)D
dstore 11 /* s1 */
start local 11 // double s1
21: .line 906
aload 0 /* this */
dload 11 /* s1 */
invokevirtual sun.awt.geom.Curve.YforT:(D)D
dload 3 /* y0 */
dcmpg
ifge 23
22: .line 907
aload 0 /* this */
dload 11 /* s1 */
aload 0 /* this */
dload 11 /* s1 */
invokevirtual sun.awt.geom.Curve.YforT:(D)D
dload 3 /* y0 */
invokevirtual sun.awt.geom.Curve.refineTforY:(DDD)D
dstore 11 /* s1 */
23: .line 910
StackMap locals: double
StackMap stack:
aload 1 /* that */
dload 3 /* y0 */
invokevirtual sun.awt.geom.Curve.TforY:(D)D
dstore 13 /* t0 */
start local 13 // double t0
24: .line 911
aload 1 /* that */
dload 13 /* t0 */
invokevirtual sun.awt.geom.Curve.YforT:(D)D
dstore 15 /* yt0 */
start local 15 // double yt0
25: .line 912
dload 15 /* yt0 */
dload 3 /* y0 */
dcmpg
ifge 28
26: .line 913
aload 1 /* that */
dload 13 /* t0 */
dload 15 /* yt0 */
dload 3 /* y0 */
invokevirtual sun.awt.geom.Curve.refineTforY:(DDD)D
dstore 13 /* t0 */
27: .line 914
aload 1 /* that */
dload 13 /* t0 */
invokevirtual sun.awt.geom.Curve.YforT:(D)D
dstore 15 /* yt0 */
28: .line 916
StackMap locals: double double
StackMap stack:
aload 1 /* that */
dload 5 /* y1 */
invokevirtual sun.awt.geom.Curve.TforY:(D)D
dstore 17 /* t1 */
start local 17 // double t1
29: .line 917
aload 1 /* that */
dload 17 /* t1 */
invokevirtual sun.awt.geom.Curve.YforT:(D)D
dload 3 /* y0 */
dcmpg
ifge 31
30: .line 918
aload 1 /* that */
dload 17 /* t1 */
aload 1 /* that */
dload 17 /* t1 */
invokevirtual sun.awt.geom.Curve.YforT:(D)D
dload 3 /* y0 */
invokevirtual sun.awt.geom.Curve.refineTforY:(DDD)D
dstore 17 /* t1 */
31: .line 921
StackMap locals: double
StackMap stack:
aload 0 /* this */
dload 7 /* s0 */
invokevirtual sun.awt.geom.Curve.XforT:(D)D
dstore 19 /* xs0 */
start local 19 // double xs0
32: .line 922
aload 1 /* that */
dload 13 /* t0 */
invokevirtual sun.awt.geom.Curve.XforT:(D)D
dstore 21 /* xt0 */
start local 21 // double xt0
33: .line 923
dload 3 /* y0 */
invokestatic java.lang.Math.abs:(D)D
dload 5 /* y1 */
invokestatic java.lang.Math.abs:(D)D
invokestatic java.lang.Math.max:(DD)D
dstore 23 /* scale */
start local 23 // double scale
34: .line 924
dload 23 /* scale */
ldc 1.0E-14
dmul
ldc 1.0E-300
invokestatic java.lang.Math.max:(DD)D
dstore 25 /* ymin */
start local 25 // double ymin
35: .line 925
aload 0 /* this */
dload 19 /* xs0 */
dload 21 /* xt0 */
invokevirtual sun.awt.geom.Curve.fairlyClose:(DD)Z
ifeq 58
36: .line 926
dload 25 /* ymin */
dstore 27 /* bump */
start local 27 // double bump
37: .line 927
dload 25 /* ymin */
ldc 1.0E13
dmul
dload 5 /* y1 */
dload 3 /* y0 */
dsub
ldc 0.1
dmul
invokestatic java.lang.Math.min:(DD)D
dstore 29 /* maxbump */
start local 29 // double maxbump
38: .line 928
dload 3 /* y0 */
dload 27 /* bump */
dadd
dstore 31 /* y */
start local 31 // double y
39: .line 929
goto 53
40: .line 930
StackMap locals: sun.awt.geom.Curve sun.awt.geom.Curve double[] double double double double double double double double double double double double double double double
StackMap stack:
aload 0 /* this */
aload 0 /* this */
dload 31 /* y */
invokevirtual sun.awt.geom.Curve.XforY:(D)D
aload 1 /* that */
dload 31 /* y */
invokevirtual sun.awt.geom.Curve.XforY:(D)D
invokevirtual sun.awt.geom.Curve.fairlyClose:(DD)Z
ifeq 44
41: .line 931
dload 27 /* bump */
ldc 2.0
dmul
dup2
dstore 27 /* bump */
dload 29 /* maxbump */
dcmpl
ifle 52
42: .line 932
dload 29 /* maxbump */
dstore 27 /* bump */
43: .line 934
goto 52
44: .line 935
StackMap locals:
StackMap stack:
dload 31 /* y */
dload 27 /* bump */
dsub
dstore 31 /* y */
45: .line 937
StackMap locals:
StackMap stack:
dload 27 /* bump */
ldc 2.0
ddiv
dstore 27 /* bump */
46: .line 938
dload 31 /* y */
dload 27 /* bump */
dadd
dstore 33 /* newy */
start local 33 // double newy
47: .line 939
dload 33 /* newy */
dload 31 /* y */
dcmpg
ifgt 49
48: .line 940
goto 54
49: .line 942
StackMap locals: double
StackMap stack:
aload 0 /* this */
aload 0 /* this */
dload 33 /* newy */
invokevirtual sun.awt.geom.Curve.XforY:(D)D
aload 1 /* that */
dload 33 /* newy */
invokevirtual sun.awt.geom.Curve.XforY:(D)D
invokevirtual sun.awt.geom.Curve.fairlyClose:(DD)Z
ifeq 45
50: .line 943
dload 33 /* newy */
dstore 31 /* y */
end local 33 // double newy
51: .line 936
goto 45
52: .line 948
StackMap locals:
StackMap stack:
dload 31 /* y */
dload 27 /* bump */
dadd
dstore 31 /* y */
53: .line 929
StackMap locals:
StackMap stack:
dload 31 /* y */
dload 5 /* y1 */
dcmpg
ifle 40
54: .line 950
StackMap locals:
StackMap stack:
dload 31 /* y */
dload 3 /* y0 */
dcmpl
ifle 58
55: .line 951
dload 31 /* y */
dload 5 /* y1 */
dcmpg
ifge 57
56: .line 952
aload 2 /* yrange */
iconst_1
dload 31 /* y */
dastore
57: .line 954
StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 31 // double y
end local 29 // double maxbump
end local 27 // double bump
58: .line 958
StackMap locals:
StackMap stack:
dload 25 /* ymin */
dconst_0
dcmpg
ifgt 96
59: .line 959
getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "ymin = "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
dload 25 /* ymin */
invokevirtual java.lang.StringBuilder.append:(D)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
60: .line 965
goto 96
61: .line 966
StackMap locals:
StackMap stack:
aload 0 /* this */
dload 7 /* s0 */
dload 11 /* s1 */
invokevirtual sun.awt.geom.Curve.nextVertical:(DD)D
dstore 27 /* sh */
start local 27 // double sh
62: .line 967
aload 0 /* this */
dload 27 /* sh */
invokevirtual sun.awt.geom.Curve.XforT:(D)D
dstore 29 /* xsh */
start local 29 // double xsh
63: .line 968
aload 0 /* this */
dload 27 /* sh */
invokevirtual sun.awt.geom.Curve.YforT:(D)D
dstore 31 /* ysh */
start local 31 // double ysh
64: .line 969
aload 1 /* that */
dload 13 /* t0 */
dload 17 /* t1 */
invokevirtual sun.awt.geom.Curve.nextVertical:(DD)D
dstore 33 /* th */
start local 33 // double th
65: .line 970
aload 1 /* that */
dload 33 /* th */
invokevirtual sun.awt.geom.Curve.XforT:(D)D
dstore 35 /* xth */
start local 35 // double xth
66: .line 971
aload 1 /* that */
dload 33 /* th */
invokevirtual sun.awt.geom.Curve.YforT:(D)D
dstore 37 /* yth */
start local 37 // double yth
67: .line 977
aload 0 /* this */
aload 1 /* that */
aload 2 /* yrange */
dload 25 /* ymin */
iconst_0
iconst_0
68: .line 978
dload 7 /* s0 */
dload 19 /* xs0 */
dload 9 /* ys0 */
dload 27 /* sh */
dload 29 /* xsh */
dload 31 /* ysh */
69: .line 979
dload 13 /* t0 */
dload 21 /* xt0 */
dload 15 /* yt0 */
dload 33 /* th */
dload 35 /* xth */
dload 37 /* yth */
70: .line 977
invokevirtual sun.awt.geom.Curve.findIntersect:(Lsun/awt/geom/Curve;[DDIIDDDDDDDDDDDD)Z
71: .line 979
ifeq 80
72: .line 980
goto 97
73: .line 982
StackMap locals: sun.awt.geom.Curve sun.awt.geom.Curve double[] double double double double double double double double double double double double double double double double double double
StackMap stack: java.lang.Throwable
astore 39 /* t */
start local 39 // java.lang.Throwable t
74: .line 983
getstatic java.lang.System.err:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "Error: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 39 /* t */
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
75: .line 984
getstatic java.lang.System.err:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "y range was "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2 /* yrange */
iconst_0
daload
invokevirtual java.lang.StringBuilder.append:(D)Ljava/lang/StringBuilder;
ldc "=>"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 2 /* yrange */
iconst_1
daload
invokevirtual java.lang.StringBuilder.append:(D)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
76: .line 985
getstatic java.lang.System.err:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "s y range is "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
dload 9 /* ys0 */
invokevirtual java.lang.StringBuilder.append:(D)Ljava/lang/StringBuilder;
ldc "=>"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
dload 31 /* ysh */
invokevirtual java.lang.StringBuilder.append:(D)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
77: .line 986
getstatic java.lang.System.err:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "t y range is "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
dload 15 /* yt0 */
invokevirtual java.lang.StringBuilder.append:(D)Ljava/lang/StringBuilder;
ldc "=>"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
dload 37 /* yth */
invokevirtual java.lang.StringBuilder.append:(D)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
78: .line 987
getstatic java.lang.System.err:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "ymin is "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
dload 25 /* ymin */
invokevirtual java.lang.StringBuilder.append:(D)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
79: .line 988
iconst_0
ireturn
end local 39 // java.lang.Throwable t
80: .line 990
StackMap locals:
StackMap stack:
dload 31 /* ysh */
dload 37 /* yth */
dcmpg
ifge 89
81: .line 991
dload 31 /* ysh */
aload 2 /* yrange */
iconst_0
daload
dcmpl
ifle 85
82: .line 992
dload 31 /* ysh */
aload 2 /* yrange */
iconst_1
daload
dcmpg
ifge 97
83: .line 993
aload 2 /* yrange */
iconst_1
dload 31 /* ysh */
dastore
84: .line 995
goto 97
85: .line 997
StackMap locals:
StackMap stack:
dload 27 /* sh */
dstore 7 /* s0 */
86: .line 998
dload 29 /* xsh */
dstore 19 /* xs0 */
87: .line 999
dload 31 /* ysh */
dstore 9 /* ys0 */
88: .line 1000
goto 96
89: .line 1001
StackMap locals:
StackMap stack:
dload 37 /* yth */
aload 2 /* yrange */
iconst_0
daload
dcmpl
ifle 93
90: .line 1002
dload 37 /* yth */
aload 2 /* yrange */
iconst_1
daload
dcmpg
ifge 97
91: .line 1003
aload 2 /* yrange */
iconst_1
dload 37 /* yth */
dastore
92: .line 1005
goto 97
93: .line 1007
StackMap locals:
StackMap stack:
dload 33 /* th */
dstore 13 /* t0 */
94: .line 1008
dload 35 /* xth */
dstore 21 /* xt0 */
95: .line 1009
dload 37 /* yth */
dstore 15 /* yt0 */
end local 37 // double yth
end local 35 // double xth
end local 33 // double th
end local 31 // double ysh
end local 29 // double xsh
end local 27 // double sh
96: .line 965
StackMap locals: sun.awt.geom.Curve sun.awt.geom.Curve double[] double double double double double double double double double double double double
StackMap stack:
dload 7 /* s0 */
dload 11 /* s1 */
dcmpg
ifge 97
dload 13 /* t0 */
dload 17 /* t1 */
dcmpg
iflt 61
97: .line 1012
StackMap locals:
StackMap stack:
aload 2 /* yrange */
iconst_0
daload
aload 2 /* yrange */
iconst_1
daload
dadd
ldc 2.0
ddiv
dstore 27 /* ymid */
start local 27 // double ymid
98: .line 1028
aload 0 /* this */
dload 27 /* ymid */
invokevirtual sun.awt.geom.Curve.XforY:(D)D
aload 1 /* that */
dload 27 /* ymid */
invokevirtual sun.awt.geom.Curve.XforY:(D)D
invokestatic sun.awt.geom.Curve.orderof:(DD)I
ireturn
end local 27 // double ymid
end local 25 // double ymin
end local 23 // double scale
end local 21 // double xt0
end local 19 // double xs0
end local 17 // double t1
end local 15 // double yt0
end local 13 // double t0
end local 11 // double s1
end local 9 // double ys0
end local 7 // double s0
end local 5 // double y1
end local 3 // double y0
end local 2 // double[] yrange
end local 1 // sun.awt.geom.Curve that
end local 0 // sun.awt.geom.Curve this
LocalVariableTable:
Start End Slot Name Signature
0 99 0 this Lsun/awt/geom/Curve;
0 99 1 that Lsun/awt/geom/Curve;
0 99 2 yrange [D
1 99 3 y0 D
2 99 5 y1 D
16 99 7 s0 D
17 99 9 ys0 D
21 99 11 s1 D
24 99 13 t0 D
25 99 15 yt0 D
29 99 17 t1 D
32 99 19 xs0 D
33 99 21 xt0 D
34 99 23 scale D
35 99 25 ymin D
37 58 27 bump D
38 58 29 maxbump D
39 58 31 y D
47 51 33 newy D
62 96 27 sh D
63 96 29 xsh D
64 96 31 ysh D
65 96 33 th D
66 96 35 xth D
67 96 37 yth D
74 80 39 t Ljava/lang/Throwable;
98 99 27 ymid D
Exception table:
from to target type
67 72 73 Class java.lang.Throwable
MethodParameters:
Name Flags
that
yrange
public boolean findIntersect(sun.awt.geom.Curve, double[], double, int, int, double, double, double, double, double, double, double, double, double, double, double, double);
descriptor: (Lsun/awt/geom/Curve;[DDIIDDDDDDDDDDDD)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=31, locals=53, args_size=18
start local 0 // sun.awt.geom.Curve this
start local 1 // sun.awt.geom.Curve that
start local 2 // double[] yrange
start local 3 // double ymin
start local 5 // int slevel
start local 6 // int tlevel
start local 7 // double s0
start local 9 // double xs0
start local 11 // double ys0
start local 13 // double s1
start local 15 // double xs1
start local 17 // double ys1
start local 19 // double t0
start local 21 // double xt0
start local 23 // double yt0
start local 25 // double t1
start local 27 // double xt1
start local 29 // double yt1
0: .line 1053
dload 11 /* ys0 */
dload 29 /* yt1 */
dcmpl
ifgt 1
dload 23 /* yt0 */
dload 17 /* ys1 */
dcmpl
ifle 2
1: .line 1054
StackMap locals:
StackMap stack:
iconst_0
ireturn
2: .line 1056
StackMap locals:
StackMap stack:
dload 9 /* xs0 */
dload 15 /* xs1 */
invokestatic java.lang.Math.min:(DD)D
dload 21 /* xt0 */
dload 27 /* xt1 */
invokestatic java.lang.Math.max:(DD)D
dcmpl
ifgt 4
3: .line 1057
dload 9 /* xs0 */
dload 15 /* xs1 */
invokestatic java.lang.Math.max:(DD)D
dload 21 /* xt0 */
dload 27 /* xt1 */
invokestatic java.lang.Math.min:(DD)D
dcmpg
ifge 5
4: .line 1059
StackMap locals:
StackMap stack:
iconst_0
ireturn
5: .line 1065
StackMap locals:
StackMap stack:
dload 13 /* s1 */
dload 7 /* s0 */
dsub
ldc 0.001
dcmpl
ifle 63
6: .line 1066
dload 7 /* s0 */
dload 13 /* s1 */
dadd
ldc 2.0
ddiv
dstore 31 /* s */
start local 31 // double s
7: .line 1067
aload 0 /* this */
dload 31 /* s */
invokevirtual sun.awt.geom.Curve.XforT:(D)D
dstore 33 /* xs */
start local 33 // double xs
8: .line 1068
aload 0 /* this */
dload 31 /* s */
invokevirtual sun.awt.geom.Curve.YforT:(D)D
dstore 35 /* ys */
start local 35 // double ys
9: .line 1069
dload 31 /* s */
dload 7 /* s0 */
dcmpl
ifeq 10
dload 31 /* s */
dload 13 /* s1 */
dcmpl
ifne 13
10: .line 1070
StackMap locals: double double double
StackMap stack:
getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "s0 = "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
dload 7 /* s0 */
invokevirtual java.lang.StringBuilder.append:(D)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
11: .line 1071
getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "s1 = "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
dload 13 /* s1 */
invokevirtual java.lang.StringBuilder.append:(D)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
12: .line 1072
new java.lang.InternalError
dup
ldc "no s progress!"
invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
athrow
13: .line 1074
StackMap locals:
StackMap stack:
dload 25 /* t1 */
dload 19 /* t0 */
dsub
ldc 0.001
dcmpl
ifle 49
14: .line 1075
dload 19 /* t0 */
dload 25 /* t1 */
dadd
ldc 2.0
ddiv
dstore 37 /* t */
start local 37 // double t
15: .line 1076
aload 1 /* that */
dload 37 /* t */
invokevirtual sun.awt.geom.Curve.XforT:(D)D
dstore 39 /* xt */
start local 39 // double xt
16: .line 1077
aload 1 /* that */
dload 37 /* t */
invokevirtual sun.awt.geom.Curve.YforT:(D)D
dstore 41 /* yt */
start local 41 // double yt
17: .line 1078
dload 37 /* t */
dload 19 /* t0 */
dcmpl
ifeq 18
dload 37 /* t */
dload 25 /* t1 */
dcmpl
ifne 21
18: .line 1079
StackMap locals: double double double
StackMap stack:
getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "t0 = "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
dload 19 /* t0 */
invokevirtual java.lang.StringBuilder.append:(D)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
19: .line 1080
getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "t1 = "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
dload 25 /* t1 */
invokevirtual java.lang.StringBuilder.append:(D)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
20: .line 1081
new java.lang.InternalError
dup
ldc "no t progress!"
invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
athrow
21: .line 1083
StackMap locals:
StackMap stack:
dload 35 /* ys */
dload 23 /* yt0 */
dcmpl
iflt 28
dload 41 /* yt */
dload 11 /* ys0 */
dcmpl
iflt 28
22: .line 1084
aload 0 /* this */
aload 1 /* that */
aload 2 /* yrange */
dload 3 /* ymin */
iload 5 /* slevel */
iconst_1
iadd
iload 6 /* tlevel */
iconst_1
iadd
23: .line 1085
dload 7 /* s0 */
dload 9 /* xs0 */
dload 11 /* ys0 */
dload 31 /* s */
dload 33 /* xs */
dload 35 /* ys */
24: .line 1086
dload 19 /* t0 */
dload 21 /* xt0 */
dload 23 /* yt0 */
dload 37 /* t */
dload 39 /* xt */
dload 41 /* yt */
25: .line 1084
invokevirtual sun.awt.geom.Curve.findIntersect:(Lsun/awt/geom/Curve;[DDIIDDDDDDDDDDDD)Z
26: .line 1086
ifeq 28
27: .line 1087
iconst_1
ireturn
28: .line 1090
StackMap locals:
StackMap stack:
dload 35 /* ys */
dload 41 /* yt */
dcmpl
iflt 35
29: .line 1091
aload 0 /* this */
aload 1 /* that */
aload 2 /* yrange */
dload 3 /* ymin */
iload 5 /* slevel */
iconst_1
iadd
iload 6 /* tlevel */
iconst_1
iadd
30: .line 1092
dload 7 /* s0 */
dload 9 /* xs0 */
dload 11 /* ys0 */
dload 31 /* s */
dload 33 /* xs */
dload 35 /* ys */
31: .line 1093
dload 37 /* t */
dload 39 /* xt */
dload 41 /* yt */
dload 25 /* t1 */
dload 27 /* xt1 */
dload 29 /* yt1 */
32: .line 1091
invokevirtual sun.awt.geom.Curve.findIntersect:(Lsun/awt/geom/Curve;[DDIIDDDDDDDDDDDD)Z
33: .line 1093
ifeq 35
34: .line 1094
iconst_1
ireturn
35: .line 1097
StackMap locals:
StackMap stack:
dload 41 /* yt */
dload 35 /* ys */
dcmpl
iflt 42
36: .line 1098
aload 0 /* this */
aload 1 /* that */
aload 2 /* yrange */
dload 3 /* ymin */
iload 5 /* slevel */
iconst_1
iadd
iload 6 /* tlevel */
iconst_1
iadd
37: .line 1099
dload 31 /* s */
dload 33 /* xs */
dload 35 /* ys */
dload 13 /* s1 */
dload 15 /* xs1 */
dload 17 /* ys1 */
38: .line 1100
dload 19 /* t0 */
dload 21 /* xt0 */
dload 23 /* yt0 */
dload 37 /* t */
dload 39 /* xt */
dload 41 /* yt */
39: .line 1098
invokevirtual sun.awt.geom.Curve.findIntersect:(Lsun/awt/geom/Curve;[DDIIDDDDDDDDDDDD)Z
40: .line 1100
ifeq 42
41: .line 1101
iconst_1
ireturn
42: .line 1104
StackMap locals:
StackMap stack:
dload 17 /* ys1 */
dload 41 /* yt */
dcmpl
iflt 105
dload 29 /* yt1 */
dload 35 /* ys */
dcmpl
iflt 105
43: .line 1105
aload 0 /* this */
aload 1 /* that */
aload 2 /* yrange */
dload 3 /* ymin */
iload 5 /* slevel */
iconst_1
iadd
iload 6 /* tlevel */
iconst_1
iadd
44: .line 1106
dload 31 /* s */
dload 33 /* xs */
dload 35 /* ys */
dload 13 /* s1 */
dload 15 /* xs1 */
dload 17 /* ys1 */
45: .line 1107
dload 37 /* t */
dload 39 /* xt */
dload 41 /* yt */
dload 25 /* t1 */
dload 27 /* xt1 */
dload 29 /* yt1 */
46: .line 1105
invokevirtual sun.awt.geom.Curve.findIntersect:(Lsun/awt/geom/Curve;[DDIIDDDDDDDDDDDD)Z
47: .line 1107
ifeq 105
48: .line 1108
iconst_1
ireturn
end local 41 // double yt
end local 39 // double xt
end local 37 // double t
49: .line 1112
StackMap locals:
StackMap stack:
dload 35 /* ys */
dload 23 /* yt0 */
dcmpl
iflt 56
50: .line 1113
aload 0 /* this */
aload 1 /* that */
aload 2 /* yrange */
dload 3 /* ymin */
iload 5 /* slevel */
iconst_1
iadd
iload 6 /* tlevel */
51: .line 1114
dload 7 /* s0 */
dload 9 /* xs0 */
dload 11 /* ys0 */
dload 31 /* s */
dload 33 /* xs */
dload 35 /* ys */
52: .line 1115
dload 19 /* t0 */
dload 21 /* xt0 */
dload 23 /* yt0 */
dload 25 /* t1 */
dload 27 /* xt1 */
dload 29 /* yt1 */
53: .line 1113
invokevirtual sun.awt.geom.Curve.findIntersect:(Lsun/awt/geom/Curve;[DDIIDDDDDDDDDDDD)Z
54: .line 1115
ifeq 56
55: .line 1116
iconst_1
ireturn
56: .line 1119
StackMap locals:
StackMap stack:
dload 29 /* yt1 */
dload 35 /* ys */
dcmpl
iflt 105
57: .line 1120
aload 0 /* this */
aload 1 /* that */
aload 2 /* yrange */
dload 3 /* ymin */
iload 5 /* slevel */
iconst_1
iadd
iload 6 /* tlevel */
58: .line 1121
dload 31 /* s */
dload 33 /* xs */
dload 35 /* ys */
dload 13 /* s1 */
dload 15 /* xs1 */
dload 17 /* ys1 */
59: .line 1122
dload 19 /* t0 */
dload 21 /* xt0 */
dload 23 /* yt0 */
dload 25 /* t1 */
dload 27 /* xt1 */
dload 29 /* yt1 */
60: .line 1120
invokevirtual sun.awt.geom.Curve.findIntersect:(Lsun/awt/geom/Curve;[DDIIDDDDDDDDDDDD)Z
61: .line 1122
ifeq 105
62: .line 1123
iconst_1
ireturn
end local 35 // double ys
end local 33 // double xs
end local 31 // double s
63: .line 1127
StackMap locals:
StackMap stack:
dload 25 /* t1 */
dload 19 /* t0 */
dsub
ldc 0.001
dcmpl
ifle 85
64: .line 1128
dload 19 /* t0 */
dload 25 /* t1 */
dadd
ldc 2.0
ddiv
dstore 31 /* t */
start local 31 // double t
65: .line 1129
aload 1 /* that */
dload 31 /* t */
invokevirtual sun.awt.geom.Curve.XforT:(D)D
dstore 33 /* xt */
start local 33 // double xt
66: .line 1130
aload 1 /* that */
dload 31 /* t */
invokevirtual sun.awt.geom.Curve.YforT:(D)D
dstore 35 /* yt */
start local 35 // double yt
67: .line 1131
dload 31 /* t */
dload 19 /* t0 */
dcmpl
ifeq 68
dload 31 /* t */
dload 25 /* t1 */
dcmpl
ifne 71
68: .line 1132
StackMap locals: double double double
StackMap stack:
getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "t0 = "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
dload 19 /* t0 */
invokevirtual java.lang.StringBuilder.append:(D)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
69: .line 1133
getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "t1 = "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
dload 25 /* t1 */
invokevirtual java.lang.StringBuilder.append:(D)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
70: .line 1134
new java.lang.InternalError
dup
ldc "no t progress!"
invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
athrow
71: .line 1136
StackMap locals:
StackMap stack:
dload 35 /* yt */
dload 11 /* ys0 */
dcmpl
iflt 78
72: .line 1137
aload 0 /* this */
aload 1 /* that */
aload 2 /* yrange */
dload 3 /* ymin */
iload 5 /* slevel */
iload 6 /* tlevel */
iconst_1
iadd
73: .line 1138
dload 7 /* s0 */
dload 9 /* xs0 */
dload 11 /* ys0 */
dload 13 /* s1 */
dload 15 /* xs1 */
dload 17 /* ys1 */
74: .line 1139
dload 19 /* t0 */
dload 21 /* xt0 */
dload 23 /* yt0 */
dload 31 /* t */
dload 33 /* xt */
dload 35 /* yt */
75: .line 1137
invokevirtual sun.awt.geom.Curve.findIntersect:(Lsun/awt/geom/Curve;[DDIIDDDDDDDDDDDD)Z
76: .line 1139
ifeq 78
77: .line 1140
iconst_1
ireturn
78: .line 1143
StackMap locals:
StackMap stack:
dload 17 /* ys1 */
dload 35 /* yt */
dcmpl
iflt 105
79: .line 1144
aload 0 /* this */
aload 1 /* that */
aload 2 /* yrange */
dload 3 /* ymin */
iload 5 /* slevel */
iload 6 /* tlevel */
iconst_1
iadd
80: .line 1145
dload 7 /* s0 */
dload 9 /* xs0 */
dload 11 /* ys0 */
dload 13 /* s1 */
dload 15 /* xs1 */
dload 17 /* ys1 */
81: .line 1146
dload 31 /* t */
dload 33 /* xt */
dload 35 /* yt */
dload 25 /* t1 */
dload 27 /* xt1 */
dload 29 /* yt1 */
82: .line 1144
invokevirtual sun.awt.geom.Curve.findIntersect:(Lsun/awt/geom/Curve;[DDIIDDDDDDDDDDDD)Z
83: .line 1146
ifeq 105
84: .line 1147
iconst_1
ireturn
end local 35 // double yt
end local 33 // double xt
end local 31 // double t
85: .line 1152
StackMap locals:
StackMap stack:
dload 15 /* xs1 */
dload 9 /* xs0 */
dsub
dstore 31 /* xlk */
start local 31 // double xlk
86: .line 1153
dload 17 /* ys1 */
dload 11 /* ys0 */
dsub
dstore 33 /* ylk */
start local 33 // double ylk
87: .line 1154
dload 27 /* xt1 */
dload 21 /* xt0 */
dsub
dstore 35 /* xnm */
start local 35 // double xnm
88: .line 1155
dload 29 /* yt1 */
dload 23 /* yt0 */
dsub
dstore 37 /* ynm */
start local 37 // double ynm
89: .line 1156
dload 21 /* xt0 */
dload 9 /* xs0 */
dsub
dstore 39 /* xmk */
start local 39 // double xmk
90: .line 1157
dload 23 /* yt0 */
dload 11 /* ys0 */
dsub
dstore 41 /* ymk */
start local 41 // double ymk
91: .line 1158
dload 35 /* xnm */
dload 33 /* ylk */
dmul
dload 37 /* ynm */
dload 31 /* xlk */
dmul
dsub
dstore 43 /* det */
start local 43 // double det
92: .line 1159
dload 43 /* det */
dconst_0
dcmpl
ifeq 105
93: .line 1160
dconst_1
dload 43 /* det */
ddiv
dstore 45 /* detinv */
start local 45 // double detinv
94: .line 1161
dload 35 /* xnm */
dload 41 /* ymk */
dmul
dload 37 /* ynm */
dload 39 /* xmk */
dmul
dsub
dload 45 /* detinv */
dmul
dstore 47 /* s */
start local 47 // double s
95: .line 1162
dload 31 /* xlk */
dload 41 /* ymk */
dmul
dload 33 /* ylk */
dload 39 /* xmk */
dmul
dsub
dload 45 /* detinv */
dmul
dstore 49 /* t */
start local 49 // double t
96: .line 1163
dload 47 /* s */
dconst_0
dcmpl
iflt 105
dload 47 /* s */
dconst_1
dcmpg
ifgt 105
dload 49 /* t */
dconst_0
dcmpl
iflt 105
dload 49 /* t */
dconst_1
dcmpg
ifgt 105
97: .line 1164
dload 7 /* s0 */
dload 47 /* s */
dload 13 /* s1 */
dload 7 /* s0 */
dsub
dmul
dadd
dstore 47 /* s */
98: .line 1165
dload 19 /* t0 */
dload 49 /* t */
dload 25 /* t1 */
dload 19 /* t0 */
dsub
dmul
dadd
dstore 49 /* t */
99: .line 1166
dload 47 /* s */
dconst_0
dcmpg
iflt 100
dload 47 /* s */
dconst_1
dcmpl
ifgt 100
dload 49 /* t */
dconst_0
dcmpg
iflt 100
dload 49 /* t */
dconst_1
dcmpl
ifle 101
100: .line 1167
StackMap locals: sun.awt.geom.Curve sun.awt.geom.Curve double[] double int int double double double double double double double double double double double double double double double double double double double double double double
StackMap stack:
getstatic java.lang.System.out:Ljava/io/PrintStream;
ldc "Uh oh!"
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
101: .line 1169
StackMap locals:
StackMap stack:
aload 0 /* this */
dload 47 /* s */
invokevirtual sun.awt.geom.Curve.YforT:(D)D
aload 1 /* that */
dload 49 /* t */
invokevirtual sun.awt.geom.Curve.YforT:(D)D
dadd
ldc 2.0
ddiv
dstore 51 /* y */
start local 51 // double y
102: .line 1170
dload 51 /* y */
aload 2 /* yrange */
iconst_1
daload
dcmpg
ifgt 105
dload 51 /* y */
aload 2 /* yrange */
iconst_0
daload
dcmpl
ifle 105
103: .line 1171
aload 2 /* yrange */
iconst_1
dload 51 /* y */
dastore
104: .line 1172
iconst_1
ireturn
end local 51 // double y
end local 49 // double t
end local 47 // double s
end local 45 // double detinv
end local 43 // double det
end local 41 // double ymk
end local 39 // double xmk
end local 37 // double ynm
end local 35 // double xnm
end local 33 // double ylk
end local 31 // double xlk
105: .line 1178
StackMap locals: sun.awt.geom.Curve sun.awt.geom.Curve double[] double int int double double double double double double double double double double double double
StackMap stack:
iconst_0
ireturn
end local 29 // double yt1
end local 27 // double xt1
end local 25 // double t1
end local 23 // double yt0
end local 21 // double xt0
end local 19 // double t0
end local 17 // double ys1
end local 15 // double xs1
end local 13 // double s1
end local 11 // double ys0
end local 9 // double xs0
end local 7 // double s0
end local 6 // int tlevel
end local 5 // int slevel
end local 3 // double ymin
end local 2 // double[] yrange
end local 1 // sun.awt.geom.Curve that
end local 0 // sun.awt.geom.Curve this
LocalVariableTable:
Start End Slot Name Signature
0 106 0 this Lsun/awt/geom/Curve;
0 106 1 that Lsun/awt/geom/Curve;
0 106 2 yrange [D
0 106 3 ymin D
0 106 5 slevel I
0 106 6 tlevel I
0 106 7 s0 D
0 106 9 xs0 D
0 106 11 ys0 D
0 106 13 s1 D
0 106 15 xs1 D
0 106 17 ys1 D
0 106 19 t0 D
0 106 21 xt0 D
0 106 23 yt0 D
0 106 25 t1 D
0 106 27 xt1 D
0 106 29 yt1 D
7 63 31 s D
8 63 33 xs D
9 63 35 ys D
15 49 37 t D
16 49 39 xt D
17 49 41 yt D
65 85 31 t D
66 85 33 xt D
67 85 35 yt D
86 105 31 xlk D
87 105 33 ylk D
88 105 35 xnm D
89 105 37 ynm D
90 105 39 xmk D
91 105 41 ymk D
92 105 43 det D
94 105 45 detinv D
95 105 47 s D
96 105 49 t D
102 105 51 y D
MethodParameters:
Name Flags
that
yrange
ymin
slevel
tlevel
s0
xs0
ys0
s1
xs1
ys1
t0
xt0
yt0
t1
xt1
yt1
public double refineTforY(double, double, double);
descriptor: (DDD)D
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=13, args_size=4
start local 0 // sun.awt.geom.Curve this
start local 1 // double t0
start local 3 // double yt0
start local 5 // double y0
0: .line 1182
dconst_1
dstore 7 /* t1 */
start local 7 // double t1
1: .line 1184
StackMap locals: double
StackMap stack:
dload 1 /* t0 */
dload 7 /* t1 */
dadd
ldc 2.0
ddiv
dstore 9 /* th */
start local 9 // double th
2: .line 1185
dload 9 /* th */
dload 1 /* t0 */
dcmpl
ifeq 3
dload 9 /* th */
dload 7 /* t1 */
dcmpl
ifne 4
3: .line 1186
StackMap locals: double
StackMap stack:
dload 7 /* t1 */
dreturn
4: .line 1188
StackMap locals:
StackMap stack:
aload 0 /* this */
dload 9 /* th */
invokevirtual sun.awt.geom.Curve.YforT:(D)D
dstore 11 /* y */
start local 11 // double y
5: .line 1189
dload 11 /* y */
dload 5 /* y0 */
dcmpg
ifge 9
6: .line 1190
dload 9 /* th */
dstore 1 /* t0 */
7: .line 1191
dload 11 /* y */
dstore 3 /* yt0 */
8: .line 1192
goto 1
StackMap locals: double
StackMap stack:
9: dload 11 /* y */
dload 5 /* y0 */
dcmpl
ifle 12
10: .line 1193
dload 9 /* th */
dstore 7 /* t1 */
11: .line 1194
goto 1
12: .line 1195
StackMap locals:
StackMap stack:
dload 7 /* t1 */
dreturn
end local 11 // double y
end local 9 // double th
end local 7 // double t1
end local 5 // double y0
end local 3 // double yt0
end local 1 // double t0
end local 0 // sun.awt.geom.Curve this
LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lsun/awt/geom/Curve;
0 13 1 t0 D
0 13 3 yt0 D
0 13 5 y0 D
1 13 7 t1 D
2 13 9 th D
5 13 11 y D
MethodParameters:
Name Flags
t0
yt0
y0
public boolean fairlyClose(double, double);
descriptor: (DD)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=5, args_size=3
start local 0 // sun.awt.geom.Curve this
start local 1 // double v1
start local 3 // double v2
0: .line 1201
dload 1 /* v1 */
dload 3 /* v2 */
dsub
invokestatic java.lang.Math.abs:(D)D
1: .line 1202
dload 1 /* v1 */
invokestatic java.lang.Math.abs:(D)D
dload 3 /* v2 */
invokestatic java.lang.Math.abs:(D)D
invokestatic java.lang.Math.max:(DD)D
ldc 1.0E-10
dmul
2: .line 1201
dcmpg
ifge 3
iconst_1
ireturn
StackMap locals:
StackMap stack:
3: iconst_0
ireturn
end local 3 // double v2
end local 1 // double v1
end local 0 // sun.awt.geom.Curve this
LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/awt/geom/Curve;
0 4 1 v1 D
0 4 3 v2 D
MethodParameters:
Name Flags
v1
v2
public abstract int getSegment(double[]);
descriptor: ([D)I
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
coords
}
SourceFile: "Curve.java"