public class com.sun.prism.image.ViewPort
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.sun.prism.image.ViewPort
  super_class: java.lang.Object
{
  public float u0;
    descriptor: F
    flags: (0x0001) ACC_PUBLIC

  public float v0;
    descriptor: F
    flags: (0x0001) ACC_PUBLIC

  public float u1;
    descriptor: F
    flags: (0x0001) ACC_PUBLIC

  public float v1;
    descriptor: F
    flags: (0x0001) ACC_PUBLIC

  public void <init>(float, float, float, float);
    descriptor: (FFFF)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=5
        start local 0 // com.sun.prism.image.ViewPort this
        start local 1 // float u
        start local 2 // float v
        start local 3 // float du
        start local 4 // float dv
         0: .line 37
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 38
            aload 0 /* this */
            fload 1 /* u */
            putfield com.sun.prism.image.ViewPort.u0:F
            aload 0 /* this */
            fload 1 /* u */
            fload 3 /* du */
            fadd
            putfield com.sun.prism.image.ViewPort.u1:F
         2: .line 39
            aload 0 /* this */
            fload 2 /* v */
            putfield com.sun.prism.image.ViewPort.v0:F
            aload 0 /* this */
            fload 2 /* v */
            fload 4 /* dv */
            fadd
            putfield com.sun.prism.image.ViewPort.v1:F
         3: .line 40
            return
        end local 4 // float dv
        end local 3 // float du
        end local 2 // float v
        end local 1 // float u
        end local 0 // com.sun.prism.image.ViewPort this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/sun/prism/image/ViewPort;
            0    4     1     u  F
            0    4     2     v  F
            0    4     3    du  F
            0    4     4    dv  F
    MethodParameters:
      Name  Flags
      u     
      v     
      du    
      dv    

  public com.sun.prism.image.ViewPort getScaledVersion(float);
    descriptor: (F)Lcom/sun/prism/image/ViewPort;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=6, args_size=2
        start local 0 // com.sun.prism.image.ViewPort this
        start local 1 // float pixelScale
         0: .line 43
            fload 1 /* pixelScale */
            fconst_1
            fcmpl
            ifne 2
         1: .line 44
            aload 0 /* this */
            areturn
         2: .line 46
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.prism.image.ViewPort.u0:F
            fload 1 /* pixelScale */
            fmul
            fstore 2 /* newu0 */
        start local 2 // float newu0
         3: .line 47
            aload 0 /* this */
            getfield com.sun.prism.image.ViewPort.v0:F
            fload 1 /* pixelScale */
            fmul
            fstore 3 /* newv0 */
        start local 3 // float newv0
         4: .line 48
            aload 0 /* this */
            getfield com.sun.prism.image.ViewPort.u1:F
            fload 1 /* pixelScale */
            fmul
            fstore 4 /* newu1 */
        start local 4 // float newu1
         5: .line 49
            aload 0 /* this */
            getfield com.sun.prism.image.ViewPort.v1:F
            fload 1 /* pixelScale */
            fmul
            fstore 5 /* newv1 */
        start local 5 // float newv1
         6: .line 50
            new com.sun.prism.image.ViewPort
            dup
            fload 2 /* newu0 */
            fload 3 /* newv0 */
            fload 4 /* newu1 */
            fload 2 /* newu0 */
            fsub
            fload 5 /* newv1 */
            fload 3 /* newv0 */
            fsub
            invokespecial com.sun.prism.image.ViewPort.<init>:(FFFF)V
            areturn
        end local 5 // float newv1
        end local 4 // float newu1
        end local 3 // float newv0
        end local 2 // float newu0
        end local 1 // float pixelScale
        end local 0 // com.sun.prism.image.ViewPort this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    7     0        this  Lcom/sun/prism/image/ViewPort;
            0    7     1  pixelScale  F
            3    7     2       newu0  F
            4    7     3       newv0  F
            5    7     4       newu1  F
            6    7     5       newv1  F
    MethodParameters:
            Name  Flags
      pixelScale  

  public float getRelX(float);
    descriptor: (F)F
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.sun.prism.image.ViewPort this
        start local 1 // float u
         0: .line 60
            fload 1 /* u */
            aload 0 /* this */
            getfield com.sun.prism.image.ViewPort.u0:F
            fsub
            aload 0 /* this */
            getfield com.sun.prism.image.ViewPort.u1:F
            aload 0 /* this */
            getfield com.sun.prism.image.ViewPort.u0:F
            fsub
            fdiv
            freturn
        end local 1 // float u
        end local 0 // com.sun.prism.image.ViewPort this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/prism/image/ViewPort;
            0    1     1     u  F
    MethodParameters:
      Name  Flags
      u     

  public float getRelY(float);
    descriptor: (F)F
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.sun.prism.image.ViewPort this
        start local 1 // float v
         0: .line 61
            fload 1 /* v */
            aload 0 /* this */
            getfield com.sun.prism.image.ViewPort.v0:F
            fsub
            aload 0 /* this */
            getfield com.sun.prism.image.ViewPort.v1:F
            aload 0 /* this */
            getfield com.sun.prism.image.ViewPort.v0:F
            fsub
            fdiv
            freturn
        end local 1 // float v
        end local 0 // com.sun.prism.image.ViewPort this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/prism/image/ViewPort;
            0    1     1     v  F
    MethodParameters:
      Name  Flags
      v     

  public com.sun.prism.image.Coords getClippedCoords(float, float, float, float);
    descriptor: (FFFF)Lcom/sun/prism/image/Coords;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=5
        start local 0 // com.sun.prism.image.ViewPort this
        start local 1 // float iw
        start local 2 // float ih
        start local 3 // float w
        start local 4 // float h
         0: .line 64
            new com.sun.prism.image.Coords
            dup
            fload 3 /* w */
            fload 4 /* h */
            aload 0 /* this */
            invokespecial com.sun.prism.image.Coords.<init>:(FFLcom/sun/prism/image/ViewPort;)V
            astore 5 /* cr */
        start local 5 // com.sun.prism.image.Coords cr
         1: .line 66
            aload 0 /* this */
            getfield com.sun.prism.image.ViewPort.u1:F
            fload 1 /* iw */
            fcmpl
            ifgt 2
            aload 0 /* this */
            getfield com.sun.prism.image.ViewPort.u0:F
            fconst_0
            fcmpg
            ifge 10
         2: .line 67
      StackMap locals: com.sun.prism.image.Coords
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.prism.image.ViewPort.u0:F
            fload 1 /* iw */
            fcmpl
            ifge 3
            aload 0 /* this */
            getfield com.sun.prism.image.ViewPort.u1:F
            fconst_0
            fcmpg
            ifgt 4
      StackMap locals:
      StackMap stack:
         3: aconst_null
            areturn
         4: .line 69
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.prism.image.ViewPort.u1:F
            fload 1 /* iw */
            fcmpl
            ifle 7
         5: .line 70
            aload 5 /* cr */
            fload 3 /* w */
            aload 0 /* this */
            fload 1 /* iw */
            invokevirtual com.sun.prism.image.ViewPort.getRelX:(F)F
            fmul
            putfield com.sun.prism.image.Coords.x1:F
         6: .line 71
            aload 5 /* cr */
            fload 1 /* iw */
            putfield com.sun.prism.image.Coords.u1:F
         7: .line 73
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.prism.image.ViewPort.u0:F
            fconst_0
            fcmpg
            ifge 10
         8: .line 74
            aload 5 /* cr */
            fload 3 /* w */
            aload 0 /* this */
            fconst_0
            invokevirtual com.sun.prism.image.ViewPort.getRelX:(F)F
            fmul
            putfield com.sun.prism.image.Coords.x0:F
         9: .line 75
            aload 5 /* cr */
            fconst_0
            putfield com.sun.prism.image.Coords.u0:F
        10: .line 79
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.prism.image.ViewPort.v1:F
            fload 2 /* ih */
            fcmpl
            ifgt 11
            aload 0 /* this */
            getfield com.sun.prism.image.ViewPort.v0:F
            fconst_0
            fcmpg
            ifge 19
        11: .line 80
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.prism.image.ViewPort.v0:F
            fload 2 /* ih */
            fcmpl
            ifge 12
            aload 0 /* this */
            getfield com.sun.prism.image.ViewPort.v1:F
            fconst_0
            fcmpg
            ifgt 13
      StackMap locals:
      StackMap stack:
        12: aconst_null
            areturn
        13: .line 82
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.prism.image.ViewPort.v1:F
            fload 2 /* ih */
            fcmpl
            ifle 16
        14: .line 83
            aload 5 /* cr */
            fload 4 /* h */
            aload 0 /* this */
            fload 2 /* ih */
            invokevirtual com.sun.prism.image.ViewPort.getRelY:(F)F
            fmul
            putfield com.sun.prism.image.Coords.y1:F
        15: .line 84
            aload 5 /* cr */
            fload 2 /* ih */
            putfield com.sun.prism.image.Coords.v1:F
        16: .line 86
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.prism.image.ViewPort.v0:F
            fconst_0
            fcmpg
            ifge 19
        17: .line 87
            aload 5 /* cr */
            fload 4 /* h */
            aload 0 /* this */
            fconst_0
            invokevirtual com.sun.prism.image.ViewPort.getRelY:(F)F
            fmul
            putfield com.sun.prism.image.Coords.y0:F
        18: .line 88
            aload 5 /* cr */
            fconst_0
            putfield com.sun.prism.image.Coords.v0:F
        19: .line 92
      StackMap locals:
      StackMap stack:
            aload 5 /* cr */
            areturn
        end local 5 // com.sun.prism.image.Coords cr
        end local 4 // float h
        end local 3 // float w
        end local 2 // float ih
        end local 1 // float iw
        end local 0 // com.sun.prism.image.ViewPort this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   20     0  this  Lcom/sun/prism/image/ViewPort;
            0   20     1    iw  F
            0   20     2    ih  F
            0   20     3     w  F
            0   20     4     h  F
            1   20     5    cr  Lcom/sun/prism/image/Coords;
    MethodParameters:
      Name  Flags
      iw    
      ih    
      w     
      h     
}
SourceFile: "ViewPort.java"