public final class com.sun.prism.impl.shape.MarlinRasterizer implements com.sun.prism.impl.shape.ShapeRasterizer
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: com.sun.prism.impl.shape.MarlinRasterizer
super_class: java.lang.Object
{
private static final com.sun.prism.impl.shape.MaskData EMPTY_MASK;
descriptor: Lcom/sun/prism/impl/shape/MaskData;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=5, locals=0, args_size=0
0: iconst_1
newarray 8
iconst_0
iconst_0
iconst_1
iconst_1
invokestatic com.sun.prism.impl.shape.MaskData.create:([BIIII)Lcom/sun/prism/impl/shape/MaskData;
putstatic com.sun.prism.impl.shape.MarlinRasterizer.EMPTY_MASK:Lcom/sun/prism/impl/shape/MaskData;
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/prism/impl/shape/MarlinRasterizer;
public com.sun.prism.impl.shape.MaskData getMaskData(com.sun.javafx.geom.Shape, com.sun.prism.BasicStroke, com.sun.javafx.geom.RectBounds, com.sun.javafx.geom.transform.BaseTransform, boolean, boolean);
descriptor: (Lcom/sun/javafx/geom/Shape;Lcom/sun/prism/BasicStroke;Lcom/sun/javafx/geom/RectBounds;Lcom/sun/javafx/geom/transform/BaseTransform;ZZ)Lcom/sun/prism/impl/shape/MaskData;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=20, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: aload 2
ifnull 3
aload 2
invokevirtual com.sun.prism.BasicStroke.getType:()I
ifeq 3
1: aload 2
aload 1
invokevirtual com.sun.prism.BasicStroke.createStrokedShape:(Lcom/sun/javafx/geom/Shape;)Lcom/sun/javafx/geom/Shape;
astore 1
2: aconst_null
astore 2
3: StackMap locals:
StackMap stack:
aload 3
ifnonnull 9
4: aload 2
ifnull 7
5: aload 2
aload 1
invokevirtual com.sun.prism.BasicStroke.createStrokedShape:(Lcom/sun/javafx/geom/Shape;)Lcom/sun/javafx/geom/Shape;
astore 1
6: aconst_null
astore 2
7: StackMap locals:
StackMap stack:
new com.sun.javafx.geom.RectBounds
dup
invokespecial com.sun.javafx.geom.RectBounds.<init>:()V
astore 3
8: aload 4
aload 1
invokevirtual com.sun.javafx.geom.Shape.getBounds:()Lcom/sun/javafx/geom/RectBounds;
aload 3
invokevirtual com.sun.javafx.geom.transform.BaseTransform.transform:(Lcom/sun/javafx/geom/BaseBounds;Lcom/sun/javafx/geom/BaseBounds;)Lcom/sun/javafx/geom/BaseBounds;
checkcast com.sun.javafx.geom.RectBounds
astore 3
9: StackMap locals:
StackMap stack:
aload 3
invokevirtual com.sun.javafx.geom.RectBounds.isEmpty:()Z
ifeq 11
10: getstatic com.sun.prism.impl.shape.MarlinRasterizer.EMPTY_MASK:Lcom/sun/prism/impl/shape/MaskData;
areturn
11: StackMap locals:
StackMap stack:
invokestatic com.sun.marlin.MarlinRenderingEngine.getRendererContext:()Lcom/sun/marlin/RendererContext;
astore 7
start local 7 12: aconst_null
astore 8
start local 8 13: aload 7
getfield com.sun.marlin.RendererContext.clip:Lcom/sun/javafx/geom/Rectangle;
astore 9
start local 9 14: aload 9
aload 3
invokevirtual com.sun.javafx.geom.Rectangle.setBounds:(Lcom/sun/javafx/geom/BaseBounds;)V
15: aload 7
aload 1
aload 2
aload 4
aload 9
16: iload 6
17: invokestatic com.sun.prism.impl.shape.MarlinPrismUtils.setupRenderer:(Lcom/sun/marlin/RendererContext;Lcom/sun/javafx/geom/Shape;Lcom/sun/prism/BasicStroke;Lcom/sun/javafx/geom/transform/BaseTransform;Lcom/sun/javafx/geom/Rectangle;Z)Lcom/sun/marlin/MarlinRenderer;
astore 8
18: aload 8
invokeinterface com.sun.marlin.MarlinRenderer.getOutpixMinX:()I
istore 10
start local 10 19: aload 8
invokeinterface com.sun.marlin.MarlinRenderer.getOutpixMaxX:()I
istore 11
start local 11 20: aload 8
invokeinterface com.sun.marlin.MarlinRenderer.getOutpixMinY:()I
istore 12
start local 12 21: aload 8
invokeinterface com.sun.marlin.MarlinRenderer.getOutpixMaxY:()I
istore 13
start local 13 22: iload 11
iload 10
isub
istore 14
start local 14 23: iload 13
iload 12
isub
istore 15
start local 15 24: iload 14
ifle 25
iload 15
ifgt 30
25: StackMap locals: com.sun.prism.impl.shape.MarlinRasterizer com.sun.javafx.geom.Shape com.sun.prism.BasicStroke com.sun.javafx.geom.RectBounds com.sun.javafx.geom.transform.BaseTransform int int com.sun.marlin.RendererContext com.sun.marlin.MarlinRenderer com.sun.javafx.geom.Rectangle int int int int int int
StackMap stack:
getstatic com.sun.prism.impl.shape.MarlinRasterizer.EMPTY_MASK:Lcom/sun/prism/impl/shape/MaskData;
astore 19
26: aload 8
ifnull 28
27: aload 8
invokeinterface com.sun.marlin.MarlinRenderer.dispose:()V
28: StackMap locals: com.sun.prism.impl.shape.MarlinRasterizer com.sun.javafx.geom.Shape com.sun.prism.BasicStroke com.sun.javafx.geom.RectBounds com.sun.javafx.geom.transform.BaseTransform int int com.sun.marlin.RendererContext com.sun.marlin.MarlinRenderer com.sun.javafx.geom.Rectangle int int int int int int top top top com.sun.prism.impl.shape.MaskData
StackMap stack:
aload 7
invokestatic com.sun.marlin.MarlinRenderingEngine.returnRendererContext:(Lcom/sun/marlin/RendererContext;)V
29: aload 19
areturn
30: StackMap locals: com.sun.prism.impl.shape.MarlinRasterizer com.sun.javafx.geom.Shape com.sun.prism.BasicStroke com.sun.javafx.geom.RectBounds com.sun.javafx.geom.transform.BaseTransform int int com.sun.marlin.RendererContext com.sun.marlin.MarlinRenderer com.sun.javafx.geom.Rectangle int int int int int int
StackMap stack:
aload 7
getfield com.sun.marlin.RendererContext.consumer:Lcom/sun/marlin/MaskMarlinAlphaConsumer;
astore 16
start local 16 31: aload 16
ifnull 32
iload 14
iload 15
imul
aload 16
invokevirtual com.sun.marlin.MaskMarlinAlphaConsumer.getAlphaLength:()I
if_icmple 36
32: StackMap locals: com.sun.marlin.MaskMarlinAlphaConsumer
StackMap stack:
iload 14
iload 15
imul
sipush 4095
iadd
sipush -4096
iand
istore 17
start local 17 33: aload 7
new com.sun.marlin.MaskMarlinAlphaConsumer
dup
iload 17
invokespecial com.sun.marlin.MaskMarlinAlphaConsumer.<init>:(I)V
dup
astore 16
putfield com.sun.marlin.RendererContext.consumer:Lcom/sun/marlin/MaskMarlinAlphaConsumer;
34: getstatic com.sun.prism.impl.PrismSettings.verbose:Z
ifeq 36
35: getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "new alphas with length = "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 17
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
end local 17 36: StackMap locals:
StackMap stack:
aload 16
iload 10
iload 12
iload 14
iload 15
invokevirtual com.sun.marlin.MaskMarlinAlphaConsumer.setBoundsNoClone:(IIII)V
37: aload 8
aload 16
invokeinterface com.sun.marlin.MarlinRenderer.produceAlphas:(Lcom/sun/marlin/MarlinAlphaConsumer;)V
38: aload 16
invokevirtual com.sun.marlin.MaskMarlinAlphaConsumer.getMaskData:()Lcom/sun/prism/impl/shape/MaskData;
astore 19
39: aload 8
ifnull 41
40: aload 8
invokeinterface com.sun.marlin.MarlinRenderer.dispose:()V
41: StackMap locals: com.sun.prism.impl.shape.MarlinRasterizer com.sun.javafx.geom.Shape com.sun.prism.BasicStroke com.sun.javafx.geom.RectBounds com.sun.javafx.geom.transform.BaseTransform int int com.sun.marlin.RendererContext com.sun.marlin.MarlinRenderer com.sun.javafx.geom.Rectangle int int int int int int com.sun.marlin.MaskMarlinAlphaConsumer top top com.sun.prism.impl.shape.MaskData
StackMap stack:
aload 7
invokestatic com.sun.marlin.MarlinRenderingEngine.returnRendererContext:(Lcom/sun/marlin/RendererContext;)V
42: aload 19
areturn
end local 16 end local 15 end local 14 end local 13 end local 12 end local 11 end local 10 end local 9 43: StackMap locals: com.sun.prism.impl.shape.MarlinRasterizer com.sun.javafx.geom.Shape com.sun.prism.BasicStroke com.sun.javafx.geom.RectBounds com.sun.javafx.geom.transform.BaseTransform int int com.sun.marlin.RendererContext com.sun.marlin.MarlinRenderer
StackMap stack: java.lang.Throwable
astore 18
44: aload 8
ifnull 46
45: aload 8
invokeinterface com.sun.marlin.MarlinRenderer.dispose:()V
46: StackMap locals: com.sun.prism.impl.shape.MarlinRasterizer com.sun.javafx.geom.Shape com.sun.prism.BasicStroke com.sun.javafx.geom.RectBounds com.sun.javafx.geom.transform.BaseTransform int int com.sun.marlin.RendererContext com.sun.marlin.MarlinRenderer top top top top top top top top top java.lang.Throwable
StackMap stack:
aload 7
invokestatic com.sun.marlin.MarlinRenderingEngine.returnRendererContext:(Lcom/sun/marlin/RendererContext;)V
47: aload 18
athrow
end local 8 end local 7 end local 6 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 48 0 this Lcom/sun/prism/impl/shape/MarlinRasterizer;
0 48 1 shape Lcom/sun/javafx/geom/Shape;
0 48 2 stroke Lcom/sun/prism/BasicStroke;
0 48 3 xformBounds Lcom/sun/javafx/geom/RectBounds;
0 48 4 xform Lcom/sun/javafx/geom/transform/BaseTransform;
0 48 5 close Z
0 48 6 antialiasedShape Z
12 48 7 rdrCtx Lcom/sun/marlin/RendererContext;
13 48 8 renderer Lcom/sun/marlin/MarlinRenderer;
14 43 9 rclip Lcom/sun/javafx/geom/Rectangle;
19 43 10 outpix_xmin I
20 43 11 outpix_xmax I
21 43 12 outpix_ymin I
22 43 13 outpix_ymax I
23 43 14 w I
24 43 15 h I
31 43 16 consumer Lcom/sun/marlin/MaskMarlinAlphaConsumer;
33 36 17 csize I
Exception table:
from to target type
13 26 43 any
30 39 43 any
MethodParameters:
Name Flags
shape
stroke
xformBounds
xform
close
antialiasedShape
static com.sun.javafx.geom.Shape createCenteredStrokedShape(com.sun.javafx.geom.Shape, com.sun.prism.BasicStroke);
descriptor: (Lcom/sun/javafx/geom/Shape;Lcom/sun/prism/BasicStroke;)Lcom/sun/javafx/geom/Shape;
flags: (0x0008) ACC_STATIC
Code:
stack=6, locals=7, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual com.sun.prism.BasicStroke.getType:()I
ifne 2
1: aload 1
invokevirtual com.sun.prism.BasicStroke.getLineWidth:()F
goto 3
StackMap locals:
StackMap stack:
2: aload 1
invokevirtual com.sun.prism.BasicStroke.getLineWidth:()F
fconst_2
fmul
3: StackMap locals:
StackMap stack: float
fstore 2
start local 2 4: invokestatic com.sun.marlin.MarlinRenderingEngine.getRendererContext:()Lcom/sun/marlin/RendererContext;
astore 3
start local 3 5: aload 3
invokevirtual com.sun.marlin.RendererContext.getPath2D:()Lcom/sun/javafx/geom/Path2D;
astore 4
start local 4 6: aload 3
aload 0
aload 1
fload 2
7: aload 3
getfield com.sun.marlin.RendererContext.transformerPC2D:Lcom/sun/marlin/TransformingPathConsumer2D;
aload 4
invokevirtual com.sun.marlin.TransformingPathConsumer2D.wrapPath2D:(Lcom/sun/javafx/geom/Path2D;)Lcom/sun/javafx/geom/PathConsumer2D;
8: invokestatic com.sun.prism.impl.shape.MarlinPrismUtils.strokeTo:(Lcom/sun/marlin/RendererContext;Lcom/sun/javafx/geom/Shape;Lcom/sun/prism/BasicStroke;FLcom/sun/javafx/geom/PathConsumer2D;)V
9: new com.sun.javafx.geom.Path2D
dup
aload 4
invokespecial com.sun.javafx.geom.Path2D.<init>:(Lcom/sun/javafx/geom/Shape;)V
astore 6
10: aload 3
invokestatic com.sun.marlin.MarlinRenderingEngine.returnRendererContext:(Lcom/sun/marlin/RendererContext;)V
11: aload 6
areturn
end local 4 12: StackMap locals: com.sun.javafx.geom.Shape com.sun.prism.BasicStroke float com.sun.marlin.RendererContext
StackMap stack: java.lang.Throwable
astore 5
13: aload 3
invokestatic com.sun.marlin.MarlinRenderingEngine.returnRendererContext:(Lcom/sun/marlin/RendererContext;)V
14: aload 5
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 s Lcom/sun/javafx/geom/Shape;
0 15 1 stroke Lcom/sun/prism/BasicStroke;
4 15 2 lw F
5 15 3 rdrCtx Lcom/sun/marlin/RendererContext;
6 12 4 p2d Lcom/sun/javafx/geom/Path2D;
Exception table:
from to target type
5 10 12 any
MethodParameters:
Name Flags
s
stroke
}
SourceFile: "MarlinRasterizer.java"