public final class com.sun.openpisces.Stroker implements com.sun.javafx.geom.PathConsumer2D
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: com.sun.openpisces.Stroker
super_class: java.lang.Object
{
private static final int MOVE_TO;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0
private static final int DRAWING_OP_TO;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1
private static final int CLOSE;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 2
public static final int JOIN_MITER;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 0
public static final int JOIN_ROUND;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 1
public static final int JOIN_BEVEL;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 2
public static final int CAP_BUTT;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 0
public static final int CAP_ROUND;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 1
public static final int CAP_SQUARE;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 2
private com.sun.javafx.geom.PathConsumer2D out;
descriptor: Lcom/sun/javafx/geom/PathConsumer2D;
flags: (0x0002) ACC_PRIVATE
private int capStyle;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int joinStyle;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private float lineWidth2;
descriptor: F
flags: (0x0002) ACC_PRIVATE
private final float[][] offset;
descriptor: [[F
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final float[] miter;
descriptor: [F
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private float miterLimitSq;
descriptor: F
flags: (0x0002) ACC_PRIVATE
private int prev;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private float sx0;
descriptor: F
flags: (0x0002) ACC_PRIVATE
private float sy0;
descriptor: F
flags: (0x0002) ACC_PRIVATE
private float sdx;
descriptor: F
flags: (0x0002) ACC_PRIVATE
private float sdy;
descriptor: F
flags: (0x0002) ACC_PRIVATE
private float cx0;
descriptor: F
flags: (0x0002) ACC_PRIVATE
private float cy0;
descriptor: F
flags: (0x0002) ACC_PRIVATE
private float cdx;
descriptor: F
flags: (0x0002) ACC_PRIVATE
private float cdy;
descriptor: F
flags: (0x0002) ACC_PRIVATE
private float smx;
descriptor: F
flags: (0x0002) ACC_PRIVATE
private float smy;
descriptor: F
flags: (0x0002) ACC_PRIVATE
private float cmx;
descriptor: F
flags: (0x0002) ACC_PRIVATE
private float cmy;
descriptor: F
flags: (0x0002) ACC_PRIVATE
private final com.sun.openpisces.Stroker$PolyStack reverse;
descriptor: Lcom/sun/openpisces/Stroker$PolyStack;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private static final float ROUND_JOIN_THRESHOLD;
descriptor: F
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0.015258789
private float[] middle;
descriptor: [F
flags: (0x0002) ACC_PRIVATE
private float[] lp;
descriptor: [F
flags: (0x0002) ACC_PRIVATE
private float[] rp;
descriptor: [F
flags: (0x0002) ACC_PRIVATE
private static final int MAX_N_CURVES;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 11
private float[] subdivTs;
descriptor: [F
flags: (0x0002) ACC_PRIVATE
private static com.sun.openpisces.Curve c;
descriptor: Lcom/sun/openpisces/Curve;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: .line 36
ldc Lcom/sun/openpisces/Stroker;
invokevirtual java.lang.Class.desiredAssertionStatus:()Z
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic com.sun.openpisces.Stroker.$assertionsDisabled:Z
3: .line 926
new com.sun.openpisces.Curve
dup
invokespecial com.sun.openpisces.Curve.<init>:()V
putstatic com.sun.openpisces.Stroker.c:Lcom/sun/openpisces/Curve;
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(com.sun.javafx.geom.PathConsumer2D, float, int, int, float);
descriptor: (Lcom/sun/javafx/geom/PathConsumer2D;FIIF)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=6, args_size=6
start local 0 // com.sun.openpisces.Stroker this
start local 1 // com.sun.javafx.geom.PathConsumer2D pc2d
start local 2 // float lineWidth
start local 3 // int capStyle
start local 4 // int joinStyle
start local 5 // float miterLimit
0: .line 118
aload 0 /* this */
aload 1 /* pc2d */
invokespecial com.sun.openpisces.Stroker.<init>:(Lcom/sun/javafx/geom/PathConsumer2D;)V
1: .line 120
aload 0 /* this */
fload 2 /* lineWidth */
iload 3 /* capStyle */
iload 4 /* joinStyle */
fload 5 /* miterLimit */
invokevirtual com.sun.openpisces.Stroker.reset:(FIIF)V
2: .line 121
return
end local 5 // float miterLimit
end local 4 // int joinStyle
end local 3 // int capStyle
end local 2 // float lineWidth
end local 1 // com.sun.javafx.geom.PathConsumer2D pc2d
end local 0 // com.sun.openpisces.Stroker this
LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/openpisces/Stroker;
0 3 1 pc2d Lcom/sun/javafx/geom/PathConsumer2D;
0 3 2 lineWidth F
0 3 3 capStyle I
0 3 4 joinStyle I
0 3 5 miterLimit F
MethodParameters:
Name Flags
pc2d
lineWidth
capStyle
joinStyle
miterLimit
public void <init>(com.sun.javafx.geom.PathConsumer2D);
descriptor: (Lcom/sun/javafx/geom/PathConsumer2D;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 // com.sun.openpisces.Stroker this
start local 1 // com.sun.javafx.geom.PathConsumer2D pc2d
0: .line 123
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
1: .line 79
aload 0 /* this */
iconst_3
iconst_2
multianewarray [[F 2
putfield com.sun.openpisces.Stroker.offset:[[F
2: .line 80
aload 0 /* this */
iconst_2
newarray 6
putfield com.sun.openpisces.Stroker.miter:[F
3: .line 97
aload 0 /* this */
new com.sun.openpisces.Stroker$PolyStack
dup
invokespecial com.sun.openpisces.Stroker$PolyStack.<init>:()V
putfield com.sun.openpisces.Stroker.reverse:Lcom/sun/openpisces/Stroker$PolyStack;
4: .line 808
aload 0 /* this */
bipush 88
newarray 6
putfield com.sun.openpisces.Stroker.middle:[F
5: .line 809
aload 0 /* this */
bipush 8
newarray 6
putfield com.sun.openpisces.Stroker.lp:[F
6: .line 810
aload 0 /* this */
bipush 8
newarray 6
putfield com.sun.openpisces.Stroker.rp:[F
7: .line 812
aload 0 /* this */
bipush 10
newarray 6
putfield com.sun.openpisces.Stroker.subdivTs:[F
8: .line 124
aload 0 /* this */
aload 1 /* pc2d */
invokevirtual com.sun.openpisces.Stroker.setConsumer:(Lcom/sun/javafx/geom/PathConsumer2D;)V
9: .line 125
return
end local 1 // com.sun.javafx.geom.PathConsumer2D pc2d
end local 0 // com.sun.openpisces.Stroker this
LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lcom/sun/openpisces/Stroker;
0 10 1 pc2d Lcom/sun/javafx/geom/PathConsumer2D;
MethodParameters:
Name Flags
pc2d
public void setConsumer(com.sun.javafx.geom.PathConsumer2D);
descriptor: (Lcom/sun/javafx/geom/PathConsumer2D;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 // com.sun.openpisces.Stroker this
start local 1 // com.sun.javafx.geom.PathConsumer2D pc2d
0: .line 128
aload 0 /* this */
aload 1 /* pc2d */
putfield com.sun.openpisces.Stroker.out:Lcom/sun/javafx/geom/PathConsumer2D;
1: .line 129
return
end local 1 // com.sun.javafx.geom.PathConsumer2D pc2d
end local 0 // com.sun.openpisces.Stroker this
LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/openpisces/Stroker;
0 2 1 pc2d Lcom/sun/javafx/geom/PathConsumer2D;
MethodParameters:
Name Flags
pc2d
public void reset(float, int, int, float);
descriptor: (FIIF)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=6, args_size=5
start local 0 // com.sun.openpisces.Stroker this
start local 1 // float lineWidth
start local 2 // int capStyle
start local 3 // int joinStyle
start local 4 // float miterLimit
0: .line 133
aload 0 /* this */
fload 1 /* lineWidth */
fconst_2
fdiv
putfield com.sun.openpisces.Stroker.lineWidth2:F
1: .line 134
aload 0 /* this */
iload 2 /* capStyle */
putfield com.sun.openpisces.Stroker.capStyle:I
2: .line 135
aload 0 /* this */
iload 3 /* joinStyle */
putfield com.sun.openpisces.Stroker.joinStyle:I
3: .line 137
fload 4 /* miterLimit */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.lineWidth2:F
fmul
fstore 5 /* limit */
start local 5 // float limit
4: .line 138
aload 0 /* this */
fload 5 /* limit */
fload 5 /* limit */
fmul
putfield com.sun.openpisces.Stroker.miterLimitSq:F
5: .line 140
aload 0 /* this */
iconst_2
putfield com.sun.openpisces.Stroker.prev:I
6: .line 141
return
end local 5 // float limit
end local 4 // float miterLimit
end local 3 // int joinStyle
end local 2 // int capStyle
end local 1 // float lineWidth
end local 0 // com.sun.openpisces.Stroker this
LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/sun/openpisces/Stroker;
0 7 1 lineWidth F
0 7 2 capStyle I
0 7 3 joinStyle I
0 7 4 miterLimit F
4 7 5 limit F
MethodParameters:
Name Flags
lineWidth
capStyle
joinStyle
miterLimit
private static void computeOffset(float, float, float, float[]);
descriptor: (FFF[F)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=5, args_size=4
start local 0 // float lx
start local 1 // float ly
start local 2 // float w
start local 3 // float[] m
0: .line 146
fload 0 /* lx */
fload 0 /* lx */
fmul
fload 1 /* ly */
fload 1 /* ly */
fmul
fadd
f2d
invokestatic java.lang.Math.sqrt:(D)D
d2f
fstore 4 /* len */
start local 4 // float len
1: .line 147
fload 4 /* len */
fconst_0
fcmpl
ifne 4
2: .line 148
aload 3 /* m */
iconst_0
aload 3 /* m */
iconst_1
fconst_0
dup_x2
fastore
fastore
3: .line 149
goto 6
4: .line 150
StackMap locals: float
StackMap stack:
aload 3 /* m */
iconst_0
fload 1 /* ly */
fload 2 /* w */
fmul
fload 4 /* len */
fdiv
fastore
5: .line 151
aload 3 /* m */
iconst_1
fload 0 /* lx */
fload 2 /* w */
fmul
fneg
fload 4 /* len */
fdiv
fastore
6: .line 153
StackMap locals:
StackMap stack:
return
end local 4 // float len
end local 3 // float[] m
end local 2 // float w
end local 1 // float ly
end local 0 // float lx
LocalVariableTable:
Start End Slot Name Signature
0 7 0 lx F
0 7 1 ly F
0 7 2 w F
0 7 3 m [F
1 7 4 len F
MethodParameters:
Name Flags
lx final
ly final
w final
m final
private static boolean isCW(float, float, float, float);
descriptor: (FFFF)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=4, args_size=4
start local 0 // float dx1
start local 1 // float dy1
start local 2 // float dx2
start local 3 // float dy2
0: .line 166
fload 0 /* dx1 */
fload 3 /* dy2 */
fmul
fload 1 /* dy1 */
fload 2 /* dx2 */
fmul
fcmpg
ifgt 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 3 // float dy2
end local 2 // float dx2
end local 1 // float dy1
end local 0 // float dx1
LocalVariableTable:
Start End Slot Name Signature
0 2 0 dx1 F
0 2 1 dy1 F
0 2 2 dx2 F
0 2 3 dy2 F
MethodParameters:
Name Flags
dx1 final
dy1 final
dx2 final
dy2 final
private void drawRoundJoin(float, float, float, float, float, float, boolean, float);
descriptor: (FFFFFFZF)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=12, args_size=9
start local 0 // com.sun.openpisces.Stroker this
start local 1 // float x
start local 2 // float y
start local 3 // float omx
start local 4 // float omy
start local 5 // float mx
start local 6 // float my
start local 7 // boolean rev
start local 8 // float threshold
0: .line 179
fload 3 /* omx */
fconst_0
fcmpl
ifne 1
fload 4 /* omy */
fconst_0
fcmpl
ifeq 2
StackMap locals:
StackMap stack:
1: fload 5 /* mx */
fconst_0
fcmpl
ifne 3
fload 6 /* my */
fconst_0
fcmpl
ifne 3
2: .line 180
StackMap locals:
StackMap stack:
return
3: .line 183
StackMap locals:
StackMap stack:
fload 3 /* omx */
fload 5 /* mx */
fsub
fstore 9 /* domx */
start local 9 // float domx
4: .line 184
fload 4 /* omy */
fload 6 /* my */
fsub
fstore 10 /* domy */
start local 10 // float domy
5: .line 185
fload 9 /* domx */
fload 9 /* domx */
fmul
fload 10 /* domy */
fload 10 /* domy */
fmul
fadd
fstore 11 /* len */
start local 11 // float len
6: .line 186
fload 11 /* len */
fload 8 /* threshold */
fcmpg
ifge 8
7: .line 187
return
8: .line 190
StackMap locals: float float float
StackMap stack:
iload 7 /* rev */
ifeq 13
9: .line 191
fload 3 /* omx */
fneg
fstore 3 /* omx */
10: .line 192
fload 4 /* omy */
fneg
fstore 4 /* omy */
11: .line 193
fload 5 /* mx */
fneg
fstore 5 /* mx */
12: .line 194
fload 6 /* my */
fneg
fstore 6 /* my */
13: .line 196
StackMap locals:
StackMap stack:
aload 0 /* this */
fload 1 /* x */
fload 2 /* y */
fload 3 /* omx */
fload 4 /* omy */
fload 5 /* mx */
fload 6 /* my */
iload 7 /* rev */
invokevirtual com.sun.openpisces.Stroker.drawRoundJoin:(FFFFFFZ)V
14: .line 197
return
end local 11 // float len
end local 10 // float domy
end local 9 // float domx
end local 8 // float threshold
end local 7 // boolean rev
end local 6 // float my
end local 5 // float mx
end local 4 // float omy
end local 3 // float omx
end local 2 // float y
end local 1 // float x
end local 0 // com.sun.openpisces.Stroker this
LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lcom/sun/openpisces/Stroker;
0 15 1 x F
0 15 2 y F
0 15 3 omx F
0 15 4 omy F
0 15 5 mx F
0 15 6 my F
0 15 7 rev Z
0 15 8 threshold F
4 15 9 domx F
5 15 10 domy F
6 15 11 len F
MethodParameters:
Name Flags
x
y
omx
omy
mx
my
rev
threshold
private void drawRoundJoin(float, float, float, float, float, float, boolean);
descriptor: (FFFFFFZ)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=17, args_size=8
start local 0 // com.sun.openpisces.Stroker this
start local 1 // float cx
start local 2 // float cy
start local 3 // float omx
start local 4 // float omy
start local 5 // float mx
start local 6 // float my
start local 7 // boolean rev
0: .line 207
fload 3 /* omx */
fload 5 /* mx */
fmul
fload 4 /* omy */
fload 6 /* my */
fmul
fadd
f2d
dstore 8 /* cosext */
start local 8 // double cosext
1: .line 211
dload 8 /* cosext */
dconst_0
dcmpl
iflt 2
iconst_1
goto 3
StackMap locals: double
StackMap stack:
2: iconst_2
StackMap locals:
StackMap stack: int
3: istore 10 /* numCurves */
start local 10 // int numCurves
4: .line 213
iload 10 /* numCurves */
tableswitch { // 1 - 2
1: 5
2: 7
default: 18
}
5: .line 215
StackMap locals: int
StackMap stack:
aload 0 /* this */
fload 1 /* cx */
fload 2 /* cy */
fload 3 /* omx */
fload 4 /* omy */
fload 5 /* mx */
fload 6 /* my */
iload 7 /* rev */
invokevirtual com.sun.openpisces.Stroker.drawBezApproxForArc:(FFFFFFZ)V
6: .line 216
goto 18
7: .line 232
StackMap locals:
StackMap stack:
fload 6 /* my */
fload 4 /* omy */
fsub
fstore 11 /* nx */
start local 11 // float nx
8: fload 3 /* omx */
fload 5 /* mx */
fsub
fstore 12 /* ny */
start local 12 // float ny
9: .line 233
fload 11 /* nx */
fload 11 /* nx */
fmul
fload 12 /* ny */
fload 12 /* ny */
fmul
fadd
f2d
invokestatic java.lang.Math.sqrt:(D)D
d2f
fstore 13 /* nlen */
start local 13 // float nlen
10: .line 234
aload 0 /* this */
getfield com.sun.openpisces.Stroker.lineWidth2:F
fload 13 /* nlen */
fdiv
fstore 14 /* scale */
start local 14 // float scale
11: .line 235
fload 11 /* nx */
fload 14 /* scale */
fmul
fstore 15 /* mmx */
start local 15 // float mmx
12: fload 12 /* ny */
fload 14 /* scale */
fmul
fstore 16 /* mmy */
start local 16 // float mmy
13: .line 240
iload 7 /* rev */
ifeq 16
14: .line 241
fload 15 /* mmx */
fneg
fstore 15 /* mmx */
15: .line 242
fload 16 /* mmy */
fneg
fstore 16 /* mmy */
16: .line 244
StackMap locals: com.sun.openpisces.Stroker float float float float float float int double int float float float float float float
StackMap stack:
aload 0 /* this */
fload 1 /* cx */
fload 2 /* cy */
fload 3 /* omx */
fload 4 /* omy */
fload 15 /* mmx */
fload 16 /* mmy */
iload 7 /* rev */
invokevirtual com.sun.openpisces.Stroker.drawBezApproxForArc:(FFFFFFZ)V
17: .line 245
aload 0 /* this */
fload 1 /* cx */
fload 2 /* cy */
fload 15 /* mmx */
fload 16 /* mmy */
fload 5 /* mx */
fload 6 /* my */
iload 7 /* rev */
invokevirtual com.sun.openpisces.Stroker.drawBezApproxForArc:(FFFFFFZ)V
end local 16 // float mmy
end local 15 // float mmx
end local 14 // float scale
end local 13 // float nlen
end local 12 // float ny
end local 11 // float nx
18: .line 248
StackMap locals: com.sun.openpisces.Stroker float float float float float float int double int
StackMap stack:
return
end local 10 // int numCurves
end local 8 // double cosext
end local 7 // boolean rev
end local 6 // float my
end local 5 // float mx
end local 4 // float omy
end local 3 // float omx
end local 2 // float cy
end local 1 // float cx
end local 0 // com.sun.openpisces.Stroker this
LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lcom/sun/openpisces/Stroker;
0 19 1 cx F
0 19 2 cy F
0 19 3 omx F
0 19 4 omy F
0 19 5 mx F
0 19 6 my F
0 19 7 rev Z
1 19 8 cosext D
4 19 10 numCurves I
8 18 11 nx F
9 18 12 ny F
10 18 13 nlen F
11 18 14 scale F
12 18 15 mmx F
13 18 16 mmy F
MethodParameters:
Name Flags
cx
cy
omx
omy
mx
my
rev
private void drawBezApproxForArc(float, float, float, float, float, float, boolean);
descriptor: (FFFFFFZ)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=10, locals=18, args_size=8
start local 0 // com.sun.openpisces.Stroker this
start local 1 // float cx
start local 2 // float cy
start local 3 // float omx
start local 4 // float omy
start local 5 // float mx
start local 6 // float my
start local 7 // boolean rev
0: .line 256
fload 3 /* omx */
fload 5 /* mx */
fmul
fload 4 /* omy */
fload 6 /* my */
fmul
fadd
fconst_2
aload 0 /* this */
getfield com.sun.openpisces.Stroker.lineWidth2:F
fmul
aload 0 /* this */
getfield com.sun.openpisces.Stroker.lineWidth2:F
fmul
fdiv
fstore 8 /* cosext2 */
start local 8 // float cosext2
1: .line 262
ldc 1.3333333333333333
ldc 0.5
fload 8 /* cosext2 */
f2d
dsub
invokestatic java.lang.Math.sqrt:(D)D
dmul
2: .line 263
dconst_1
fload 8 /* cosext2 */
f2d
ldc 0.5
dadd
invokestatic java.lang.Math.sqrt:(D)D
dadd
3: .line 262
ddiv
d2f
fstore 9 /* cv */
start local 9 // float cv
4: .line 265
iload 7 /* rev */
ifeq 6
5: .line 266
fload 9 /* cv */
fneg
fstore 9 /* cv */
6: .line 268
StackMap locals: float float
StackMap stack:
fload 1 /* cx */
fload 3 /* omx */
fadd
fstore 10 /* x1 */
start local 10 // float x1
7: .line 269
fload 2 /* cy */
fload 4 /* omy */
fadd
fstore 11 /* y1 */
start local 11 // float y1
8: .line 270
fload 10 /* x1 */
fload 9 /* cv */
fload 4 /* omy */
fmul
fsub
fstore 12 /* x2 */
start local 12 // float x2
9: .line 271
fload 11 /* y1 */
fload 9 /* cv */
fload 3 /* omx */
fmul
fadd
fstore 13 /* y2 */
start local 13 // float y2
10: .line 273
fload 1 /* cx */
fload 5 /* mx */
fadd
fstore 14 /* x4 */
start local 14 // float x4
11: .line 274
fload 2 /* cy */
fload 6 /* my */
fadd
fstore 15 /* y4 */
start local 15 // float y4
12: .line 275
fload 14 /* x4 */
fload 9 /* cv */
fload 6 /* my */
fmul
fadd
fstore 16 /* x3 */
start local 16 // float x3
13: .line 276
fload 15 /* y4 */
fload 9 /* cv */
fload 5 /* mx */
fmul
fsub
fstore 17 /* y3 */
start local 17 // float y3
14: .line 278
aload 0 /* this */
fload 10 /* x1 */
fload 11 /* y1 */
fload 12 /* x2 */
fload 13 /* y2 */
fload 16 /* x3 */
fload 17 /* y3 */
fload 14 /* x4 */
fload 15 /* y4 */
iload 7 /* rev */
invokevirtual com.sun.openpisces.Stroker.emitCurveTo:(FFFFFFFFZ)V
15: .line 279
return
end local 17 // float y3
end local 16 // float x3
end local 15 // float y4
end local 14 // float x4
end local 13 // float y2
end local 12 // float x2
end local 11 // float y1
end local 10 // float x1
end local 9 // float cv
end local 8 // float cosext2
end local 7 // boolean rev
end local 6 // float my
end local 5 // float mx
end local 4 // float omy
end local 3 // float omx
end local 2 // float cy
end local 1 // float cx
end local 0 // com.sun.openpisces.Stroker this
LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lcom/sun/openpisces/Stroker;
0 16 1 cx F
0 16 2 cy F
0 16 3 omx F
0 16 4 omy F
0 16 5 mx F
0 16 6 my F
0 16 7 rev Z
1 16 8 cosext2 F
4 16 9 cv F
7 16 10 x1 F
8 16 11 y1 F
9 16 12 x2 F
10 16 13 y2 F
11 16 14 x4 F
12 16 15 y4 F
13 16 16 x3 F
14 16 17 y3 F
MethodParameters:
Name Flags
cx final
cy final
omx final
omy final
mx final
my final
rev
private void drawRoundCap(float, float, float, float);
descriptor: (FFFF)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=10, locals=5, args_size=5
start local 0 // com.sun.openpisces.Stroker this
start local 1 // float cx
start local 2 // float cy
start local 3 // float mx
start local 4 // float my
0: .line 288
aload 0 /* this */
fload 1 /* cx */
fload 3 /* mx */
fadd
fload 2 /* cy */
fload 4 /* my */
fadd
1: .line 289
fload 1 /* cx */
fload 3 /* mx */
fadd
ldc 0.5522848
fload 4 /* my */
fmul
fsub
fload 2 /* cy */
fload 4 /* my */
fadd
ldc 0.5522848
fload 3 /* mx */
fmul
fadd
2: .line 290
fload 1 /* cx */
fload 4 /* my */
fsub
ldc 0.5522848
fload 3 /* mx */
fmul
fadd
fload 2 /* cy */
fload 3 /* mx */
fadd
ldc 0.5522848
fload 4 /* my */
fmul
fadd
3: .line 291
fload 1 /* cx */
fload 4 /* my */
fsub
fload 2 /* cy */
fload 3 /* mx */
fadd
4: .line 292
iconst_0
5: .line 288
invokevirtual com.sun.openpisces.Stroker.emitCurveTo:(FFFFFFFFZ)V
6: .line 293
aload 0 /* this */
fload 1 /* cx */
fload 4 /* my */
fsub
fload 2 /* cy */
fload 3 /* mx */
fadd
7: .line 294
fload 1 /* cx */
fload 4 /* my */
fsub
ldc 0.5522848
fload 3 /* mx */
fmul
fsub
fload 2 /* cy */
fload 3 /* mx */
fadd
ldc 0.5522848
fload 4 /* my */
fmul
fsub
8: .line 295
fload 1 /* cx */
fload 3 /* mx */
fsub
ldc 0.5522848
fload 4 /* my */
fmul
fsub
fload 2 /* cy */
fload 4 /* my */
fsub
ldc 0.5522848
fload 3 /* mx */
fmul
fadd
9: .line 296
fload 1 /* cx */
fload 3 /* mx */
fsub
fload 2 /* cy */
fload 4 /* my */
fsub
10: .line 297
iconst_0
11: .line 293
invokevirtual com.sun.openpisces.Stroker.emitCurveTo:(FFFFFFFFZ)V
12: .line 298
return
end local 4 // float my
end local 3 // float mx
end local 2 // float cy
end local 1 // float cx
end local 0 // com.sun.openpisces.Stroker this
LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lcom/sun/openpisces/Stroker;
0 13 1 cx F
0 13 2 cy F
0 13 3 mx F
0 13 4 my F
MethodParameters:
Name Flags
cx
cy
mx
my
private void computeMiter(float, float, float, float, float, float, float, float, float[], int);
descriptor: (FFFFFFFF[FI)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=17, args_size=11
start local 0 // com.sun.openpisces.Stroker this
start local 1 // float x0
start local 2 // float y0
start local 3 // float x1
start local 4 // float y1
start local 5 // float x0p
start local 6 // float y0p
start local 7 // float x1p
start local 8 // float y1p
start local 9 // float[] m
start local 10 // int off
0: .line 308
fload 3 /* x1 */
fload 1 /* x0 */
fsub
fstore 11 /* x10 */
start local 11 // float x10
1: .line 309
fload 4 /* y1 */
fload 2 /* y0 */
fsub
fstore 12 /* y10 */
start local 12 // float y10
2: .line 310
fload 7 /* x1p */
fload 5 /* x0p */
fsub
fstore 13 /* x10p */
start local 13 // float x10p
3: .line 311
fload 8 /* y1p */
fload 6 /* y0p */
fsub
fstore 14 /* y10p */
start local 14 // float y10p
4: .line 322
fload 11 /* x10 */
fload 14 /* y10p */
fmul
fload 13 /* x10p */
fload 12 /* y10 */
fmul
fsub
fstore 15 /* den */
start local 15 // float den
5: .line 323
fload 13 /* x10p */
fload 2 /* y0 */
fload 6 /* y0p */
fsub
fmul
fload 14 /* y10p */
fload 1 /* x0 */
fload 5 /* x0p */
fsub
fmul
fsub
fstore 16 /* t */
start local 16 // float t
6: .line 324
fload 16 /* t */
fload 15 /* den */
fdiv
fstore 16 /* t */
7: .line 325
aload 9 /* m */
iload 10 /* off */
iinc 10 /* off */ 1
fload 1 /* x0 */
fload 16 /* t */
fload 11 /* x10 */
fmul
fadd
fastore
8: .line 326
aload 9 /* m */
iload 10 /* off */
fload 2 /* y0 */
fload 16 /* t */
fload 12 /* y10 */
fmul
fadd
fastore
9: .line 327
return
end local 16 // float t
end local 15 // float den
end local 14 // float y10p
end local 13 // float x10p
end local 12 // float y10
end local 11 // float x10
end local 10 // int off
end local 9 // float[] m
end local 8 // float y1p
end local 7 // float x1p
end local 6 // float y0p
end local 5 // float x0p
end local 4 // float y1
end local 3 // float x1
end local 2 // float y0
end local 1 // float x0
end local 0 // com.sun.openpisces.Stroker this
LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lcom/sun/openpisces/Stroker;
0 10 1 x0 F
0 10 2 y0 F
0 10 3 x1 F
0 10 4 y1 F
0 10 5 x0p F
0 10 6 y0p F
0 10 7 x1p F
0 10 8 y1p F
0 10 9 m [F
0 10 10 off I
1 10 11 x10 F
2 10 12 y10 F
3 10 13 x10p F
4 10 14 y10p F
5 10 15 den F
6 10 16 t F
MethodParameters:
Name Flags
x0 final
y0 final
x1 final
y1 final
x0p final
y0p final
x1p final
y1p final
m final
off
private void safecomputeMiter(float, float, float, float, float, float, float, float, float[], int);
descriptor: (FFFFFFFF[FI)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=17, args_size=11
start local 0 // com.sun.openpisces.Stroker this
start local 1 // float x0
start local 2 // float y0
start local 3 // float x1
start local 4 // float y1
start local 5 // float x0p
start local 6 // float y0p
start local 7 // float x1p
start local 8 // float y1p
start local 9 // float[] m
start local 10 // int off
0: .line 337
fload 3 /* x1 */
fload 1 /* x0 */
fsub
fstore 11 /* x10 */
start local 11 // float x10
1: .line 338
fload 4 /* y1 */
fload 2 /* y0 */
fsub
fstore 12 /* y10 */
start local 12 // float y10
2: .line 339
fload 7 /* x1p */
fload 5 /* x0p */
fsub
fstore 13 /* x10p */
start local 13 // float x10p
3: .line 340
fload 8 /* y1p */
fload 6 /* y0p */
fsub
fstore 14 /* y10p */
start local 14 // float y10p
4: .line 351
fload 11 /* x10 */
fload 14 /* y10p */
fmul
fload 13 /* x10p */
fload 12 /* y10 */
fmul
fsub
fstore 15 /* den */
start local 15 // float den
5: .line 352
fload 15 /* den */
fconst_0
fcmpl
ifne 9
6: .line 353
aload 9 /* m */
iload 10 /* off */
iinc 10 /* off */ 1
fload 1 /* x0 */
fload 5 /* x0p */
fadd
fconst_2
fdiv
fastore
7: .line 354
aload 9 /* m */
iload 10 /* off */
fload 2 /* y0 */
fload 6 /* y0p */
fadd
fconst_2
fdiv
fastore
8: .line 355
return
9: .line 357
StackMap locals: com.sun.openpisces.Stroker float float float float float float float float float[] int float float float float float
StackMap stack:
fload 13 /* x10p */
fload 2 /* y0 */
fload 6 /* y0p */
fsub
fmul
fload 14 /* y10p */
fload 1 /* x0 */
fload 5 /* x0p */
fsub
fmul
fsub
fstore 16 /* t */
start local 16 // float t
10: .line 358
fload 16 /* t */
fload 15 /* den */
fdiv
fstore 16 /* t */
11: .line 359
aload 9 /* m */
iload 10 /* off */
iinc 10 /* off */ 1
fload 1 /* x0 */
fload 16 /* t */
fload 11 /* x10 */
fmul
fadd
fastore
12: .line 360
aload 9 /* m */
iload 10 /* off */
fload 2 /* y0 */
fload 16 /* t */
fload 12 /* y10 */
fmul
fadd
fastore
13: .line 361
return
end local 16 // float t
end local 15 // float den
end local 14 // float y10p
end local 13 // float x10p
end local 12 // float y10
end local 11 // float x10
end local 10 // int off
end local 9 // float[] m
end local 8 // float y1p
end local 7 // float x1p
end local 6 // float y0p
end local 5 // float x0p
end local 4 // float y1
end local 3 // float x1
end local 2 // float y0
end local 1 // float x0
end local 0 // com.sun.openpisces.Stroker this
LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lcom/sun/openpisces/Stroker;
0 14 1 x0 F
0 14 2 y0 F
0 14 3 x1 F
0 14 4 y1 F
0 14 5 x0p F
0 14 6 y0p F
0 14 7 x1p F
0 14 8 y1p F
0 14 9 m [F
0 14 10 off I
1 14 11 x10 F
2 14 12 y10 F
3 14 13 x10p F
4 14 14 y10p F
5 14 15 den F
10 14 16 t F
MethodParameters:
Name Flags
x0 final
y0 final
x1 final
y1 final
x0p final
y0p final
x1p final
y1p final
m final
off
private void drawMiter(float, float, float, float, float, float, float, float, float, float, boolean);
descriptor: (FFFFFFFFFFZ)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=11, locals=13, args_size=12
start local 0 // com.sun.openpisces.Stroker this
start local 1 // float pdx
start local 2 // float pdy
start local 3 // float x0
start local 4 // float y0
start local 5 // float dx
start local 6 // float dy
start local 7 // float omx
start local 8 // float omy
start local 9 // float mx
start local 10 // float my
start local 11 // boolean rev
0: .line 369
fload 9 /* mx */
fload 7 /* omx */
fcmpl
ifne 1
fload 10 /* my */
fload 8 /* omy */
fcmpl
ifeq 3
1: .line 370
StackMap locals:
StackMap stack:
fload 1 /* pdx */
fconst_0
fcmpl
ifne 2
fload 2 /* pdy */
fconst_0
fcmpl
ifeq 3
2: .line 371
StackMap locals:
StackMap stack:
fload 5 /* dx */
fconst_0
fcmpl
ifne 4
fload 6 /* dy */
fconst_0
fcmpl
ifne 4
3: .line 372
StackMap locals:
StackMap stack:
return
4: .line 375
StackMap locals:
StackMap stack:
iload 11 /* rev */
ifeq 9
5: .line 376
fload 7 /* omx */
fneg
fstore 7 /* omx */
6: .line 377
fload 8 /* omy */
fneg
fstore 8 /* omy */
7: .line 378
fload 9 /* mx */
fneg
fstore 9 /* mx */
8: .line 379
fload 10 /* my */
fneg
fstore 10 /* my */
9: .line 382
StackMap locals:
StackMap stack:
aload 0 /* this */
fload 3 /* x0 */
fload 1 /* pdx */
fsub
fload 7 /* omx */
fadd
fload 4 /* y0 */
fload 2 /* pdy */
fsub
fload 8 /* omy */
fadd
fload 3 /* x0 */
fload 7 /* omx */
fadd
fload 4 /* y0 */
fload 8 /* omy */
fadd
10: .line 383
fload 5 /* dx */
fload 3 /* x0 */
fadd
fload 9 /* mx */
fadd
fload 6 /* dy */
fload 4 /* y0 */
fadd
fload 10 /* my */
fadd
fload 3 /* x0 */
fload 9 /* mx */
fadd
fload 4 /* y0 */
fload 10 /* my */
fadd
11: .line 384
aload 0 /* this */
getfield com.sun.openpisces.Stroker.miter:[F
iconst_0
12: .line 382
invokevirtual com.sun.openpisces.Stroker.computeMiter:(FFFFFFFF[FI)V
13: .line 386
aload 0 /* this */
getfield com.sun.openpisces.Stroker.miter:[F
iconst_0
faload
fload 3 /* x0 */
fsub
aload 0 /* this */
getfield com.sun.openpisces.Stroker.miter:[F
iconst_0
faload
fload 3 /* x0 */
fsub
fmul
aload 0 /* this */
getfield com.sun.openpisces.Stroker.miter:[F
iconst_1
faload
fload 4 /* y0 */
fsub
aload 0 /* this */
getfield com.sun.openpisces.Stroker.miter:[F
iconst_1
faload
fload 4 /* y0 */
fsub
fmul
fadd
fstore 12 /* lenSq */
start local 12 // float lenSq
14: .line 388
fload 12 /* lenSq */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.miterLimitSq:F
fcmpg
ifge 16
15: .line 389
aload 0 /* this */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.miter:[F
iconst_0
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.miter:[F
iconst_1
faload
iload 11 /* rev */
invokevirtual com.sun.openpisces.Stroker.emitLineTo:(FFZ)V
16: .line 391
StackMap locals: float
StackMap stack:
return
end local 12 // float lenSq
end local 11 // boolean rev
end local 10 // float my
end local 9 // float mx
end local 8 // float omy
end local 7 // float omx
end local 6 // float dy
end local 5 // float dx
end local 4 // float y0
end local 3 // float x0
end local 2 // float pdy
end local 1 // float pdx
end local 0 // com.sun.openpisces.Stroker this
LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lcom/sun/openpisces/Stroker;
0 17 1 pdx F
0 17 2 pdy F
0 17 3 x0 F
0 17 4 y0 F
0 17 5 dx F
0 17 6 dy F
0 17 7 omx F
0 17 8 omy F
0 17 9 mx F
0 17 10 my F
0 17 11 rev Z
14 17 12 lenSq F
MethodParameters:
Name Flags
pdx final
pdy final
x0 final
y0 final
dx final
dy final
omx
omy
mx
my
rev
public void moveTo(float, float);
descriptor: (FF)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 // com.sun.openpisces.Stroker this
start local 1 // float x0
start local 2 // float y0
0: .line 394
aload 0 /* this */
getfield com.sun.openpisces.Stroker.prev:I
iconst_1
if_icmpne 2
1: .line 395
aload 0 /* this */
invokevirtual com.sun.openpisces.Stroker.finish:()V
2: .line 397
StackMap locals:
StackMap stack:
aload 0 /* this */
aload 0 /* this */
fload 1 /* x0 */
dup_x1
putfield com.sun.openpisces.Stroker.cx0:F
putfield com.sun.openpisces.Stroker.sx0:F
3: .line 398
aload 0 /* this */
aload 0 /* this */
fload 2 /* y0 */
dup_x1
putfield com.sun.openpisces.Stroker.cy0:F
putfield com.sun.openpisces.Stroker.sy0:F
4: .line 399
aload 0 /* this */
aload 0 /* this */
fconst_1
dup_x1
putfield com.sun.openpisces.Stroker.sdx:F
putfield com.sun.openpisces.Stroker.cdx:F
5: .line 400
aload 0 /* this */
aload 0 /* this */
fconst_0
dup_x1
putfield com.sun.openpisces.Stroker.sdy:F
putfield com.sun.openpisces.Stroker.cdy:F
6: .line 401
aload 0 /* this */
iconst_0
putfield com.sun.openpisces.Stroker.prev:I
7: .line 402
return
end local 2 // float y0
end local 1 // float x0
end local 0 // com.sun.openpisces.Stroker this
LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/sun/openpisces/Stroker;
0 8 1 x0 F
0 8 2 y0 F
MethodParameters:
Name Flags
x0
y0
public void lineTo(float, float);
descriptor: (FF)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=11, locals=7, args_size=3
start local 0 // com.sun.openpisces.Stroker this
start local 1 // float x1
start local 2 // float y1
0: .line 405
fload 1 /* x1 */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.cx0:F
fsub
fstore 3 /* dx */
start local 3 // float dx
1: .line 406
fload 2 /* y1 */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.cy0:F
fsub
fstore 4 /* dy */
start local 4 // float dy
2: .line 407
fload 3 /* dx */
fconst_0
fcmpl
ifne 4
fload 4 /* dy */
fconst_0
fcmpl
ifne 4
3: .line 408
fconst_1
fstore 3 /* dx */
4: .line 410
StackMap locals: float float
StackMap stack:
fload 3 /* dx */
fload 4 /* dy */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.lineWidth2:F
aload 0 /* this */
getfield com.sun.openpisces.Stroker.offset:[[F
iconst_0
aaload
invokestatic com.sun.openpisces.Stroker.computeOffset:(FFF[F)V
5: .line 411
aload 0 /* this */
getfield com.sun.openpisces.Stroker.offset:[[F
iconst_0
aaload
iconst_0
faload
fstore 5 /* mx */
start local 5 // float mx
6: .line 412
aload 0 /* this */
getfield com.sun.openpisces.Stroker.offset:[[F
iconst_0
aaload
iconst_1
faload
fstore 6 /* my */
start local 6 // float my
7: .line 414
aload 0 /* this */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.cdx:F
aload 0 /* this */
getfield com.sun.openpisces.Stroker.cdy:F
aload 0 /* this */
getfield com.sun.openpisces.Stroker.cx0:F
aload 0 /* this */
getfield com.sun.openpisces.Stroker.cy0:F
fload 3 /* dx */
fload 4 /* dy */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.cmx:F
aload 0 /* this */
getfield com.sun.openpisces.Stroker.cmy:F
fload 5 /* mx */
fload 6 /* my */
invokevirtual com.sun.openpisces.Stroker.drawJoin:(FFFFFFFFFF)V
8: .line 416
aload 0 /* this */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.cx0:F
fload 5 /* mx */
fadd
aload 0 /* this */
getfield com.sun.openpisces.Stroker.cy0:F
fload 6 /* my */
fadd
invokevirtual com.sun.openpisces.Stroker.emitLineTo:(FF)V
9: .line 417
aload 0 /* this */
fload 1 /* x1 */
fload 5 /* mx */
fadd
fload 2 /* y1 */
fload 6 /* my */
fadd
invokevirtual com.sun.openpisces.Stroker.emitLineTo:(FF)V
10: .line 419
aload 0 /* this */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.cx0:F
fload 5 /* mx */
fsub
aload 0 /* this */
getfield com.sun.openpisces.Stroker.cy0:F
fload 6 /* my */
fsub
iconst_1
invokevirtual com.sun.openpisces.Stroker.emitLineTo:(FFZ)V
11: .line 420
aload 0 /* this */
fload 1 /* x1 */
fload 5 /* mx */
fsub
fload 2 /* y1 */
fload 6 /* my */
fsub
iconst_1
invokevirtual com.sun.openpisces.Stroker.emitLineTo:(FFZ)V
12: .line 422
aload 0 /* this */
fload 5 /* mx */
putfield com.sun.openpisces.Stroker.cmx:F
13: .line 423
aload 0 /* this */
fload 6 /* my */
putfield com.sun.openpisces.Stroker.cmy:F
14: .line 424
aload 0 /* this */
fload 3 /* dx */
putfield com.sun.openpisces.Stroker.cdx:F
15: .line 425
aload 0 /* this */
fload 4 /* dy */
putfield com.sun.openpisces.Stroker.cdy:F
16: .line 426
aload 0 /* this */
fload 1 /* x1 */
putfield com.sun.openpisces.Stroker.cx0:F
17: .line 427
aload 0 /* this */
fload 2 /* y1 */
putfield com.sun.openpisces.Stroker.cy0:F
18: .line 428
aload 0 /* this */
iconst_1
putfield com.sun.openpisces.Stroker.prev:I
19: .line 429
return
end local 6 // float my
end local 5 // float mx
end local 4 // float dy
end local 3 // float dx
end local 2 // float y1
end local 1 // float x1
end local 0 // com.sun.openpisces.Stroker this
LocalVariableTable:
Start End Slot Name Signature
0 20 0 this Lcom/sun/openpisces/Stroker;
0 20 1 x1 F
0 20 2 y1 F
1 20 3 dx F
2 20 4 dy F
6 20 5 mx F
7 20 6 my F
MethodParameters:
Name Flags
x1
y1
public void closePath();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=11, locals=1, args_size=1
start local 0 // com.sun.openpisces.Stroker this
0: .line 432
aload 0 /* this */
getfield com.sun.openpisces.Stroker.prev:I
iconst_1
if_icmpeq 10
1: .line 433
aload 0 /* this */
getfield com.sun.openpisces.Stroker.prev:I
iconst_2
if_icmpne 3
2: .line 434
return
3: .line 436
StackMap locals:
StackMap stack:
aload 0 /* this */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.cx0:F
aload 0 /* this */
getfield com.sun.openpisces.Stroker.cy0:F
aload 0 /* this */
getfield com.sun.openpisces.Stroker.lineWidth2:F
fsub
invokevirtual com.sun.openpisces.Stroker.emitMoveTo:(FF)V
4: .line 437
aload 0 /* this */
aload 0 /* this */
fconst_0
dup_x1
putfield com.sun.openpisces.Stroker.smx:F
putfield com.sun.openpisces.Stroker.cmx:F
5: .line 438
aload 0 /* this */
aload 0 /* this */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.lineWidth2:F
fneg
dup_x1
putfield com.sun.openpisces.Stroker.smy:F
putfield com.sun.openpisces.Stroker.cmy:F
6: .line 439
aload 0 /* this */
aload 0 /* this */
fconst_1
dup_x1
putfield com.sun.openpisces.Stroker.sdx:F
putfield com.sun.openpisces.Stroker.cdx:F
7: .line 440
aload 0 /* this */
aload 0 /* this */
fconst_0
dup_x1
putfield com.sun.openpisces.Stroker.sdy:F
putfield com.sun.openpisces.Stroker.cdy:F
8: .line 441
aload 0 /* this */
invokevirtual com.sun.openpisces.Stroker.finish:()V
9: .line 442
return
10: .line 445
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield com.sun.openpisces.Stroker.cx0:F
aload 0 /* this */
getfield com.sun.openpisces.Stroker.sx0:F
fcmpl
ifne 11
aload 0 /* this */
getfield com.sun.openpisces.Stroker.cy0:F
aload 0 /* this */
getfield com.sun.openpisces.Stroker.sy0:F
fcmpl
ifeq 12
11: .line 446
StackMap locals:
StackMap stack:
aload 0 /* this */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.sx0:F
aload 0 /* this */
getfield com.sun.openpisces.Stroker.sy0:F
invokevirtual com.sun.openpisces.Stroker.lineTo:(FF)V
12: .line 449
StackMap locals:
StackMap stack:
aload 0 /* this */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.cdx:F
aload 0 /* this */
getfield com.sun.openpisces.Stroker.cdy:F
aload 0 /* this */
getfield com.sun.openpisces.Stroker.cx0:F
aload 0 /* this */
getfield com.sun.openpisces.Stroker.cy0:F
aload 0 /* this */
getfield com.sun.openpisces.Stroker.sdx:F
aload 0 /* this */
getfield com.sun.openpisces.Stroker.sdy:F
aload 0 /* this */
getfield com.sun.openpisces.Stroker.cmx:F
aload 0 /* this */
getfield com.sun.openpisces.Stroker.cmy:F
aload 0 /* this */
getfield com.sun.openpisces.Stroker.smx:F
aload 0 /* this */
getfield com.sun.openpisces.Stroker.smy:F
invokevirtual com.sun.openpisces.Stroker.drawJoin:(FFFFFFFFFF)V
13: .line 451
aload 0 /* this */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.sx0:F
aload 0 /* this */
getfield com.sun.openpisces.Stroker.smx:F
fadd
aload 0 /* this */
getfield com.sun.openpisces.Stroker.sy0:F
aload 0 /* this */
getfield com.sun.openpisces.Stroker.smy:F
fadd
invokevirtual com.sun.openpisces.Stroker.emitLineTo:(FF)V
14: .line 453
aload 0 /* this */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.sx0:F
aload 0 /* this */
getfield com.sun.openpisces.Stroker.smx:F
fsub
aload 0 /* this */
getfield com.sun.openpisces.Stroker.sy0:F
aload 0 /* this */
getfield com.sun.openpisces.Stroker.smy:F
fsub
invokevirtual com.sun.openpisces.Stroker.emitMoveTo:(FF)V
15: .line 454
aload 0 /* this */
invokevirtual com.sun.openpisces.Stroker.emitReverse:()V
16: .line 456
aload 0 /* this */
iconst_2
putfield com.sun.openpisces.Stroker.prev:I
17: .line 457
aload 0 /* this */
invokevirtual com.sun.openpisces.Stroker.emitClose:()V
18: .line 458
return
end local 0 // com.sun.openpisces.Stroker this
LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lcom/sun/openpisces/Stroker;
private void emitReverse();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 // com.sun.openpisces.Stroker this
0: .line 461
goto 2
1: .line 462
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield com.sun.openpisces.Stroker.reverse:Lcom/sun/openpisces/Stroker$PolyStack;
aload 0 /* this */
getfield com.sun.openpisces.Stroker.out:Lcom/sun/javafx/geom/PathConsumer2D;
invokevirtual com.sun.openpisces.Stroker$PolyStack.pop:(Lcom/sun/javafx/geom/PathConsumer2D;)V
2: .line 461
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield com.sun.openpisces.Stroker.reverse:Lcom/sun/openpisces/Stroker$PolyStack;
invokevirtual com.sun.openpisces.Stroker$PolyStack.isEmpty:()Z
ifeq 1
3: .line 464
return
end local 0 // com.sun.openpisces.Stroker this
LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/openpisces/Stroker;
public void pathDone();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 // com.sun.openpisces.Stroker this
0: .line 467
aload 0 /* this */
getfield com.sun.openpisces.Stroker.prev:I
iconst_1
if_icmpne 2
1: .line 468
aload 0 /* this */
invokevirtual com.sun.openpisces.Stroker.finish:()V
2: .line 471
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield com.sun.openpisces.Stroker.out:Lcom/sun/javafx/geom/PathConsumer2D;
invokeinterface com.sun.javafx.geom.PathConsumer2D.pathDone:()V
3: .line 474
aload 0 /* this */
iconst_2
putfield com.sun.openpisces.Stroker.prev:I
4: .line 475
return
end local 0 // com.sun.openpisces.Stroker this
LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/sun/openpisces/Stroker;
private void finish();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=1, args_size=1
start local 0 // com.sun.openpisces.Stroker this
0: .line 478
aload 0 /* this */
getfield com.sun.openpisces.Stroker.capStyle:I
iconst_1
if_icmpne 3
1: .line 479
aload 0 /* this */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.cx0:F
aload 0 /* this */
getfield com.sun.openpisces.Stroker.cy0:F
aload 0 /* this */
getfield com.sun.openpisces.Stroker.cmx:F
aload 0 /* this */
getfield com.sun.openpisces.Stroker.cmy:F
invokevirtual com.sun.openpisces.Stroker.drawRoundCap:(FFFF)V
2: .line 480
goto 6
StackMap locals:
StackMap stack:
3: aload 0 /* this */
getfield com.sun.openpisces.Stroker.capStyle:I
iconst_2
if_icmpne 6
4: .line 481
aload 0 /* this */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.cx0:F
aload 0 /* this */
getfield com.sun.openpisces.Stroker.cmy:F
fsub
aload 0 /* this */
getfield com.sun.openpisces.Stroker.cmx:F
fadd
aload 0 /* this */
getfield com.sun.openpisces.Stroker.cy0:F
aload 0 /* this */
getfield com.sun.openpisces.Stroker.cmx:F
fadd
aload 0 /* this */
getfield com.sun.openpisces.Stroker.cmy:F
fadd
invokevirtual com.sun.openpisces.Stroker.emitLineTo:(FF)V
5: .line 482
aload 0 /* this */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.cx0:F
aload 0 /* this */
getfield com.sun.openpisces.Stroker.cmy:F
fsub
aload 0 /* this */
getfield com.sun.openpisces.Stroker.cmx:F
fsub
aload 0 /* this */
getfield com.sun.openpisces.Stroker.cy0:F
aload 0 /* this */
getfield com.sun.openpisces.Stroker.cmx:F
fadd
aload 0 /* this */
getfield com.sun.openpisces.Stroker.cmy:F
fsub
invokevirtual com.sun.openpisces.Stroker.emitLineTo:(FF)V
6: .line 485
StackMap locals:
StackMap stack:
aload 0 /* this */
invokevirtual com.sun.openpisces.Stroker.emitReverse:()V
7: .line 487
aload 0 /* this */
getfield com.sun.openpisces.Stroker.capStyle:I
iconst_1
if_icmpne 10
8: .line 488
aload 0 /* this */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.sx0:F
aload 0 /* this */
getfield com.sun.openpisces.Stroker.sy0:F
aload 0 /* this */
getfield com.sun.openpisces.Stroker.smx:F
fneg
aload 0 /* this */
getfield com.sun.openpisces.Stroker.smy:F
fneg
invokevirtual com.sun.openpisces.Stroker.drawRoundCap:(FFFF)V
9: .line 489
goto 13
StackMap locals:
StackMap stack:
10: aload 0 /* this */
getfield com.sun.openpisces.Stroker.capStyle:I
iconst_2
if_icmpne 13
11: .line 490
aload 0 /* this */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.sx0:F
aload 0 /* this */
getfield com.sun.openpisces.Stroker.smy:F
fadd
aload 0 /* this */
getfield com.sun.openpisces.Stroker.smx:F
fsub
aload 0 /* this */
getfield com.sun.openpisces.Stroker.sy0:F
aload 0 /* this */
getfield com.sun.openpisces.Stroker.smx:F
fsub
aload 0 /* this */
getfield com.sun.openpisces.Stroker.smy:F
fsub
invokevirtual com.sun.openpisces.Stroker.emitLineTo:(FF)V
12: .line 491
aload 0 /* this */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.sx0:F
aload 0 /* this */
getfield com.sun.openpisces.Stroker.smy:F
fadd
aload 0 /* this */
getfield com.sun.openpisces.Stroker.smx:F
fadd
aload 0 /* this */
getfield com.sun.openpisces.Stroker.sy0:F
aload 0 /* this */
getfield com.sun.openpisces.Stroker.smx:F
fsub
aload 0 /* this */
getfield com.sun.openpisces.Stroker.smy:F
fadd
invokevirtual com.sun.openpisces.Stroker.emitLineTo:(FF)V
13: .line 494
StackMap locals:
StackMap stack:
aload 0 /* this */
invokevirtual com.sun.openpisces.Stroker.emitClose:()V
14: .line 495
return
end local 0 // com.sun.openpisces.Stroker this
LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lcom/sun/openpisces/Stroker;
private void emitMoveTo(float, float);
descriptor: (FF)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=3
start local 0 // com.sun.openpisces.Stroker this
start local 1 // float x0
start local 2 // float y0
0: .line 498
aload 0 /* this */
getfield com.sun.openpisces.Stroker.out:Lcom/sun/javafx/geom/PathConsumer2D;
fload 1 /* x0 */
fload 2 /* y0 */
invokeinterface com.sun.javafx.geom.PathConsumer2D.moveTo:(FF)V
1: .line 499
return
end local 2 // float y0
end local 1 // float x0
end local 0 // com.sun.openpisces.Stroker this
LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/openpisces/Stroker;
0 2 1 x0 F
0 2 2 y0 F
MethodParameters:
Name Flags
x0 final
y0 final
private void emitLineTo(float, float);
descriptor: (FF)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=3
start local 0 // com.sun.openpisces.Stroker this
start local 1 // float x1
start local 2 // float y1
0: .line 502
aload 0 /* this */
getfield com.sun.openpisces.Stroker.out:Lcom/sun/javafx/geom/PathConsumer2D;
fload 1 /* x1 */
fload 2 /* y1 */
invokeinterface com.sun.javafx.geom.PathConsumer2D.lineTo:(FF)V
1: .line 503
return
end local 2 // float y1
end local 1 // float x1
end local 0 // com.sun.openpisces.Stroker this
LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/openpisces/Stroker;
0 2 1 x1 F
0 2 2 y1 F
MethodParameters:
Name Flags
x1 final
y1 final
private void emitLineTo(float, float, boolean);
descriptor: (FFZ)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=4, args_size=4
start local 0 // com.sun.openpisces.Stroker this
start local 1 // float x1
start local 2 // float y1
start local 3 // boolean rev
0: .line 508
iload 3 /* rev */
ifeq 3
1: .line 509
aload 0 /* this */
getfield com.sun.openpisces.Stroker.reverse:Lcom/sun/openpisces/Stroker$PolyStack;
fload 1 /* x1 */
fload 2 /* y1 */
invokevirtual com.sun.openpisces.Stroker$PolyStack.pushLine:(FF)V
2: .line 510
goto 4
3: .line 511
StackMap locals:
StackMap stack:
aload 0 /* this */
fload 1 /* x1 */
fload 2 /* y1 */
invokevirtual com.sun.openpisces.Stroker.emitLineTo:(FF)V
4: .line 513
StackMap locals:
StackMap stack:
return
end local 3 // boolean rev
end local 2 // float y1
end local 1 // float x1
end local 0 // com.sun.openpisces.Stroker this
LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/sun/openpisces/Stroker;
0 5 1 x1 F
0 5 2 y1 F
0 5 3 rev Z
MethodParameters:
Name Flags
x1 final
y1 final
rev final
private void emitQuadTo(float, float, float, float, float, float, boolean);
descriptor: (FFFFFFZ)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=8, args_size=8
start local 0 // com.sun.openpisces.Stroker this
start local 1 // float x0
start local 2 // float y0
start local 3 // float x1
start local 4 // float y1
start local 5 // float x2
start local 6 // float y2
start local 7 // boolean rev
0: .line 519
iload 7 /* rev */
ifeq 3
1: .line 520
aload 0 /* this */
getfield com.sun.openpisces.Stroker.reverse:Lcom/sun/openpisces/Stroker$PolyStack;
fload 1 /* x0 */
fload 2 /* y0 */
fload 3 /* x1 */
fload 4 /* y1 */
invokevirtual com.sun.openpisces.Stroker$PolyStack.pushQuad:(FFFF)V
2: .line 521
goto 4
3: .line 522
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield com.sun.openpisces.Stroker.out:Lcom/sun/javafx/geom/PathConsumer2D;
fload 3 /* x1 */
fload 4 /* y1 */
fload 5 /* x2 */
fload 6 /* y2 */
invokeinterface com.sun.javafx.geom.PathConsumer2D.quadTo:(FFFF)V
4: .line 524
StackMap locals:
StackMap stack:
return
end local 7 // boolean rev
end local 6 // float y2
end local 5 // float x2
end local 4 // float y1
end local 3 // float x1
end local 2 // float y0
end local 1 // float x0
end local 0 // com.sun.openpisces.Stroker this
LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/sun/openpisces/Stroker;
0 5 1 x0 F
0 5 2 y0 F
0 5 3 x1 F
0 5 4 y1 F
0 5 5 x2 F
0 5 6 y2 F
0 5 7 rev Z
MethodParameters:
Name Flags
x0 final
y0 final
x1 final
y1 final
x2 final
y2 final
rev final
private void emitCurveTo(float, float, float, float, float, float, float, float, boolean);
descriptor: (FFFFFFFFZ)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=10, args_size=10
start local 0 // com.sun.openpisces.Stroker this
start local 1 // float x0
start local 2 // float y0
start local 3 // float x1
start local 4 // float y1
start local 5 // float x2
start local 6 // float y2
start local 7 // float x3
start local 8 // float y3
start local 9 // boolean rev
0: .line 531
iload 9 /* rev */
ifeq 3
1: .line 532
aload 0 /* this */
getfield com.sun.openpisces.Stroker.reverse:Lcom/sun/openpisces/Stroker$PolyStack;
fload 1 /* x0 */
fload 2 /* y0 */
fload 3 /* x1 */
fload 4 /* y1 */
fload 5 /* x2 */
fload 6 /* y2 */
invokevirtual com.sun.openpisces.Stroker$PolyStack.pushCubic:(FFFFFF)V
2: .line 533
goto 4
3: .line 534
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield com.sun.openpisces.Stroker.out:Lcom/sun/javafx/geom/PathConsumer2D;
fload 3 /* x1 */
fload 4 /* y1 */
fload 5 /* x2 */
fload 6 /* y2 */
fload 7 /* x3 */
fload 8 /* y3 */
invokeinterface com.sun.javafx.geom.PathConsumer2D.curveTo:(FFFFFF)V
4: .line 536
StackMap locals:
StackMap stack:
return
end local 9 // boolean rev
end local 8 // float y3
end local 7 // float x3
end local 6 // float y2
end local 5 // float x2
end local 4 // float y1
end local 3 // float x1
end local 2 // float y0
end local 1 // float x0
end local 0 // com.sun.openpisces.Stroker this
LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/sun/openpisces/Stroker;
0 5 1 x0 F
0 5 2 y0 F
0 5 3 x1 F
0 5 4 y1 F
0 5 5 x2 F
0 5 6 y2 F
0 5 7 x3 F
0 5 8 y3 F
0 5 9 rev Z
MethodParameters:
Name Flags
x0 final
y0 final
x1 final
y1 final
x2 final
y2 final
x3 final
y3 final
rev final
private void emitClose();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 // com.sun.openpisces.Stroker this
0: .line 539
aload 0 /* this */
getfield com.sun.openpisces.Stroker.out:Lcom/sun/javafx/geom/PathConsumer2D;
invokeinterface com.sun.javafx.geom.PathConsumer2D.closePath:()V
1: .line 540
return
end local 0 // com.sun.openpisces.Stroker this
LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/openpisces/Stroker;
private void drawJoin(float, float, float, float, float, float, float, float, float, float);
descriptor: (FFFFFFFFFF)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=12, locals=12, args_size=11
start local 0 // com.sun.openpisces.Stroker this
start local 1 // float pdx
start local 2 // float pdy
start local 3 // float x0
start local 4 // float y0
start local 5 // float dx
start local 6 // float dy
start local 7 // float omx
start local 8 // float omy
start local 9 // float mx
start local 10 // float my
0: .line 548
aload 0 /* this */
getfield com.sun.openpisces.Stroker.prev:I
iconst_1
if_icmpeq 7
1: .line 549
aload 0 /* this */
fload 3 /* x0 */
fload 9 /* mx */
fadd
fload 4 /* y0 */
fload 10 /* my */
fadd
invokevirtual com.sun.openpisces.Stroker.emitMoveTo:(FF)V
2: .line 550
aload 0 /* this */
fload 5 /* dx */
putfield com.sun.openpisces.Stroker.sdx:F
3: .line 551
aload 0 /* this */
fload 6 /* dy */
putfield com.sun.openpisces.Stroker.sdy:F
4: .line 552
aload 0 /* this */
fload 9 /* mx */
putfield com.sun.openpisces.Stroker.smx:F
5: .line 553
aload 0 /* this */
fload 10 /* my */
putfield com.sun.openpisces.Stroker.smy:F
6: .line 554
goto 20
7: .line 555
StackMap locals:
StackMap stack:
fload 1 /* pdx */
fload 2 /* pdy */
fload 5 /* dx */
fload 6 /* dy */
invokestatic com.sun.openpisces.Stroker.isCW:(FFFF)Z
istore 11 /* cw */
start local 11 // boolean cw
8: .line 556
aload 0 /* this */
getfield com.sun.openpisces.Stroker.joinStyle:I
ifne 11
9: .line 557
aload 0 /* this */
fload 1 /* pdx */
fload 2 /* pdy */
fload 3 /* x0 */
fload 4 /* y0 */
fload 5 /* dx */
fload 6 /* dy */
fload 7 /* omx */
fload 8 /* omy */
fload 9 /* mx */
fload 10 /* my */
iload 11 /* cw */
invokevirtual com.sun.openpisces.Stroker.drawMiter:(FFFFFFFFFFZ)V
10: .line 558
goto 17
StackMap locals: int
StackMap stack:
11: aload 0 /* this */
getfield com.sun.openpisces.Stroker.joinStyle:I
iconst_1
if_icmpne 17
12: .line 559
aload 0 /* this */
fload 3 /* x0 */
fload 4 /* y0 */
13: .line 560
fload 7 /* omx */
fload 8 /* omy */
14: .line 561
fload 9 /* mx */
fload 10 /* my */
iload 11 /* cw */
15: .line 562
ldc 0.015258789
16: .line 559
invokevirtual com.sun.openpisces.Stroker.drawRoundJoin:(FFFFFFZF)V
17: .line 564
StackMap locals:
StackMap stack:
aload 0 /* this */
fload 3 /* x0 */
fload 4 /* y0 */
iload 11 /* cw */
ifeq 18
iconst_0
goto 19
StackMap locals: com.sun.openpisces.Stroker float float float float float float float float float float int
StackMap stack: com.sun.openpisces.Stroker float float
18: iconst_1
StackMap locals: com.sun.openpisces.Stroker float float float float float float float float float float int
StackMap stack: com.sun.openpisces.Stroker float float int
19: invokevirtual com.sun.openpisces.Stroker.emitLineTo:(FFZ)V
end local 11 // boolean cw
20: .line 566
StackMap locals:
StackMap stack:
aload 0 /* this */
iconst_1
putfield com.sun.openpisces.Stroker.prev:I
21: .line 567
return
end local 10 // float my
end local 9 // float mx
end local 8 // float omy
end local 7 // float omx
end local 6 // float dy
end local 5 // float dx
end local 4 // float y0
end local 3 // float x0
end local 2 // float pdy
end local 1 // float pdx
end local 0 // com.sun.openpisces.Stroker this
LocalVariableTable:
Start End Slot Name Signature
0 22 0 this Lcom/sun/openpisces/Stroker;
0 22 1 pdx F
0 22 2 pdy F
0 22 3 x0 F
0 22 4 y0 F
0 22 5 dx F
0 22 6 dy F
0 22 7 omx F
0 22 8 omy F
0 22 9 mx F
0 22 10 my F
8 20 11 cw Z
MethodParameters:
Name Flags
pdx
pdy
x0
y0
dx
dy
omx
omy
mx
my
private static boolean within(float, float, float, float, float);
descriptor: (FFFFF)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=5, args_size=5
start local 0 // float x1
start local 1 // float y1
start local 2 // float x2
start local 3 // float y2
start local 4 // float ERR
0: .line 573
getstatic com.sun.openpisces.Stroker.$assertionsDisabled:Z
ifne 1
fload 4 /* ERR */
fconst_0
fcmpl
ifgt 1
new java.lang.AssertionError
dup
ldc ""
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
1: .line 576
StackMap locals:
StackMap stack:
fload 0 /* x1 */
fload 2 /* x2 */
fload 4 /* ERR */
invokestatic com.sun.openpisces.Helpers.within:(FFF)Z
ifeq 4
2: .line 577
fload 1 /* y1 */
fload 3 /* y2 */
fload 4 /* ERR */
invokestatic com.sun.openpisces.Helpers.within:(FFF)Z
ifeq 4
3: .line 576
iconst_1
ireturn
StackMap locals:
StackMap stack:
4: iconst_0
ireturn
end local 4 // float ERR
end local 3 // float y2
end local 2 // float x2
end local 1 // float y1
end local 0 // float x1
LocalVariableTable:
Start End Slot Name Signature
0 5 0 x1 F
0 5 1 y1 F
0 5 2 x2 F
0 5 3 y2 F
0 5 4 ERR F
MethodParameters:
Name Flags
x1 final
y1 final
x2 final
y2 final
ERR final
private void getLineOffsets(float, float, float, float, float[], float[]);
descriptor: (FFFF[F[F)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=7, args_size=7
start local 0 // com.sun.openpisces.Stroker this
start local 1 // float x1
start local 2 // float y1
start local 3 // float x2
start local 4 // float y2
start local 5 // float[] left
start local 6 // float[] right
0: .line 583
fload 3 /* x2 */
fload 1 /* x1 */
fsub
fload 4 /* y2 */
fload 2 /* y1 */
fsub
aload 0 /* this */
getfield com.sun.openpisces.Stroker.lineWidth2:F
aload 0 /* this */
getfield com.sun.openpisces.Stroker.offset:[[F
iconst_0
aaload
invokestatic com.sun.openpisces.Stroker.computeOffset:(FFF[F)V
1: .line 584
aload 5 /* left */
iconst_0
fload 1 /* x1 */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.offset:[[F
iconst_0
aaload
iconst_0
faload
fadd
fastore
2: .line 585
aload 5 /* left */
iconst_1
fload 2 /* y1 */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.offset:[[F
iconst_0
aaload
iconst_1
faload
fadd
fastore
3: .line 586
aload 5 /* left */
iconst_2
fload 3 /* x2 */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.offset:[[F
iconst_0
aaload
iconst_0
faload
fadd
fastore
4: .line 587
aload 5 /* left */
iconst_3
fload 4 /* y2 */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.offset:[[F
iconst_0
aaload
iconst_1
faload
fadd
fastore
5: .line 588
aload 6 /* right */
iconst_0
fload 1 /* x1 */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.offset:[[F
iconst_0
aaload
iconst_0
faload
fsub
fastore
6: .line 589
aload 6 /* right */
iconst_1
fload 2 /* y1 */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.offset:[[F
iconst_0
aaload
iconst_1
faload
fsub
fastore
7: .line 590
aload 6 /* right */
iconst_2
fload 3 /* x2 */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.offset:[[F
iconst_0
aaload
iconst_0
faload
fsub
fastore
8: .line 591
aload 6 /* right */
iconst_3
fload 4 /* y2 */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.offset:[[F
iconst_0
aaload
iconst_1
faload
fsub
fastore
9: .line 592
return
end local 6 // float[] right
end local 5 // float[] left
end local 4 // float y2
end local 3 // float x2
end local 2 // float y1
end local 1 // float x1
end local 0 // com.sun.openpisces.Stroker this
LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lcom/sun/openpisces/Stroker;
0 10 1 x1 F
0 10 2 y1 F
0 10 3 x2 F
0 10 4 y2 F
0 10 5 left [F
0 10 6 right [F
MethodParameters:
Name Flags
x1
y1
x2
y2
left
right
private int computeOffsetCubic(float[], int, float[], float[]);
descriptor: ([FI[F[F)I
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=41, args_size=5
start local 0 // com.sun.openpisces.Stroker this
start local 1 // float[] pts
start local 2 // int off
start local 3 // float[] leftOff
start local 4 // float[] rightOff
0: .line 604
aload 1 /* pts */
iload 2 /* off */
iconst_0
iadd
faload
fstore 5 /* x1 */
start local 5 // float x1
1: aload 1 /* pts */
iload 2 /* off */
iconst_1
iadd
faload
fstore 6 /* y1 */
start local 6 // float y1
2: .line 605
aload 1 /* pts */
iload 2 /* off */
iconst_2
iadd
faload
fstore 7 /* x2 */
start local 7 // float x2
3: aload 1 /* pts */
iload 2 /* off */
iconst_3
iadd
faload
fstore 8 /* y2 */
start local 8 // float y2
4: .line 606
aload 1 /* pts */
iload 2 /* off */
iconst_4
iadd
faload
fstore 9 /* x3 */
start local 9 // float x3
5: aload 1 /* pts */
iload 2 /* off */
iconst_5
iadd
faload
fstore 10 /* y3 */
start local 10 // float y3
6: .line 607
aload 1 /* pts */
iload 2 /* off */
bipush 6
iadd
faload
fstore 11 /* x4 */
start local 11 // float x4
7: aload 1 /* pts */
iload 2 /* off */
bipush 7
iadd
faload
fstore 12 /* y4 */
start local 12 // float y4
8: .line 609
fload 11 /* x4 */
fload 9 /* x3 */
fsub
fstore 13 /* dx4 */
start local 13 // float dx4
9: .line 610
fload 12 /* y4 */
fload 10 /* y3 */
fsub
fstore 14 /* dy4 */
start local 14 // float dy4
10: .line 611
fload 7 /* x2 */
fload 5 /* x1 */
fsub
fstore 15 /* dx1 */
start local 15 // float dx1
11: .line 612
fload 8 /* y2 */
fload 6 /* y1 */
fsub
fstore 16 /* dy1 */
start local 16 // float dy1
12: .line 616
fload 5 /* x1 */
fload 6 /* y1 */
fload 7 /* x2 */
fload 8 /* y2 */
ldc 6.0
fload 8 /* y2 */
invokestatic java.lang.Math.ulp:(F)F
fmul
invokestatic com.sun.openpisces.Stroker.within:(FFFFF)Z
istore 17 /* p1eqp2 */
start local 17 // boolean p1eqp2
13: .line 617
fload 9 /* x3 */
fload 10 /* y3 */
fload 11 /* x4 */
fload 12 /* y4 */
ldc 6.0
fload 12 /* y4 */
invokestatic java.lang.Math.ulp:(F)F
fmul
invokestatic com.sun.openpisces.Stroker.within:(FFFFF)Z
istore 18 /* p3eqp4 */
start local 18 // boolean p3eqp4
14: .line 618
iload 17 /* p1eqp2 */
ifeq 17
iload 18 /* p3eqp4 */
ifeq 17
15: .line 619
aload 0 /* this */
fload 5 /* x1 */
fload 6 /* y1 */
fload 11 /* x4 */
fload 12 /* y4 */
aload 3 /* leftOff */
aload 4 /* rightOff */
invokevirtual com.sun.openpisces.Stroker.getLineOffsets:(FFFF[F[F)V
16: .line 620
iconst_4
ireturn
17: .line 621
StackMap locals: com.sun.openpisces.Stroker float[] int float[] float[] float float float float float float float float float float float float int int
StackMap stack:
iload 17 /* p1eqp2 */
ifeq 21
18: .line 622
fload 9 /* x3 */
fload 5 /* x1 */
fsub
fstore 15 /* dx1 */
19: .line 623
fload 10 /* y3 */
fload 6 /* y1 */
fsub
fstore 16 /* dy1 */
20: .line 624
goto 24
StackMap locals:
StackMap stack:
21: iload 18 /* p3eqp4 */
ifeq 24
22: .line 625
fload 11 /* x4 */
fload 7 /* x2 */
fsub
fstore 13 /* dx4 */
23: .line 626
fload 12 /* y4 */
fload 8 /* y2 */
fsub
fstore 14 /* dy4 */
24: .line 630
StackMap locals:
StackMap stack:
fload 15 /* dx1 */
fload 13 /* dx4 */
fmul
fload 16 /* dy1 */
fload 14 /* dy4 */
fmul
fadd
fstore 19 /* dotsq */
start local 19 // float dotsq
25: .line 631
fload 19 /* dotsq */
fload 19 /* dotsq */
fmul
fstore 19 /* dotsq */
26: .line 632
fload 15 /* dx1 */
fload 15 /* dx1 */
fmul
fload 16 /* dy1 */
fload 16 /* dy1 */
fmul
fadd
fstore 20 /* l1sq */
start local 20 // float l1sq
27: fload 13 /* dx4 */
fload 13 /* dx4 */
fmul
fload 14 /* dy4 */
fload 14 /* dy4 */
fmul
fadd
fstore 21 /* l4sq */
start local 21 // float l4sq
28: .line 633
fload 19 /* dotsq */
fload 20 /* l1sq */
fload 21 /* l4sq */
fmul
ldc 4.0
fload 19 /* dotsq */
invokestatic java.lang.Math.ulp:(F)F
fmul
invokestatic com.sun.openpisces.Helpers.within:(FFF)Z
ifeq 31
29: .line 634
aload 0 /* this */
fload 5 /* x1 */
fload 6 /* y1 */
fload 11 /* x4 */
fload 12 /* y4 */
aload 3 /* leftOff */
aload 4 /* rightOff */
invokevirtual com.sun.openpisces.Stroker.getLineOffsets:(FFFF[F[F)V
30: .line 635
iconst_4
ireturn
31: .line 685
StackMap locals: float float float
StackMap stack:
ldc 0.125
fload 5 /* x1 */
ldc 3.0
fload 7 /* x2 */
fload 9 /* x3 */
fadd
fmul
fadd
fload 11 /* x4 */
fadd
fmul
fstore 22 /* x */
start local 22 // float x
32: .line 686
ldc 0.125
fload 6 /* y1 */
ldc 3.0
fload 8 /* y2 */
fload 10 /* y3 */
fadd
fmul
fadd
fload 12 /* y4 */
fadd
fmul
fstore 23 /* y */
start local 23 // float y
33: .line 689
fload 9 /* x3 */
fload 11 /* x4 */
fadd
fload 5 /* x1 */
fsub
fload 7 /* x2 */
fsub
fstore 24 /* dxm */
start local 24 // float dxm
34: fload 10 /* y3 */
fload 12 /* y4 */
fadd
fload 6 /* y1 */
fsub
fload 8 /* y2 */
fsub
fstore 25 /* dym */
start local 25 // float dym
35: .line 694
fload 15 /* dx1 */
fload 16 /* dy1 */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.lineWidth2:F
aload 0 /* this */
getfield com.sun.openpisces.Stroker.offset:[[F
iconst_0
aaload
invokestatic com.sun.openpisces.Stroker.computeOffset:(FFF[F)V
36: .line 695
fload 24 /* dxm */
fload 25 /* dym */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.lineWidth2:F
aload 0 /* this */
getfield com.sun.openpisces.Stroker.offset:[[F
iconst_1
aaload
invokestatic com.sun.openpisces.Stroker.computeOffset:(FFF[F)V
37: .line 696
fload 13 /* dx4 */
fload 14 /* dy4 */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.lineWidth2:F
aload 0 /* this */
getfield com.sun.openpisces.Stroker.offset:[[F
iconst_2
aaload
invokestatic com.sun.openpisces.Stroker.computeOffset:(FFF[F)V
38: .line 697
fload 5 /* x1 */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.offset:[[F
iconst_0
aaload
iconst_0
faload
fadd
fstore 26 /* x1p */
start local 26 // float x1p
39: .line 698
fload 6 /* y1 */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.offset:[[F
iconst_0
aaload
iconst_1
faload
fadd
fstore 27 /* y1p */
start local 27 // float y1p
40: .line 699
fload 22 /* x */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.offset:[[F
iconst_1
aaload
iconst_0
faload
fadd
fstore 28 /* xi */
start local 28 // float xi
41: .line 700
fload 23 /* y */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.offset:[[F
iconst_1
aaload
iconst_1
faload
fadd
fstore 29 /* yi */
start local 29 // float yi
42: .line 701
fload 11 /* x4 */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.offset:[[F
iconst_2
aaload
iconst_0
faload
fadd
fstore 30 /* x4p */
start local 30 // float x4p
43: .line 702
fload 12 /* y4 */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.offset:[[F
iconst_2
aaload
iconst_1
faload
fadd
fstore 31 /* y4p */
start local 31 // float y4p
44: .line 704
ldc 4.0
ldc 3.0
fload 15 /* dx1 */
fload 14 /* dy4 */
fmul
fload 16 /* dy1 */
fload 13 /* dx4 */
fmul
fsub
fmul
fdiv
fstore 32 /* invdet43 */
start local 32 // float invdet43
45: .line 706
fconst_2
fload 28 /* xi */
fmul
fload 26 /* x1p */
fsub
fload 30 /* x4p */
fsub
fstore 33 /* two_pi_m_p1_m_p4x */
start local 33 // float two_pi_m_p1_m_p4x
46: .line 707
fconst_2
fload 29 /* yi */
fmul
fload 27 /* y1p */
fsub
fload 31 /* y4p */
fsub
fstore 34 /* two_pi_m_p1_m_p4y */
start local 34 // float two_pi_m_p1_m_p4y
47: .line 708
fload 32 /* invdet43 */
fload 14 /* dy4 */
fload 33 /* two_pi_m_p1_m_p4x */
fmul
fload 13 /* dx4 */
fload 34 /* two_pi_m_p1_m_p4y */
fmul
fsub
fmul
fstore 35 /* c1 */
start local 35 // float c1
48: .line 709
fload 32 /* invdet43 */
fload 15 /* dx1 */
fload 34 /* two_pi_m_p1_m_p4y */
fmul
fload 16 /* dy1 */
fload 33 /* two_pi_m_p1_m_p4x */
fmul
fsub
fmul
fstore 36 /* c2 */
start local 36 // float c2
49: .line 712
fload 26 /* x1p */
fload 35 /* c1 */
fload 15 /* dx1 */
fmul
fadd
fstore 37 /* x2p */
start local 37 // float x2p
50: .line 713
fload 27 /* y1p */
fload 35 /* c1 */
fload 16 /* dy1 */
fmul
fadd
fstore 38 /* y2p */
start local 38 // float y2p
51: .line 714
fload 30 /* x4p */
fload 36 /* c2 */
fload 13 /* dx4 */
fmul
fadd
fstore 39 /* x3p */
start local 39 // float x3p
52: .line 715
fload 31 /* y4p */
fload 36 /* c2 */
fload 14 /* dy4 */
fmul
fadd
fstore 40 /* y3p */
start local 40 // float y3p
53: .line 717
aload 3 /* leftOff */
iconst_0
fload 26 /* x1p */
fastore
aload 3 /* leftOff */
iconst_1
fload 27 /* y1p */
fastore
54: .line 718
aload 3 /* leftOff */
iconst_2
fload 37 /* x2p */
fastore
aload 3 /* leftOff */
iconst_3
fload 38 /* y2p */
fastore
55: .line 719
aload 3 /* leftOff */
iconst_4
fload 39 /* x3p */
fastore
aload 3 /* leftOff */
iconst_5
fload 40 /* y3p */
fastore
56: .line 720
aload 3 /* leftOff */
bipush 6
fload 30 /* x4p */
fastore
aload 3 /* leftOff */
bipush 7
fload 31 /* y4p */
fastore
57: .line 722
fload 5 /* x1 */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.offset:[[F
iconst_0
aaload
iconst_0
faload
fsub
fstore 26 /* x1p */
fload 6 /* y1 */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.offset:[[F
iconst_0
aaload
iconst_1
faload
fsub
fstore 27 /* y1p */
58: .line 723
fload 28 /* xi */
fconst_2
aload 0 /* this */
getfield com.sun.openpisces.Stroker.offset:[[F
iconst_1
aaload
iconst_0
faload
fmul
fsub
fstore 28 /* xi */
fload 29 /* yi */
fconst_2
aload 0 /* this */
getfield com.sun.openpisces.Stroker.offset:[[F
iconst_1
aaload
iconst_1
faload
fmul
fsub
fstore 29 /* yi */
59: .line 724
fload 11 /* x4 */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.offset:[[F
iconst_2
aaload
iconst_0
faload
fsub
fstore 30 /* x4p */
fload 12 /* y4 */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.offset:[[F
iconst_2
aaload
iconst_1
faload
fsub
fstore 31 /* y4p */
60: .line 726
fconst_2
fload 28 /* xi */
fmul
fload 26 /* x1p */
fsub
fload 30 /* x4p */
fsub
fstore 33 /* two_pi_m_p1_m_p4x */
61: .line 727
fconst_2
fload 29 /* yi */
fmul
fload 27 /* y1p */
fsub
fload 31 /* y4p */
fsub
fstore 34 /* two_pi_m_p1_m_p4y */
62: .line 728
fload 32 /* invdet43 */
fload 14 /* dy4 */
fload 33 /* two_pi_m_p1_m_p4x */
fmul
fload 13 /* dx4 */
fload 34 /* two_pi_m_p1_m_p4y */
fmul
fsub
fmul
fstore 35 /* c1 */
63: .line 729
fload 32 /* invdet43 */
fload 15 /* dx1 */
fload 34 /* two_pi_m_p1_m_p4y */
fmul
fload 16 /* dy1 */
fload 33 /* two_pi_m_p1_m_p4x */
fmul
fsub
fmul
fstore 36 /* c2 */
64: .line 731
fload 26 /* x1p */
fload 35 /* c1 */
fload 15 /* dx1 */
fmul
fadd
fstore 37 /* x2p */
65: .line 732
fload 27 /* y1p */
fload 35 /* c1 */
fload 16 /* dy1 */
fmul
fadd
fstore 38 /* y2p */
66: .line 733
fload 30 /* x4p */
fload 36 /* c2 */
fload 13 /* dx4 */
fmul
fadd
fstore 39 /* x3p */
67: .line 734
fload 31 /* y4p */
fload 36 /* c2 */
fload 14 /* dy4 */
fmul
fadd
fstore 40 /* y3p */
68: .line 736
aload 4 /* rightOff */
iconst_0
fload 26 /* x1p */
fastore
aload 4 /* rightOff */
iconst_1
fload 27 /* y1p */
fastore
69: .line 737
aload 4 /* rightOff */
iconst_2
fload 37 /* x2p */
fastore
aload 4 /* rightOff */
iconst_3
fload 38 /* y2p */
fastore
70: .line 738
aload 4 /* rightOff */
iconst_4
fload 39 /* x3p */
fastore
aload 4 /* rightOff */
iconst_5
fload 40 /* y3p */
fastore
71: .line 739
aload 4 /* rightOff */
bipush 6
fload 30 /* x4p */
fastore
aload 4 /* rightOff */
bipush 7
fload 31 /* y4p */
fastore
72: .line 740
bipush 8
ireturn
end local 40 // float y3p
end local 39 // float x3p
end local 38 // float y2p
end local 37 // float x2p
end local 36 // float c2
end local 35 // float c1
end local 34 // float two_pi_m_p1_m_p4y
end local 33 // float two_pi_m_p1_m_p4x
end local 32 // float invdet43
end local 31 // float y4p
end local 30 // float x4p
end local 29 // float yi
end local 28 // float xi
end local 27 // float y1p
end local 26 // float x1p
end local 25 // float dym
end local 24 // float dxm
end local 23 // float y
end local 22 // float x
end local 21 // float l4sq
end local 20 // float l1sq
end local 19 // float dotsq
end local 18 // boolean p3eqp4
end local 17 // boolean p1eqp2
end local 16 // float dy1
end local 15 // float dx1
end local 14 // float dy4
end local 13 // float dx4
end local 12 // float y4
end local 11 // float x4
end local 10 // float y3
end local 9 // float x3
end local 8 // float y2
end local 7 // float x2
end local 6 // float y1
end local 5 // float x1
end local 4 // float[] rightOff
end local 3 // float[] leftOff
end local 2 // int off
end local 1 // float[] pts
end local 0 // com.sun.openpisces.Stroker this
LocalVariableTable:
Start End Slot Name Signature
0 73 0 this Lcom/sun/openpisces/Stroker;
0 73 1 pts [F
0 73 2 off I
0 73 3 leftOff [F
0 73 4 rightOff [F
1 73 5 x1 F
2 73 6 y1 F
3 73 7 x2 F
4 73 8 y2 F
5 73 9 x3 F
6 73 10 y3 F
7 73 11 x4 F
8 73 12 y4 F
9 73 13 dx4 F
10 73 14 dy4 F
11 73 15 dx1 F
12 73 16 dy1 F
13 73 17 p1eqp2 Z
14 73 18 p3eqp4 Z
25 73 19 dotsq F
27 73 20 l1sq F
28 73 21 l4sq F
32 73 22 x F
33 73 23 y F
34 73 24 dxm F
35 73 25 dym F
39 73 26 x1p F
40 73 27 y1p F
41 73 28 xi F
42 73 29 yi F
43 73 30 x4p F
44 73 31 y4p F
45 73 32 invdet43 F
46 73 33 two_pi_m_p1_m_p4x F
47 73 34 two_pi_m_p1_m_p4y F
48 73 35 c1 F
49 73 36 c2 F
50 73 37 x2p F
51 73 38 y2p F
52 73 39 x3p F
53 73 40 y3p F
MethodParameters:
Name Flags
pts
off final
leftOff
rightOff
private int computeOffsetQuad(float[], int, float[], float[]);
descriptor: ([FI[F[F)I
flags: (0x0002) ACC_PRIVATE
Code:
stack=11, locals=24, args_size=5
start local 0 // com.sun.openpisces.Stroker this
start local 1 // float[] pts
start local 2 // int off
start local 3 // float[] leftOff
start local 4 // float[] rightOff
0: .line 749
aload 1 /* pts */
iload 2 /* off */
iconst_0
iadd
faload
fstore 5 /* x1 */
start local 5 // float x1
1: aload 1 /* pts */
iload 2 /* off */
iconst_1
iadd
faload
fstore 6 /* y1 */
start local 6 // float y1
2: .line 750
aload 1 /* pts */
iload 2 /* off */
iconst_2
iadd
faload
fstore 7 /* x2 */
start local 7 // float x2
3: aload 1 /* pts */
iload 2 /* off */
iconst_3
iadd
faload
fstore 8 /* y2 */
start local 8 // float y2
4: .line 751
aload 1 /* pts */
iload 2 /* off */
iconst_4
iadd
faload
fstore 9 /* x3 */
start local 9 // float x3
5: aload 1 /* pts */
iload 2 /* off */
iconst_5
iadd
faload
fstore 10 /* y3 */
start local 10 // float y3
6: .line 753
fload 9 /* x3 */
fload 7 /* x2 */
fsub
fstore 11 /* dx3 */
start local 11 // float dx3
7: .line 754
fload 10 /* y3 */
fload 8 /* y2 */
fsub
fstore 12 /* dy3 */
start local 12 // float dy3
8: .line 755
fload 7 /* x2 */
fload 5 /* x1 */
fsub
fstore 13 /* dx1 */
start local 13 // float dx1
9: .line 756
fload 8 /* y2 */
fload 6 /* y1 */
fsub
fstore 14 /* dy1 */
start local 14 // float dy1
10: .line 768
fload 5 /* x1 */
fload 6 /* y1 */
fload 7 /* x2 */
fload 8 /* y2 */
ldc 6.0
fload 8 /* y2 */
invokestatic java.lang.Math.ulp:(F)F
fmul
invokestatic com.sun.openpisces.Stroker.within:(FFFFF)Z
istore 15 /* p1eqp2 */
start local 15 // boolean p1eqp2
11: .line 769
fload 7 /* x2 */
fload 8 /* y2 */
fload 9 /* x3 */
fload 10 /* y3 */
ldc 6.0
fload 10 /* y3 */
invokestatic java.lang.Math.ulp:(F)F
fmul
invokestatic com.sun.openpisces.Stroker.within:(FFFFF)Z
istore 16 /* p2eqp3 */
start local 16 // boolean p2eqp3
12: .line 770
iload 15 /* p1eqp2 */
ifne 13
iload 16 /* p2eqp3 */
ifeq 15
13: .line 771
StackMap locals: com.sun.openpisces.Stroker float[] int float[] float[] float float float float float float float float float float int int
StackMap stack:
aload 0 /* this */
fload 5 /* x1 */
fload 6 /* y1 */
fload 9 /* x3 */
fload 10 /* y3 */
aload 3 /* leftOff */
aload 4 /* rightOff */
invokevirtual com.sun.openpisces.Stroker.getLineOffsets:(FFFF[F[F)V
14: .line 772
iconst_4
ireturn
15: .line 776
StackMap locals:
StackMap stack:
fload 13 /* dx1 */
fload 11 /* dx3 */
fmul
fload 14 /* dy1 */
fload 12 /* dy3 */
fmul
fadd
fstore 17 /* dotsq */
start local 17 // float dotsq
16: .line 777
fload 17 /* dotsq */
fload 17 /* dotsq */
fmul
fstore 17 /* dotsq */
17: .line 778
fload 13 /* dx1 */
fload 13 /* dx1 */
fmul
fload 14 /* dy1 */
fload 14 /* dy1 */
fmul
fadd
fstore 18 /* l1sq */
start local 18 // float l1sq
18: fload 11 /* dx3 */
fload 11 /* dx3 */
fmul
fload 12 /* dy3 */
fload 12 /* dy3 */
fmul
fadd
fstore 19 /* l3sq */
start local 19 // float l3sq
19: .line 779
fload 17 /* dotsq */
fload 18 /* l1sq */
fload 19 /* l3sq */
fmul
ldc 4.0
fload 17 /* dotsq */
invokestatic java.lang.Math.ulp:(F)F
fmul
invokestatic com.sun.openpisces.Helpers.within:(FFF)Z
ifeq 22
20: .line 780
aload 0 /* this */
fload 5 /* x1 */
fload 6 /* y1 */
fload 9 /* x3 */
fload 10 /* y3 */
aload 3 /* leftOff */
aload 4 /* rightOff */
invokevirtual com.sun.openpisces.Stroker.getLineOffsets:(FFFF[F[F)V
21: .line 781
iconst_4
ireturn
22: .line 787
StackMap locals: float float float
StackMap stack:
fload 13 /* dx1 */
fload 14 /* dy1 */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.lineWidth2:F
aload 0 /* this */
getfield com.sun.openpisces.Stroker.offset:[[F
iconst_0
aaload
invokestatic com.sun.openpisces.Stroker.computeOffset:(FFF[F)V
23: .line 788
fload 11 /* dx3 */
fload 12 /* dy3 */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.lineWidth2:F
aload 0 /* this */
getfield com.sun.openpisces.Stroker.offset:[[F
iconst_1
aaload
invokestatic com.sun.openpisces.Stroker.computeOffset:(FFF[F)V
24: .line 789
fload 5 /* x1 */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.offset:[[F
iconst_0
aaload
iconst_0
faload
fadd
fstore 20 /* x1p */
start local 20 // float x1p
25: .line 790
fload 6 /* y1 */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.offset:[[F
iconst_0
aaload
iconst_1
faload
fadd
fstore 21 /* y1p */
start local 21 // float y1p
26: .line 791
fload 9 /* x3 */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.offset:[[F
iconst_1
aaload
iconst_0
faload
fadd
fstore 22 /* x3p */
start local 22 // float x3p
27: .line 792
fload 10 /* y3 */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.offset:[[F
iconst_1
aaload
iconst_1
faload
fadd
fstore 23 /* y3p */
start local 23 // float y3p
28: .line 794
aload 0 /* this */
fload 20 /* x1p */
fload 21 /* y1p */
fload 20 /* x1p */
fload 13 /* dx1 */
fadd
fload 21 /* y1p */
fload 14 /* dy1 */
fadd
fload 22 /* x3p */
fload 23 /* y3p */
fload 22 /* x3p */
fload 11 /* dx3 */
fsub
fload 23 /* y3p */
fload 12 /* dy3 */
fsub
aload 3 /* leftOff */
iconst_2
invokevirtual com.sun.openpisces.Stroker.safecomputeMiter:(FFFFFFFF[FI)V
29: .line 795
aload 3 /* leftOff */
iconst_0
fload 20 /* x1p */
fastore
aload 3 /* leftOff */
iconst_1
fload 21 /* y1p */
fastore
30: .line 796
aload 3 /* leftOff */
iconst_4
fload 22 /* x3p */
fastore
aload 3 /* leftOff */
iconst_5
fload 23 /* y3p */
fastore
31: .line 797
fload 5 /* x1 */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.offset:[[F
iconst_0
aaload
iconst_0
faload
fsub
fstore 20 /* x1p */
fload 6 /* y1 */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.offset:[[F
iconst_0
aaload
iconst_1
faload
fsub
fstore 21 /* y1p */
32: .line 798
fload 9 /* x3 */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.offset:[[F
iconst_1
aaload
iconst_0
faload
fsub
fstore 22 /* x3p */
fload 10 /* y3 */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.offset:[[F
iconst_1
aaload
iconst_1
faload
fsub
fstore 23 /* y3p */
33: .line 799
aload 0 /* this */
fload 20 /* x1p */
fload 21 /* y1p */
fload 20 /* x1p */
fload 13 /* dx1 */
fadd
fload 21 /* y1p */
fload 14 /* dy1 */
fadd
fload 22 /* x3p */
fload 23 /* y3p */
fload 22 /* x3p */
fload 11 /* dx3 */
fsub
fload 23 /* y3p */
fload 12 /* dy3 */
fsub
aload 4 /* rightOff */
iconst_2
invokevirtual com.sun.openpisces.Stroker.safecomputeMiter:(FFFFFFFF[FI)V
34: .line 800
aload 4 /* rightOff */
iconst_0
fload 20 /* x1p */
fastore
aload 4 /* rightOff */
iconst_1
fload 21 /* y1p */
fastore
35: .line 801
aload 4 /* rightOff */
iconst_4
fload 22 /* x3p */
fastore
aload 4 /* rightOff */
iconst_5
fload 23 /* y3p */
fastore
36: .line 802
bipush 6
ireturn
end local 23 // float y3p
end local 22 // float x3p
end local 21 // float y1p
end local 20 // float x1p
end local 19 // float l3sq
end local 18 // float l1sq
end local 17 // float dotsq
end local 16 // boolean p2eqp3
end local 15 // boolean p1eqp2
end local 14 // float dy1
end local 13 // float dx1
end local 12 // float dy3
end local 11 // float dx3
end local 10 // float y3
end local 9 // float x3
end local 8 // float y2
end local 7 // float x2
end local 6 // float y1
end local 5 // float x1
end local 4 // float[] rightOff
end local 3 // float[] leftOff
end local 2 // int off
end local 1 // float[] pts
end local 0 // com.sun.openpisces.Stroker this
LocalVariableTable:
Start End Slot Name Signature
0 37 0 this Lcom/sun/openpisces/Stroker;
0 37 1 pts [F
0 37 2 off I
0 37 3 leftOff [F
0 37 4 rightOff [F
1 37 5 x1 F
2 37 6 y1 F
3 37 7 x2 F
4 37 8 y2 F
5 37 9 x3 F
6 37 10 y3 F
7 37 11 dx3 F
8 37 12 dy3 F
9 37 13 dx1 F
10 37 14 dy1 F
11 37 15 p1eqp2 Z
12 37 16 p2eqp3 Z
16 37 17 dotsq F
18 37 18 l1sq F
19 37 19 l3sq F
25 37 20 x1p F
26 37 21 y1p F
27 37 22 x3p F
28 37 23 y3p F
MethodParameters:
Name Flags
pts
off final
leftOff
rightOff
private static int findSubdivPoints(float[], float[], int, float);
descriptor: ([F[FIF)I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=9, locals=17, args_size=4
start local 0 // float[] pts
start local 1 // float[] ts
start local 2 // int type
start local 3 // float w
0: .line 930
aload 0 /* pts */
iconst_2
faload
aload 0 /* pts */
iconst_0
faload
fsub
fstore 4 /* x12 */
start local 4 // float x12
1: .line 931
aload 0 /* pts */
iconst_3
faload
aload 0 /* pts */
iconst_1
faload
fsub
fstore 5 /* y12 */
start local 5 // float y12
2: .line 934
fload 5 /* y12 */
fconst_0
fcmpl
ifeq 19
fload 4 /* x12 */
fconst_0
fcmpl
ifeq 19
3: .line 938
fload 4 /* x12 */
fload 4 /* x12 */
fmul
fload 5 /* y12 */
fload 5 /* y12 */
fmul
fadd
f2d
invokestatic java.lang.Math.sqrt:(D)D
d2f
fstore 6 /* hypot */
start local 6 // float hypot
4: .line 939
fload 4 /* x12 */
fload 6 /* hypot */
fdiv
fstore 7 /* cos */
start local 7 // float cos
5: .line 940
fload 5 /* y12 */
fload 6 /* hypot */
fdiv
fstore 8 /* sin */
start local 8 // float sin
6: .line 941
fload 7 /* cos */
aload 0 /* pts */
iconst_0
faload
fmul
fload 8 /* sin */
aload 0 /* pts */
iconst_1
faload
fmul
fadd
fstore 9 /* x1 */
start local 9 // float x1
7: .line 942
fload 7 /* cos */
aload 0 /* pts */
iconst_1
faload
fmul
fload 8 /* sin */
aload 0 /* pts */
iconst_0
faload
fmul
fsub
fstore 10 /* y1 */
start local 10 // float y1
8: .line 943
fload 7 /* cos */
aload 0 /* pts */
iconst_2
faload
fmul
fload 8 /* sin */
aload 0 /* pts */
iconst_3
faload
fmul
fadd
fstore 11 /* x2 */
start local 11 // float x2
9: .line 944
fload 7 /* cos */
aload 0 /* pts */
iconst_3
faload
fmul
fload 8 /* sin */
aload 0 /* pts */
iconst_2
faload
fmul
fsub
fstore 12 /* y2 */
start local 12 // float y2
10: .line 945
fload 7 /* cos */
aload 0 /* pts */
iconst_4
faload
fmul
fload 8 /* sin */
aload 0 /* pts */
iconst_5
faload
fmul
fadd
fstore 13 /* x3 */
start local 13 // float x3
11: .line 946
fload 7 /* cos */
aload 0 /* pts */
iconst_5
faload
fmul
fload 8 /* sin */
aload 0 /* pts */
iconst_4
faload
fmul
fsub
fstore 14 /* y3 */
start local 14 // float y3
12: .line 947
iload 2 /* type */
tableswitch { // 6 - 8
6: 17
7: 18
8: 13
default: 18
}
13: .line 949
StackMap locals: float[] float[] int float float float float float float float float float float float float
StackMap stack:
fload 7 /* cos */
aload 0 /* pts */
bipush 6
faload
fmul
fload 8 /* sin */
aload 0 /* pts */
bipush 7
faload
fmul
fadd
fstore 15 /* x4 */
start local 15 // float x4
14: .line 950
fload 7 /* cos */
aload 0 /* pts */
bipush 7
faload
fmul
fload 8 /* sin */
aload 0 /* pts */
bipush 6
faload
fmul
fsub
fstore 16 /* y4 */
start local 16 // float y4
15: .line 951
getstatic com.sun.openpisces.Stroker.c:Lcom/sun/openpisces/Curve;
fload 9 /* x1 */
fload 10 /* y1 */
fload 11 /* x2 */
fload 12 /* y2 */
fload 13 /* x3 */
fload 14 /* y3 */
fload 15 /* x4 */
fload 16 /* y4 */
invokevirtual com.sun.openpisces.Curve.set:(FFFFFFFF)V
16: .line 952
goto 20
end local 16 // float y4
end local 15 // float x4
17: .line 954
StackMap locals:
StackMap stack:
getstatic com.sun.openpisces.Stroker.c:Lcom/sun/openpisces/Curve;
fload 9 /* x1 */
fload 10 /* y1 */
fload 11 /* x2 */
fload 12 /* y2 */
fload 13 /* x3 */
fload 14 /* y3 */
invokevirtual com.sun.openpisces.Curve.set:(FFFFFF)V
end local 14 // float y3
end local 13 // float x3
end local 12 // float y2
end local 11 // float x2
end local 10 // float y1
end local 9 // float x1
end local 8 // float sin
end local 7 // float cos
end local 6 // float hypot
18: .line 957
StackMap locals: float[] float[] int float float float
StackMap stack:
goto 20
19: .line 958
StackMap locals:
StackMap stack:
getstatic com.sun.openpisces.Stroker.c:Lcom/sun/openpisces/Curve;
aload 0 /* pts */
iload 2 /* type */
invokevirtual com.sun.openpisces.Curve.set:([FI)V
20: .line 961
StackMap locals:
StackMap stack:
iconst_0
istore 6 /* ret */
start local 6 // int ret
21: .line 964
iload 6 /* ret */
getstatic com.sun.openpisces.Stroker.c:Lcom/sun/openpisces/Curve;
aload 1 /* ts */
iload 6 /* ret */
invokevirtual com.sun.openpisces.Curve.dxRoots:([FI)I
iadd
istore 6 /* ret */
22: .line 965
iload 6 /* ret */
getstatic com.sun.openpisces.Stroker.c:Lcom/sun/openpisces/Curve;
aload 1 /* ts */
iload 6 /* ret */
invokevirtual com.sun.openpisces.Curve.dyRoots:([FI)I
iadd
istore 6 /* ret */
23: .line 967
iload 2 /* type */
bipush 8
if_icmpne 25
24: .line 969
iload 6 /* ret */
getstatic com.sun.openpisces.Stroker.c:Lcom/sun/openpisces/Curve;
aload 1 /* ts */
iload 6 /* ret */
invokevirtual com.sun.openpisces.Curve.infPoints:([FI)I
iadd
istore 6 /* ret */
25: .line 974
StackMap locals: int
StackMap stack:
iload 6 /* ret */
getstatic com.sun.openpisces.Stroker.c:Lcom/sun/openpisces/Curve;
aload 1 /* ts */
iload 6 /* ret */
fload 3 /* w */
ldc 1.0E-4
invokevirtual com.sun.openpisces.Curve.rootsOfROCMinusW:([FIFF)I
iadd
istore 6 /* ret */
26: .line 976
aload 1 /* ts */
iconst_0
iload 6 /* ret */
ldc 1.0E-4
ldc 0.9999
invokestatic com.sun.openpisces.Helpers.filterOutNotInAB:([FIIFF)I
istore 6 /* ret */
27: .line 977
aload 1 /* ts */
iconst_0
iload 6 /* ret */
invokestatic com.sun.openpisces.Helpers.isort:([FII)V
28: .line 978
iload 6 /* ret */
ireturn
end local 6 // int ret
end local 5 // float y12
end local 4 // float x12
end local 3 // float w
end local 2 // int type
end local 1 // float[] ts
end local 0 // float[] pts
LocalVariableTable:
Start End Slot Name Signature
0 29 0 pts [F
0 29 1 ts [F
0 29 2 type I
0 29 3 w F
1 29 4 x12 F
2 29 5 y12 F
4 18 6 hypot F
5 18 7 cos F
6 18 8 sin F
7 18 9 x1 F
8 18 10 y1 F
9 18 11 x2 F
10 18 12 y2 F
11 18 13 x3 F
12 18 14 y3 F
14 17 15 x4 F
15 17 16 y4 F
21 29 6 ret I
MethodParameters:
Name Flags
pts
ts
type final
w final
public void curveTo(float, float, float, float, float, float);
descriptor: (FFFFFF)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=11, locals=21, args_size=7
start local 0 // com.sun.openpisces.Stroker this
start local 1 // float x1
start local 2 // float y1
start local 3 // float x2
start local 4 // float y2
start local 5 // float x3
start local 6 // float y3
0: .line 985
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
iconst_0
aload 0 /* this */
getfield com.sun.openpisces.Stroker.cx0:F
fastore
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
iconst_1
aload 0 /* this */
getfield com.sun.openpisces.Stroker.cy0:F
fastore
1: .line 986
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
iconst_2
fload 1 /* x1 */
fastore
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
iconst_3
fload 2 /* y1 */
fastore
2: .line 987
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
iconst_4
fload 3 /* x2 */
fastore
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
iconst_5
fload 4 /* y2 */
fastore
3: .line 988
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
bipush 6
fload 5 /* x3 */
fastore
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
bipush 7
fload 6 /* y3 */
fastore
4: .line 995
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
bipush 6
faload
fstore 7 /* xf */
start local 7 // float xf
5: aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
bipush 7
faload
fstore 8 /* yf */
start local 8 // float yf
6: .line 996
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
iconst_2
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
iconst_0
faload
fsub
fstore 9 /* dxs */
start local 9 // float dxs
7: .line 997
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
iconst_3
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
iconst_1
faload
fsub
fstore 10 /* dys */
start local 10 // float dys
8: .line 998
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
bipush 6
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
iconst_4
faload
fsub
fstore 11 /* dxf */
start local 11 // float dxf
9: .line 999
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
bipush 7
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
iconst_5
faload
fsub
fstore 12 /* dyf */
start local 12 // float dyf
10: .line 1001
fload 9 /* dxs */
fconst_0
fcmpl
ifne 11
fload 10 /* dys */
fconst_0
fcmpl
ifne 11
iconst_1
goto 12
StackMap locals: com.sun.openpisces.Stroker float float float float float float float float float float float float
StackMap stack:
11: iconst_0
StackMap locals:
StackMap stack: int
12: istore 13 /* p1eqp2 */
start local 13 // boolean p1eqp2
13: .line 1002
fload 11 /* dxf */
fconst_0
fcmpl
ifne 14
fload 12 /* dyf */
fconst_0
fcmpl
ifne 14
iconst_1
goto 15
StackMap locals: int
StackMap stack:
14: iconst_0
StackMap locals:
StackMap stack: int
15: istore 14 /* p3eqp4 */
start local 14 // boolean p3eqp4
16: .line 1003
iload 13 /* p1eqp2 */
ifeq 22
17: .line 1004
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
iconst_4
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
iconst_0
faload
fsub
fstore 9 /* dxs */
18: .line 1005
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
iconst_5
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
iconst_1
faload
fsub
fstore 10 /* dys */
19: .line 1006
fload 9 /* dxs */
fconst_0
fcmpl
ifne 22
fload 10 /* dys */
fconst_0
fcmpl
ifne 22
20: .line 1007
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
bipush 6
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
iconst_0
faload
fsub
fstore 9 /* dxs */
21: .line 1008
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
bipush 7
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
iconst_1
faload
fsub
fstore 10 /* dys */
22: .line 1011
StackMap locals: int
StackMap stack:
iload 14 /* p3eqp4 */
ifeq 28
23: .line 1012
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
bipush 6
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
iconst_2
faload
fsub
fstore 11 /* dxf */
24: .line 1013
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
bipush 7
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
iconst_3
faload
fsub
fstore 12 /* dyf */
25: .line 1014
fload 11 /* dxf */
fconst_0
fcmpl
ifne 28
fload 12 /* dyf */
fconst_0
fcmpl
ifne 28
26: .line 1015
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
bipush 6
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
iconst_0
faload
fsub
fstore 11 /* dxf */
27: .line 1016
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
bipush 7
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
iconst_1
faload
fsub
fstore 12 /* dyf */
28: .line 1019
StackMap locals:
StackMap stack:
fload 9 /* dxs */
fconst_0
fcmpl
ifne 31
fload 10 /* dys */
fconst_0
fcmpl
ifne 31
29: .line 1021
aload 0 /* this */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
iconst_0
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
iconst_1
faload
invokevirtual com.sun.openpisces.Stroker.lineTo:(FF)V
30: .line 1022
return
31: .line 1027
StackMap locals:
StackMap stack:
fload 9 /* dxs */
invokestatic java.lang.Math.abs:(F)F
ldc 0.1
fcmpg
ifge 35
fload 10 /* dys */
invokestatic java.lang.Math.abs:(F)F
ldc 0.1
fcmpg
ifge 35
32: .line 1028
fload 9 /* dxs */
fload 9 /* dxs */
fmul
fload 10 /* dys */
fload 10 /* dys */
fmul
fadd
f2d
invokestatic java.lang.Math.sqrt:(D)D
d2f
fstore 15 /* len */
start local 15 // float len
33: .line 1029
fload 9 /* dxs */
fload 15 /* len */
fdiv
fstore 9 /* dxs */
34: .line 1030
fload 10 /* dys */
fload 15 /* len */
fdiv
fstore 10 /* dys */
end local 15 // float len
35: .line 1032
StackMap locals:
StackMap stack:
fload 11 /* dxf */
invokestatic java.lang.Math.abs:(F)F
ldc 0.1
fcmpg
ifge 39
fload 12 /* dyf */
invokestatic java.lang.Math.abs:(F)F
ldc 0.1
fcmpg
ifge 39
36: .line 1033
fload 11 /* dxf */
fload 11 /* dxf */
fmul
fload 12 /* dyf */
fload 12 /* dyf */
fmul
fadd
f2d
invokestatic java.lang.Math.sqrt:(D)D
d2f
fstore 15 /* len */
start local 15 // float len
37: .line 1034
fload 11 /* dxf */
fload 15 /* len */
fdiv
fstore 11 /* dxf */
38: .line 1035
fload 12 /* dyf */
fload 15 /* len */
fdiv
fstore 12 /* dyf */
end local 15 // float len
39: .line 1038
StackMap locals:
StackMap stack:
fload 9 /* dxs */
fload 10 /* dys */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.lineWidth2:F
aload 0 /* this */
getfield com.sun.openpisces.Stroker.offset:[[F
iconst_0
aaload
invokestatic com.sun.openpisces.Stroker.computeOffset:(FFF[F)V
40: .line 1039
aload 0 /* this */
getfield com.sun.openpisces.Stroker.offset:[[F
iconst_0
aaload
iconst_0
faload
fstore 15 /* mx */
start local 15 // float mx
41: .line 1040
aload 0 /* this */
getfield com.sun.openpisces.Stroker.offset:[[F
iconst_0
aaload
iconst_1
faload
fstore 16 /* my */
start local 16 // float my
42: .line 1041
aload 0 /* this */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.cdx:F
aload 0 /* this */
getfield com.sun.openpisces.Stroker.cdy:F
aload 0 /* this */
getfield com.sun.openpisces.Stroker.cx0:F
aload 0 /* this */
getfield com.sun.openpisces.Stroker.cy0:F
fload 9 /* dxs */
fload 10 /* dys */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.cmx:F
aload 0 /* this */
getfield com.sun.openpisces.Stroker.cmy:F
fload 15 /* mx */
fload 16 /* my */
invokevirtual com.sun.openpisces.Stroker.drawJoin:(FFFFFFFFFF)V
43: .line 1043
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
aload 0 /* this */
getfield com.sun.openpisces.Stroker.subdivTs:[F
bipush 8
aload 0 /* this */
getfield com.sun.openpisces.Stroker.lineWidth2:F
invokestatic com.sun.openpisces.Stroker.findSubdivPoints:([F[FIF)I
istore 17 /* nSplits */
start local 17 // int nSplits
44: .line 1044
fconst_0
fstore 18 /* prevT */
start local 18 // float prevT
45: .line 1045
iconst_0
istore 19 /* i */
start local 19 // int i
46: goto 55
47: .line 1046
StackMap locals: com.sun.openpisces.Stroker float float float float float float float float float float float float int int float float int float int
StackMap stack:
aload 0 /* this */
getfield com.sun.openpisces.Stroker.subdivTs:[F
iload 19 /* i */
faload
fstore 20 /* t */
start local 20 // float t
48: .line 1047
fload 20 /* t */
fload 18 /* prevT */
fsub
fconst_1
fload 18 /* prevT */
fsub
fdiv
49: .line 1048
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
iload 19 /* i */
bipush 6
imul
50: .line 1049
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
iload 19 /* i */
bipush 6
imul
51: .line 1050
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
iload 19 /* i */
bipush 6
imul
bipush 6
iadd
52: .line 1047
invokestatic com.sun.openpisces.Helpers.subdivideCubicAt:(F[FI[FI[FI)V
53: .line 1051
fload 20 /* t */
fstore 18 /* prevT */
end local 20 // float t
54: .line 1045
iinc 19 /* i */ 1
StackMap locals:
StackMap stack:
55: iload 19 /* i */
iload 17 /* nSplits */
if_icmplt 47
end local 19 // int i
56: .line 1054
iconst_0
istore 19 /* kind */
start local 19 // int kind
57: .line 1055
iconst_0
istore 20 /* i */
start local 20 // int i
58: goto 70
59: .line 1056
StackMap locals: int
StackMap stack:
aload 0 /* this */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
iload 20 /* i */
bipush 6
imul
aload 0 /* this */
getfield com.sun.openpisces.Stroker.lp:[F
aload 0 /* this */
getfield com.sun.openpisces.Stroker.rp:[F
invokevirtual com.sun.openpisces.Stroker.computeOffsetCubic:([FI[F[F)I
istore 19 /* kind */
60: .line 1057
iload 19 /* kind */
ifeq 69
61: .line 1058
aload 0 /* this */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.lp:[F
iconst_0
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.lp:[F
iconst_1
faload
invokevirtual com.sun.openpisces.Stroker.emitLineTo:(FF)V
62: .line 1059
iload 19 /* kind */
tableswitch { // 4 - 8
4: 66
5: 68
6: 68
7: 68
8: 63
default: 68
}
63: .line 1061
StackMap locals:
StackMap stack:
aload 0 /* this */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.lp:[F
iconst_0
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.lp:[F
iconst_1
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.lp:[F
iconst_2
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.lp:[F
iconst_3
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.lp:[F
iconst_4
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.lp:[F
iconst_5
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.lp:[F
bipush 6
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.lp:[F
bipush 7
faload
iconst_0
invokevirtual com.sun.openpisces.Stroker.emitCurveTo:(FFFFFFFFZ)V
64: .line 1062
aload 0 /* this */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.rp:[F
iconst_0
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.rp:[F
iconst_1
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.rp:[F
iconst_2
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.rp:[F
iconst_3
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.rp:[F
iconst_4
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.rp:[F
iconst_5
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.rp:[F
bipush 6
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.rp:[F
bipush 7
faload
iconst_1
invokevirtual com.sun.openpisces.Stroker.emitCurveTo:(FFFFFFFFZ)V
65: .line 1063
goto 68
66: .line 1065
StackMap locals:
StackMap stack:
aload 0 /* this */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.lp:[F
iconst_2
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.lp:[F
iconst_3
faload
invokevirtual com.sun.openpisces.Stroker.emitLineTo:(FF)V
67: .line 1066
aload 0 /* this */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.rp:[F
iconst_0
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.rp:[F
iconst_1
faload
iconst_1
invokevirtual com.sun.openpisces.Stroker.emitLineTo:(FFZ)V
68: .line 1069
StackMap locals:
StackMap stack:
aload 0 /* this */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.rp:[F
iload 19 /* kind */
iconst_2
isub
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.rp:[F
iload 19 /* kind */
iconst_1
isub
faload
iconst_1
invokevirtual com.sun.openpisces.Stroker.emitLineTo:(FFZ)V
69: .line 1055
StackMap locals:
StackMap stack:
iinc 20 /* i */ 1
StackMap locals:
StackMap stack:
70: iload 20 /* i */
iload 17 /* nSplits */
if_icmple 59
end local 20 // int i
71: .line 1073
aload 0 /* this */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.lp:[F
iload 19 /* kind */
iconst_2
isub
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.rp:[F
iload 19 /* kind */
iconst_2
isub
faload
fsub
fconst_2
fdiv
putfield com.sun.openpisces.Stroker.cmx:F
72: .line 1074
aload 0 /* this */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.lp:[F
iload 19 /* kind */
iconst_1
isub
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.rp:[F
iload 19 /* kind */
iconst_1
isub
faload
fsub
fconst_2
fdiv
putfield com.sun.openpisces.Stroker.cmy:F
73: .line 1075
aload 0 /* this */
fload 11 /* dxf */
putfield com.sun.openpisces.Stroker.cdx:F
74: .line 1076
aload 0 /* this */
fload 12 /* dyf */
putfield com.sun.openpisces.Stroker.cdy:F
75: .line 1077
aload 0 /* this */
fload 7 /* xf */
putfield com.sun.openpisces.Stroker.cx0:F
76: .line 1078
aload 0 /* this */
fload 8 /* yf */
putfield com.sun.openpisces.Stroker.cy0:F
77: .line 1079
aload 0 /* this */
iconst_1
putfield com.sun.openpisces.Stroker.prev:I
78: .line 1080
return
end local 19 // int kind
end local 18 // float prevT
end local 17 // int nSplits
end local 16 // float my
end local 15 // float mx
end local 14 // boolean p3eqp4
end local 13 // boolean p1eqp2
end local 12 // float dyf
end local 11 // float dxf
end local 10 // float dys
end local 9 // float dxs
end local 8 // float yf
end local 7 // float xf
end local 6 // float y3
end local 5 // float x3
end local 4 // float y2
end local 3 // float x2
end local 2 // float y1
end local 1 // float x1
end local 0 // com.sun.openpisces.Stroker this
LocalVariableTable:
Start End Slot Name Signature
0 79 0 this Lcom/sun/openpisces/Stroker;
0 79 1 x1 F
0 79 2 y1 F
0 79 3 x2 F
0 79 4 y2 F
0 79 5 x3 F
0 79 6 y3 F
5 79 7 xf F
6 79 8 yf F
7 79 9 dxs F
8 79 10 dys F
9 79 11 dxf F
10 79 12 dyf F
13 79 13 p1eqp2 Z
16 79 14 p3eqp4 Z
33 35 15 len F
37 39 15 len F
41 79 15 mx F
42 79 16 my F
44 79 17 nSplits I
45 79 18 prevT F
46 56 19 i I
48 54 20 t F
57 79 19 kind I
58 71 20 i I
MethodParameters:
Name Flags
x1
y1
x2
y2
x3
y3
public void quadTo(float, float, float, float);
descriptor: (FFFF)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=11, locals=17, args_size=5
start local 0 // com.sun.openpisces.Stroker this
start local 1 // float x1
start local 2 // float y1
start local 3 // float x2
start local 4 // float y2
0: .line 1083
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
iconst_0
aload 0 /* this */
getfield com.sun.openpisces.Stroker.cx0:F
fastore
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
iconst_1
aload 0 /* this */
getfield com.sun.openpisces.Stroker.cy0:F
fastore
1: .line 1084
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
iconst_2
fload 1 /* x1 */
fastore
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
iconst_3
fload 2 /* y1 */
fastore
2: .line 1085
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
iconst_4
fload 3 /* x2 */
fastore
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
iconst_5
fload 4 /* y2 */
fastore
3: .line 1092
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
iconst_4
faload
fstore 5 /* xf */
start local 5 // float xf
4: aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
iconst_5
faload
fstore 6 /* yf */
start local 6 // float yf
5: .line 1093
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
iconst_2
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
iconst_0
faload
fsub
fstore 7 /* dxs */
start local 7 // float dxs
6: .line 1094
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
iconst_3
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
iconst_1
faload
fsub
fstore 8 /* dys */
start local 8 // float dys
7: .line 1095
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
iconst_4
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
iconst_2
faload
fsub
fstore 9 /* dxf */
start local 9 // float dxf
8: .line 1096
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
iconst_5
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
iconst_3
faload
fsub
fstore 10 /* dyf */
start local 10 // float dyf
9: .line 1097
fload 7 /* dxs */
fconst_0
fcmpl
ifne 10
fload 8 /* dys */
fconst_0
fcmpl
ifeq 11
StackMap locals: com.sun.openpisces.Stroker float float float float float float float float float float
StackMap stack:
10: fload 9 /* dxf */
fconst_0
fcmpl
ifne 13
fload 10 /* dyf */
fconst_0
fcmpl
ifne 13
11: .line 1098
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
iconst_4
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
iconst_0
faload
fsub
dup
fstore 9 /* dxf */
fstore 7 /* dxs */
12: .line 1099
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
iconst_5
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
iconst_1
faload
fsub
dup
fstore 10 /* dyf */
fstore 8 /* dys */
13: .line 1101
StackMap locals:
StackMap stack:
fload 7 /* dxs */
fconst_0
fcmpl
ifne 16
fload 8 /* dys */
fconst_0
fcmpl
ifne 16
14: .line 1103
aload 0 /* this */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
iconst_0
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
iconst_1
faload
invokevirtual com.sun.openpisces.Stroker.lineTo:(FF)V
15: .line 1104
return
16: .line 1108
StackMap locals:
StackMap stack:
fload 7 /* dxs */
invokestatic java.lang.Math.abs:(F)F
ldc 0.1
fcmpg
ifge 20
fload 8 /* dys */
invokestatic java.lang.Math.abs:(F)F
ldc 0.1
fcmpg
ifge 20
17: .line 1109
fload 7 /* dxs */
fload 7 /* dxs */
fmul
fload 8 /* dys */
fload 8 /* dys */
fmul
fadd
f2d
invokestatic java.lang.Math.sqrt:(D)D
d2f
fstore 11 /* len */
start local 11 // float len
18: .line 1110
fload 7 /* dxs */
fload 11 /* len */
fdiv
fstore 7 /* dxs */
19: .line 1111
fload 8 /* dys */
fload 11 /* len */
fdiv
fstore 8 /* dys */
end local 11 // float len
20: .line 1113
StackMap locals:
StackMap stack:
fload 9 /* dxf */
invokestatic java.lang.Math.abs:(F)F
ldc 0.1
fcmpg
ifge 24
fload 10 /* dyf */
invokestatic java.lang.Math.abs:(F)F
ldc 0.1
fcmpg
ifge 24
21: .line 1114
fload 9 /* dxf */
fload 9 /* dxf */
fmul
fload 10 /* dyf */
fload 10 /* dyf */
fmul
fadd
f2d
invokestatic java.lang.Math.sqrt:(D)D
d2f
fstore 11 /* len */
start local 11 // float len
22: .line 1115
fload 9 /* dxf */
fload 11 /* len */
fdiv
fstore 9 /* dxf */
23: .line 1116
fload 10 /* dyf */
fload 11 /* len */
fdiv
fstore 10 /* dyf */
end local 11 // float len
24: .line 1119
StackMap locals:
StackMap stack:
fload 7 /* dxs */
fload 8 /* dys */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.lineWidth2:F
aload 0 /* this */
getfield com.sun.openpisces.Stroker.offset:[[F
iconst_0
aaload
invokestatic com.sun.openpisces.Stroker.computeOffset:(FFF[F)V
25: .line 1120
aload 0 /* this */
getfield com.sun.openpisces.Stroker.offset:[[F
iconst_0
aaload
iconst_0
faload
fstore 11 /* mx */
start local 11 // float mx
26: .line 1121
aload 0 /* this */
getfield com.sun.openpisces.Stroker.offset:[[F
iconst_0
aaload
iconst_1
faload
fstore 12 /* my */
start local 12 // float my
27: .line 1122
aload 0 /* this */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.cdx:F
aload 0 /* this */
getfield com.sun.openpisces.Stroker.cdy:F
aload 0 /* this */
getfield com.sun.openpisces.Stroker.cx0:F
aload 0 /* this */
getfield com.sun.openpisces.Stroker.cy0:F
fload 7 /* dxs */
fload 8 /* dys */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.cmx:F
aload 0 /* this */
getfield com.sun.openpisces.Stroker.cmy:F
fload 11 /* mx */
fload 12 /* my */
invokevirtual com.sun.openpisces.Stroker.drawJoin:(FFFFFFFFFF)V
28: .line 1124
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
aload 0 /* this */
getfield com.sun.openpisces.Stroker.subdivTs:[F
bipush 6
aload 0 /* this */
getfield com.sun.openpisces.Stroker.lineWidth2:F
invokestatic com.sun.openpisces.Stroker.findSubdivPoints:([F[FIF)I
istore 13 /* nSplits */
start local 13 // int nSplits
29: .line 1125
fconst_0
fstore 14 /* prevt */
start local 14 // float prevt
30: .line 1126
iconst_0
istore 15 /* i */
start local 15 // int i
31: goto 40
32: .line 1127
StackMap locals: com.sun.openpisces.Stroker float float float float float float float float float float float float int float int
StackMap stack:
aload 0 /* this */
getfield com.sun.openpisces.Stroker.subdivTs:[F
iload 15 /* i */
faload
fstore 16 /* t */
start local 16 // float t
33: .line 1128
fload 16 /* t */
fload 14 /* prevt */
fsub
fconst_1
fload 14 /* prevt */
fsub
fdiv
34: .line 1129
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
iload 15 /* i */
iconst_4
imul
35: .line 1130
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
iload 15 /* i */
iconst_4
imul
36: .line 1131
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
iload 15 /* i */
iconst_4
imul
iconst_4
iadd
37: .line 1128
invokestatic com.sun.openpisces.Helpers.subdivideQuadAt:(F[FI[FI[FI)V
38: .line 1132
fload 16 /* t */
fstore 14 /* prevt */
end local 16 // float t
39: .line 1126
iinc 15 /* i */ 1
StackMap locals:
StackMap stack:
40: iload 15 /* i */
iload 13 /* nSplits */
if_icmplt 32
end local 15 // int i
41: .line 1135
iconst_0
istore 15 /* kind */
start local 15 // int kind
42: .line 1136
iconst_0
istore 16 /* i */
start local 16 // int i
43: goto 55
44: .line 1137
StackMap locals: int
StackMap stack:
aload 0 /* this */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.middle:[F
iload 16 /* i */
iconst_4
imul
aload 0 /* this */
getfield com.sun.openpisces.Stroker.lp:[F
aload 0 /* this */
getfield com.sun.openpisces.Stroker.rp:[F
invokevirtual com.sun.openpisces.Stroker.computeOffsetQuad:([FI[F[F)I
istore 15 /* kind */
45: .line 1138
iload 15 /* kind */
ifeq 54
46: .line 1139
aload 0 /* this */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.lp:[F
iconst_0
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.lp:[F
iconst_1
faload
invokevirtual com.sun.openpisces.Stroker.emitLineTo:(FF)V
47: .line 1140
iload 15 /* kind */
tableswitch { // 4 - 6
4: 51
5: 53
6: 48
default: 53
}
48: .line 1142
StackMap locals:
StackMap stack:
aload 0 /* this */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.lp:[F
iconst_0
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.lp:[F
iconst_1
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.lp:[F
iconst_2
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.lp:[F
iconst_3
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.lp:[F
iconst_4
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.lp:[F
iconst_5
faload
iconst_0
invokevirtual com.sun.openpisces.Stroker.emitQuadTo:(FFFFFFZ)V
49: .line 1143
aload 0 /* this */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.rp:[F
iconst_0
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.rp:[F
iconst_1
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.rp:[F
iconst_2
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.rp:[F
iconst_3
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.rp:[F
iconst_4
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.rp:[F
iconst_5
faload
iconst_1
invokevirtual com.sun.openpisces.Stroker.emitQuadTo:(FFFFFFZ)V
50: .line 1144
goto 53
51: .line 1146
StackMap locals:
StackMap stack:
aload 0 /* this */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.lp:[F
iconst_2
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.lp:[F
iconst_3
faload
invokevirtual com.sun.openpisces.Stroker.emitLineTo:(FF)V
52: .line 1147
aload 0 /* this */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.rp:[F
iconst_0
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.rp:[F
iconst_1
faload
iconst_1
invokevirtual com.sun.openpisces.Stroker.emitLineTo:(FFZ)V
53: .line 1150
StackMap locals:
StackMap stack:
aload 0 /* this */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.rp:[F
iload 15 /* kind */
iconst_2
isub
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.rp:[F
iload 15 /* kind */
iconst_1
isub
faload
iconst_1
invokevirtual com.sun.openpisces.Stroker.emitLineTo:(FFZ)V
54: .line 1136
StackMap locals:
StackMap stack:
iinc 16 /* i */ 1
StackMap locals:
StackMap stack:
55: iload 16 /* i */
iload 13 /* nSplits */
if_icmple 44
end local 16 // int i
56: .line 1154
aload 0 /* this */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.lp:[F
iload 15 /* kind */
iconst_2
isub
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.rp:[F
iload 15 /* kind */
iconst_2
isub
faload
fsub
fconst_2
fdiv
putfield com.sun.openpisces.Stroker.cmx:F
57: .line 1155
aload 0 /* this */
aload 0 /* this */
getfield com.sun.openpisces.Stroker.lp:[F
iload 15 /* kind */
iconst_1
isub
faload
aload 0 /* this */
getfield com.sun.openpisces.Stroker.rp:[F
iload 15 /* kind */
iconst_1
isub
faload
fsub
fconst_2
fdiv
putfield com.sun.openpisces.Stroker.cmy:F
58: .line 1156
aload 0 /* this */
fload 9 /* dxf */
putfield com.sun.openpisces.Stroker.cdx:F
59: .line 1157
aload 0 /* this */
fload 10 /* dyf */
putfield com.sun.openpisces.Stroker.cdy:F
60: .line 1158
aload 0 /* this */
fload 5 /* xf */
putfield com.sun.openpisces.Stroker.cx0:F
61: .line 1159
aload 0 /* this */
fload 6 /* yf */
putfield com.sun.openpisces.Stroker.cy0:F
62: .line 1160
aload 0 /* this */
iconst_1
putfield com.sun.openpisces.Stroker.prev:I
63: .line 1161
return
end local 15 // int kind
end local 14 // float prevt
end local 13 // int nSplits
end local 12 // float my
end local 11 // float mx
end local 10 // float dyf
end local 9 // float dxf
end local 8 // float dys
end local 7 // float dxs
end local 6 // float yf
end local 5 // float xf
end local 4 // float y2
end local 3 // float x2
end local 2 // float y1
end local 1 // float x1
end local 0 // com.sun.openpisces.Stroker this
LocalVariableTable:
Start End Slot Name Signature
0 64 0 this Lcom/sun/openpisces/Stroker;
0 64 1 x1 F
0 64 2 y1 F
0 64 3 x2 F
0 64 4 y2 F
4 64 5 xf F
5 64 6 yf F
6 64 7 dxs F
7 64 8 dys F
8 64 9 dxf F
9 64 10 dyf F
18 20 11 len F
22 24 11 len F
26 64 11 mx F
27 64 12 my F
29 64 13 nSplits I
30 64 14 prevt F
31 41 15 i I
33 39 16 t F
42 64 15 kind I
43 56 16 i I
MethodParameters:
Name Flags
x1
y1
x2
y2
}
SourceFile: "Stroker.java"
NestMembers:
com.sun.openpisces.Stroker$PolyStack
InnerClasses:
private final PolyStack = com.sun.openpisces.Stroker$PolyStack of com.sun.openpisces.Stroker