public class org.apache.batik.svggen.SVGArc extends org.apache.batik.svggen.SVGGraphicObjectConverter
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.apache.batik.svggen.SVGArc
super_class: org.apache.batik.svggen.SVGGraphicObjectConverter
{
private org.apache.batik.svggen.SVGLine svgLine;
descriptor: Lorg/apache/batik/svggen/SVGLine;
flags: (0x0002) ACC_PRIVATE
private org.apache.batik.svggen.SVGEllipse svgEllipse;
descriptor: Lorg/apache/batik/svggen/SVGEllipse;
flags: (0x0002) ACC_PRIVATE
public void <init>(org.apache.batik.svggen.SVGGeneratorContext);
descriptor: (Lorg/apache/batik/svggen/SVGGeneratorContext;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 // org.apache.batik.svggen.SVGArc this
start local 1 // org.apache.batik.svggen.SVGGeneratorContext generatorContext
0: .line 52
aload 0 /* this */
aload 1 /* generatorContext */
invokespecial org.apache.batik.svggen.SVGGraphicObjectConverter.<init>:(Lorg/apache/batik/svggen/SVGGeneratorContext;)V
1: .line 53
return
end local 1 // org.apache.batik.svggen.SVGGeneratorContext generatorContext
end local 0 // org.apache.batik.svggen.SVGArc this
LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/batik/svggen/SVGArc;
0 2 1 generatorContext Lorg/apache/batik/svggen/SVGGeneratorContext;
MethodParameters:
Name Flags
generatorContext
public org.w3c.dom.Element toSVG(java.awt.geom.Arc2D);
descriptor: (Ljava/awt/geom/Arc2D;)Lorg/w3c/dom/Element;
flags: (0x0001) ACC_PUBLIC
Code:
stack=12, locals=17, args_size=2
start local 0 // org.apache.batik.svggen.SVGArc this
start local 1 // java.awt.geom.Arc2D arc
0: .line 59
aload 1 /* arc */
invokevirtual java.awt.geom.Arc2D.getAngleExtent:()D
dstore 2 /* ext */
start local 2 // double ext
1: .line 60
aload 1 /* arc */
invokevirtual java.awt.geom.Arc2D.getWidth:()D
dstore 4 /* width */
start local 4 // double width
2: .line 61
aload 1 /* arc */
invokevirtual java.awt.geom.Arc2D.getHeight:()D
dstore 6 /* height */
start local 6 // double height
3: .line 63
dload 4 /* width */
dconst_0
dcmpl
ifeq 4
dload 6 /* height */
dconst_0
dcmpl
ifne 12
4: .line 64
StackMap locals: double double double
StackMap stack:
new java.awt.geom.Line2D$Double
dup
5: .line 65
aload 1 /* arc */
invokevirtual java.awt.geom.Arc2D.getX:()D
aload 1 /* arc */
invokevirtual java.awt.geom.Arc2D.getY:()D
6: .line 66
aload 1 /* arc */
invokevirtual java.awt.geom.Arc2D.getX:()D
dload 4 /* width */
dadd
7: .line 67
aload 1 /* arc */
invokevirtual java.awt.geom.Arc2D.getY:()D
dload 6 /* height */
dadd
8: .line 64
invokespecial java.awt.geom.Line2D$Double.<init>:(DDDD)V
astore 8 /* line */
start local 8 // java.awt.geom.Line2D line
9: .line 68
aload 0 /* this */
getfield org.apache.batik.svggen.SVGArc.svgLine:Lorg/apache/batik/svggen/SVGLine;
ifnonnull 11
10: .line 69
aload 0 /* this */
new org.apache.batik.svggen.SVGLine
dup
aload 0 /* this */
getfield org.apache.batik.svggen.SVGArc.generatorContext:Lorg/apache/batik/svggen/SVGGeneratorContext;
invokespecial org.apache.batik.svggen.SVGLine.<init>:(Lorg/apache/batik/svggen/SVGGeneratorContext;)V
putfield org.apache.batik.svggen.SVGArc.svgLine:Lorg/apache/batik/svggen/SVGLine;
11: .line 71
StackMap locals: java.awt.geom.Line2D
StackMap stack:
aload 0 /* this */
getfield org.apache.batik.svggen.SVGArc.svgLine:Lorg/apache/batik/svggen/SVGLine;
aload 8 /* line */
invokevirtual org.apache.batik.svggen.SVGLine.toSVG:(Ljava/awt/geom/Line2D;)Lorg/w3c/dom/Element;
areturn
end local 8 // java.awt.geom.Line2D line
12: .line 74
StackMap locals:
StackMap stack:
dload 2 /* ext */
ldc 360.0
dcmpl
ifge 13
dload 2 /* ext */
ldc -360.0
dcmpg
ifgt 19
13: .line 75
StackMap locals:
StackMap stack:
new java.awt.geom.Ellipse2D$Double
dup
14: .line 76
aload 1 /* arc */
invokevirtual java.awt.geom.Arc2D.getX:()D
aload 1 /* arc */
invokevirtual java.awt.geom.Arc2D.getY:()D
dload 4 /* width */
dload 6 /* height */
15: .line 75
invokespecial java.awt.geom.Ellipse2D$Double.<init>:(DDDD)V
astore 8 /* ellipse */
start local 8 // java.awt.geom.Ellipse2D ellipse
16: .line 77
aload 0 /* this */
getfield org.apache.batik.svggen.SVGArc.svgEllipse:Lorg/apache/batik/svggen/SVGEllipse;
ifnonnull 18
17: .line 78
aload 0 /* this */
new org.apache.batik.svggen.SVGEllipse
dup
aload 0 /* this */
getfield org.apache.batik.svggen.SVGArc.generatorContext:Lorg/apache/batik/svggen/SVGGeneratorContext;
invokespecial org.apache.batik.svggen.SVGEllipse.<init>:(Lorg/apache/batik/svggen/SVGGeneratorContext;)V
putfield org.apache.batik.svggen.SVGArc.svgEllipse:Lorg/apache/batik/svggen/SVGEllipse;
18: .line 80
StackMap locals: java.awt.geom.Ellipse2D
StackMap stack:
aload 0 /* this */
getfield org.apache.batik.svggen.SVGArc.svgEllipse:Lorg/apache/batik/svggen/SVGEllipse;
aload 8 /* ellipse */
invokevirtual org.apache.batik.svggen.SVGEllipse.toSVG:(Ljava/awt/geom/Ellipse2D;)Lorg/w3c/dom/Element;
areturn
end local 8 // java.awt.geom.Ellipse2D ellipse
19: .line 83
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield org.apache.batik.svggen.SVGArc.generatorContext:Lorg/apache/batik/svggen/SVGGeneratorContext;
getfield org.apache.batik.svggen.SVGGeneratorContext.domFactory:Lorg/w3c/dom/Document;
20: .line 84
ldc "http://www.w3.org/2000/svg"
ldc "path"
21: .line 83
invokeinterface org.w3c.dom.Document.createElementNS:(Ljava/lang/String;Ljava/lang/String;)Lorg/w3c/dom/Element;
astore 8 /* svgPath */
start local 8 // org.w3c.dom.Element svgPath
22: .line 85
new java.lang.StringBuffer
dup
bipush 64
invokespecial java.lang.StringBuffer.<init>:(I)V
astore 9 /* d */
start local 9 // java.lang.StringBuffer d
23: .line 87
aload 1 /* arc */
invokevirtual java.awt.geom.Arc2D.getStartPoint:()Ljava/awt/geom/Point2D;
astore 10 /* startPt */
start local 10 // java.awt.geom.Point2D startPt
24: .line 88
aload 1 /* arc */
invokevirtual java.awt.geom.Arc2D.getEndPoint:()Ljava/awt/geom/Point2D;
astore 11 /* endPt */
start local 11 // java.awt.geom.Point2D endPt
25: .line 89
aload 1 /* arc */
invokevirtual java.awt.geom.Arc2D.getArcType:()I
istore 12 /* type */
start local 12 // int type
26: .line 91
aload 9 /* d */
ldc "M"
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
27: .line 92
aload 9 /* d */
aload 0 /* this */
aload 10 /* startPt */
invokevirtual java.awt.geom.Point2D.getX:()D
invokevirtual org.apache.batik.svggen.SVGArc.doubleString:(D)Ljava/lang/String;
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
28: .line 93
aload 9 /* d */
ldc " "
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
29: .line 94
aload 9 /* d */
aload 0 /* this */
aload 10 /* startPt */
invokevirtual java.awt.geom.Point2D.getY:()D
invokevirtual org.apache.batik.svggen.SVGArc.doubleString:(D)Ljava/lang/String;
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
30: .line 95
aload 9 /* d */
ldc " "
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
31: .line 97
aload 9 /* d */
ldc "A"
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
32: .line 98
aload 9 /* d */
aload 0 /* this */
dload 4 /* width */
ldc 2.0
ddiv
invokevirtual org.apache.batik.svggen.SVGArc.doubleString:(D)Ljava/lang/String;
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
33: .line 99
aload 9 /* d */
ldc " "
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
34: .line 100
aload 9 /* d */
aload 0 /* this */
dload 6 /* height */
ldc 2.0
ddiv
invokevirtual org.apache.batik.svggen.SVGArc.doubleString:(D)Ljava/lang/String;
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
35: .line 101
aload 9 /* d */
ldc " "
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
36: .line 102
aload 9 /* d */
bipush 48
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
37: .line 103
aload 9 /* d */
ldc " "
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
38: .line 104
dload 2 /* ext */
dconst_0
dcmpl
ifle 44
39: .line 106
dload 2 /* ext */
ldc 180.0
dcmpl
ifle 40
aload 9 /* d */
bipush 49
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
goto 41
40: .line 107
StackMap locals: org.apache.batik.svggen.SVGArc java.awt.geom.Arc2D double double double org.w3c.dom.Element java.lang.StringBuffer java.awt.geom.Point2D java.awt.geom.Point2D int
StackMap stack:
aload 9 /* d */
bipush 48
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
41: .line 108
StackMap locals:
StackMap stack:
aload 9 /* d */
ldc " "
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
42: .line 109
aload 9 /* d */
bipush 48
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
43: .line 110
goto 48
44: .line 112
StackMap locals:
StackMap stack:
dload 2 /* ext */
ldc -180.0
dcmpg
ifge 45
aload 9 /* d */
bipush 49
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
goto 46
45: .line 113
StackMap locals:
StackMap stack:
aload 9 /* d */
bipush 48
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
46: .line 114
StackMap locals:
StackMap stack:
aload 9 /* d */
ldc " "
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
47: .line 115
aload 9 /* d */
bipush 49
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
48: .line 118
StackMap locals:
StackMap stack:
aload 9 /* d */
ldc " "
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
49: .line 119
aload 9 /* d */
aload 0 /* this */
aload 11 /* endPt */
invokevirtual java.awt.geom.Point2D.getX:()D
invokevirtual org.apache.batik.svggen.SVGArc.doubleString:(D)Ljava/lang/String;
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
50: .line 120
aload 9 /* d */
ldc " "
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
51: .line 121
aload 9 /* d */
aload 0 /* this */
aload 11 /* endPt */
invokevirtual java.awt.geom.Point2D.getY:()D
invokevirtual org.apache.batik.svggen.SVGArc.doubleString:(D)Ljava/lang/String;
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
52: .line 123
iload 12 /* type */
iconst_1
if_icmpne 55
53: .line 124
aload 9 /* d */
ldc "Z"
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
54: .line 125
goto 65
StackMap locals:
StackMap stack:
55: iload 12 /* type */
iconst_2
if_icmpne 65
56: .line 126
aload 1 /* arc */
invokevirtual java.awt.geom.Arc2D.getX:()D
dload 4 /* width */
ldc 2.0
ddiv
dadd
dstore 13 /* cx */
start local 13 // double cx
57: .line 127
aload 1 /* arc */
invokevirtual java.awt.geom.Arc2D.getY:()D
dload 6 /* height */
ldc 2.0
ddiv
dadd
dstore 15 /* cy */
start local 15 // double cy
58: .line 128
aload 9 /* d */
ldc "L"
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
59: .line 129
aload 9 /* d */
ldc " "
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
60: .line 130
aload 9 /* d */
aload 0 /* this */
dload 13 /* cx */
invokevirtual org.apache.batik.svggen.SVGArc.doubleString:(D)Ljava/lang/String;
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
61: .line 131
aload 9 /* d */
ldc " "
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
62: .line 132
aload 9 /* d */
aload 0 /* this */
dload 15 /* cy */
invokevirtual org.apache.batik.svggen.SVGArc.doubleString:(D)Ljava/lang/String;
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
63: .line 133
aload 9 /* d */
ldc " "
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
64: .line 134
aload 9 /* d */
ldc "Z"
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
end local 15 // double cy
end local 13 // double cx
65: .line 136
StackMap locals:
StackMap stack:
aload 8 /* svgPath */
aconst_null
ldc "d"
aload 9 /* d */
invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
invokeinterface org.w3c.dom.Element.setAttributeNS:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
66: .line 137
aload 8 /* svgPath */
areturn
end local 12 // int type
end local 11 // java.awt.geom.Point2D endPt
end local 10 // java.awt.geom.Point2D startPt
end local 9 // java.lang.StringBuffer d
end local 8 // org.w3c.dom.Element svgPath
end local 6 // double height
end local 4 // double width
end local 2 // double ext
end local 1 // java.awt.geom.Arc2D arc
end local 0 // org.apache.batik.svggen.SVGArc this
LocalVariableTable:
Start End Slot Name Signature
0 67 0 this Lorg/apache/batik/svggen/SVGArc;
0 67 1 arc Ljava/awt/geom/Arc2D;
1 67 2 ext D
2 67 4 width D
3 67 6 height D
9 12 8 line Ljava/awt/geom/Line2D;
16 19 8 ellipse Ljava/awt/geom/Ellipse2D;
22 67 8 svgPath Lorg/w3c/dom/Element;
23 67 9 d Ljava/lang/StringBuffer;
24 67 10 startPt Ljava/awt/geom/Point2D;
25 67 11 endPt Ljava/awt/geom/Point2D;
26 67 12 type I
57 65 13 cx D
58 65 15 cy D
MethodParameters:
Name Flags
arc
}
SourceFile: "SVGArc.java"
InnerClasses:
public Double = java.awt.geom.Ellipse2D$Double of java.awt.geom.Ellipse2D
public Double = java.awt.geom.Line2D$Double of java.awt.geom.Line2D