public class org.apache.batik.svggen.SVGPath 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.SVGPath
super_class: org.apache.batik.svggen.SVGGraphicObjectConverter
{
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 start local 1 0: aload 0
aload 1
invokespecial org.apache.batik.svggen.SVGGraphicObjectConverter.<init>:(Lorg/apache/batik/svggen/SVGGeneratorContext;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/batik/svggen/SVGPath;
0 2 1 generatorContext Lorg/apache/batik/svggen/SVGGeneratorContext;
MethodParameters:
Name Flags
generatorContext
public org.w3c.dom.Element toSVG(java.awt.Shape);
descriptor: (Ljava/awt/Shape;)Lorg/w3c/dom/Element;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 1
aload 0
getfield org.apache.batik.svggen.SVGPath.generatorContext:Lorg/apache/batik/svggen/SVGGeneratorContext;
invokestatic org.apache.batik.svggen.SVGPath.toSVGPathData:(Ljava/awt/Shape;Lorg/apache/batik/svggen/SVGGeneratorContext;)Ljava/lang/String;
astore 2
start local 2 1: aload 2
ifnull 2
aload 2
invokevirtual java.lang.String.length:()I
ifne 3
2: StackMap locals: java.lang.String
StackMap stack:
aconst_null
areturn
3: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.batik.svggen.SVGPath.generatorContext:Lorg/apache/batik/svggen/SVGGeneratorContext;
getfield org.apache.batik.svggen.SVGGeneratorContext.domFactory:Lorg/w3c/dom/Document;
4: ldc "http://www.w3.org/2000/svg"
ldc "path"
5: invokeinterface org.w3c.dom.Document.createElementNS:(Ljava/lang/String;Ljava/lang/String;)Lorg/w3c/dom/Element;
astore 3
start local 3 6: aload 3
aconst_null
ldc "d"
aload 2
invokeinterface org.w3c.dom.Element.setAttributeNS:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
7: aload 1
aconst_null
invokeinterface java.awt.Shape.getPathIterator:(Ljava/awt/geom/AffineTransform;)Ljava/awt/geom/PathIterator;
invokeinterface java.awt.geom.PathIterator.getWindingRule:()I
ifne 9
8: aload 3
aconst_null
ldc "fill-rule"
ldc "evenodd"
invokeinterface org.w3c.dom.Element.setAttributeNS:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
9: StackMap locals: org.w3c.dom.Element
StackMap stack:
aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/apache/batik/svggen/SVGPath;
0 10 1 path Ljava/awt/Shape;
1 10 2 dAttr Ljava/lang/String;
6 10 3 svgPath Lorg/w3c/dom/Element;
MethodParameters:
Name Flags
path
public static java.lang.String toSVGPathData(java.awt.Shape, org.apache.batik.svggen.SVGGeneratorContext);
descriptor: (Ljava/awt/Shape;Lorg/apache/batik/svggen/SVGGeneratorContext;)Ljava/lang/String;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=6, args_size=2
start local 0 start local 1 0: new java.lang.StringBuffer
dup
bipush 40
invokespecial java.lang.StringBuffer.<init>:(I)V
astore 2
start local 2 1: aload 0
aconst_null
invokeinterface java.awt.Shape.getPathIterator:(Ljava/awt/geom/AffineTransform;)Ljava/awt/geom/PathIterator;
astore 3
start local 3 2: bipush 6
newarray 6
astore 4
start local 4 3: iconst_0
istore 5
start local 5 4: goto 26
5: StackMap locals: java.awt.Shape org.apache.batik.svggen.SVGGeneratorContext java.lang.StringBuffer java.awt.geom.PathIterator float[] int
StackMap stack:
aload 3
aload 4
invokeinterface java.awt.geom.PathIterator.currentSegment:([F)I
istore 5
6: iload 5
tableswitch { // 0 - 4
0: 7
1: 10
2: 15
3: 19
4: 13
default: 24
}
7: StackMap locals:
StackMap stack:
aload 2
ldc "M"
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
8: aload 2
aload 4
iconst_0
faload
aload 4
iconst_1
faload
aload 1
invokestatic org.apache.batik.svggen.SVGPath.appendPoint:(Ljava/lang/StringBuffer;FFLorg/apache/batik/svggen/SVGGeneratorContext;)V
9: goto 25
10: StackMap locals:
StackMap stack:
aload 2
ldc "L"
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
11: aload 2
aload 4
iconst_0
faload
aload 4
iconst_1
faload
aload 1
invokestatic org.apache.batik.svggen.SVGPath.appendPoint:(Ljava/lang/StringBuffer;FFLorg/apache/batik/svggen/SVGGeneratorContext;)V
12: goto 25
13: StackMap locals:
StackMap stack:
aload 2
ldc "Z"
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
14: goto 25
15: StackMap locals:
StackMap stack:
aload 2
ldc "Q"
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
16: aload 2
aload 4
iconst_0
faload
aload 4
iconst_1
faload
aload 1
invokestatic org.apache.batik.svggen.SVGPath.appendPoint:(Ljava/lang/StringBuffer;FFLorg/apache/batik/svggen/SVGGeneratorContext;)V
17: aload 2
aload 4
iconst_2
faload
aload 4
iconst_3
faload
aload 1
invokestatic org.apache.batik.svggen.SVGPath.appendPoint:(Ljava/lang/StringBuffer;FFLorg/apache/batik/svggen/SVGGeneratorContext;)V
18: goto 25
19: StackMap locals:
StackMap stack:
aload 2
ldc "C"
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
20: aload 2
aload 4
iconst_0
faload
aload 4
iconst_1
faload
aload 1
invokestatic org.apache.batik.svggen.SVGPath.appendPoint:(Ljava/lang/StringBuffer;FFLorg/apache/batik/svggen/SVGGeneratorContext;)V
21: aload 2
aload 4
iconst_2
faload
aload 4
iconst_3
faload
aload 1
invokestatic org.apache.batik.svggen.SVGPath.appendPoint:(Ljava/lang/StringBuffer;FFLorg/apache/batik/svggen/SVGGeneratorContext;)V
22: aload 2
aload 4
iconst_4
faload
aload 4
iconst_5
faload
aload 1
invokestatic org.apache.batik.svggen.SVGPath.appendPoint:(Ljava/lang/StringBuffer;FFLorg/apache/batik/svggen/SVGGeneratorContext;)V
23: goto 25
24: StackMap locals:
StackMap stack:
new java.lang.RuntimeException
dup
new java.lang.StringBuilder
dup
ldc "invalid segmentType:"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 5
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
25: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.awt.geom.PathIterator.next:()V
26: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.awt.geom.PathIterator.isDone:()Z
ifeq 5
27: aload 2
invokevirtual java.lang.StringBuffer.length:()I
ifle 29
28: aload 2
invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
invokevirtual java.lang.String.trim:()Ljava/lang/String;
areturn
29: StackMap locals:
StackMap stack:
ldc ""
areturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 30 0 path Ljava/awt/Shape;
0 30 1 gc Lorg/apache/batik/svggen/SVGGeneratorContext;
1 30 2 d Ljava/lang/StringBuffer;
2 30 3 pi Ljava/awt/geom/PathIterator;
3 30 4 seg [F
4 30 5 segType I
MethodParameters:
Name Flags
path
gc
private static void appendPoint(java.lang.StringBuffer, float, float, org.apache.batik.svggen.SVGGeneratorContext);
descriptor: (Ljava/lang/StringBuffer;FFLorg/apache/batik/svggen/SVGGeneratorContext;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 3
fload 1
f2d
invokevirtual org.apache.batik.svggen.SVGGeneratorContext.doubleString:(D)Ljava/lang/String;
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
1: aload 0
ldc " "
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
2: aload 0
aload 3
fload 2
f2d
invokevirtual org.apache.batik.svggen.SVGGeneratorContext.doubleString:(D)Ljava/lang/String;
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
3: aload 0
ldc " "
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
4: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 d Ljava/lang/StringBuffer;
0 5 1 x F
0 5 2 y F
0 5 3 gc Lorg/apache/batik/svggen/SVGGeneratorContext;
MethodParameters:
Name Flags
d
x
y
gc
}
SourceFile: "SVGPath.java"