public class com.sun.javafx.geom.PickRay
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.sun.javafx.geom.PickRay
  super_class: java.lang.Object
{
  private com.sun.javafx.geom.Vec3d origin;
    descriptor: Lcom/sun/javafx/geom/Vec3d;
    flags: (0x0002) ACC_PRIVATE

  private com.sun.javafx.geom.Vec3d direction;
    descriptor: Lcom/sun/javafx/geom/Vec3d;
    flags: (0x0002) ACC_PRIVATE

  private double nearClip;
    descriptor: D
    flags: (0x0002) ACC_PRIVATE

  private double farClip;
    descriptor: D
    flags: (0x0002) ACC_PRIVATE

  static final double EPS;
    descriptor: D
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 9.999999747378752E-6

  private static final double EPSILON_ABSOLUTE;
    descriptor: D
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 1.0E-5

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.sun.javafx.geom.PickRay this
         0: .line 44
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 36
            aload 0 /* this */
            new com.sun.javafx.geom.Vec3d
            dup
            invokespecial com.sun.javafx.geom.Vec3d.<init>:()V
            putfield com.sun.javafx.geom.PickRay.origin:Lcom/sun/javafx/geom/Vec3d;
         2: .line 37
            aload 0 /* this */
            new com.sun.javafx.geom.Vec3d
            dup
            invokespecial com.sun.javafx.geom.Vec3d.<init>:()V
            putfield com.sun.javafx.geom.PickRay.direction:Lcom/sun/javafx/geom/Vec3d;
         3: .line 38
            aload 0 /* this */
            dconst_0
            putfield com.sun.javafx.geom.PickRay.nearClip:D
         4: .line 39
            aload 0 /* this */
            ldc Infinity
            putfield com.sun.javafx.geom.PickRay.farClip:D
         5: .line 44
            return
        end local 0 // com.sun.javafx.geom.PickRay this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lcom/sun/javafx/geom/PickRay;

  public void <init>(com.sun.javafx.geom.Vec3d, com.sun.javafx.geom.Vec3d, double, double);
    descriptor: (Lcom/sun/javafx/geom/Vec3d;Lcom/sun/javafx/geom/Vec3d;DD)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=7, args_size=5
        start local 0 // com.sun.javafx.geom.PickRay this
        start local 1 // com.sun.javafx.geom.Vec3d origin
        start local 2 // com.sun.javafx.geom.Vec3d direction
        start local 3 // double nearClip
        start local 5 // double farClip
         0: .line 46
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 36
            aload 0 /* this */
            new com.sun.javafx.geom.Vec3d
            dup
            invokespecial com.sun.javafx.geom.Vec3d.<init>:()V
            putfield com.sun.javafx.geom.PickRay.origin:Lcom/sun/javafx/geom/Vec3d;
         2: .line 37
            aload 0 /* this */
            new com.sun.javafx.geom.Vec3d
            dup
            invokespecial com.sun.javafx.geom.Vec3d.<init>:()V
            putfield com.sun.javafx.geom.PickRay.direction:Lcom/sun/javafx/geom/Vec3d;
         3: .line 38
            aload 0 /* this */
            dconst_0
            putfield com.sun.javafx.geom.PickRay.nearClip:D
         4: .line 39
            aload 0 /* this */
            ldc Infinity
            putfield com.sun.javafx.geom.PickRay.farClip:D
         5: .line 47
            aload 0 /* this */
            aload 1 /* origin */
            aload 2 /* direction */
            dload 3 /* nearClip */
            dload 5 /* farClip */
            invokevirtual com.sun.javafx.geom.PickRay.set:(Lcom/sun/javafx/geom/Vec3d;Lcom/sun/javafx/geom/Vec3d;DD)V
         6: .line 48
            return
        end local 5 // double farClip
        end local 3 // double nearClip
        end local 2 // com.sun.javafx.geom.Vec3d direction
        end local 1 // com.sun.javafx.geom.Vec3d origin
        end local 0 // com.sun.javafx.geom.PickRay this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    7     0       this  Lcom/sun/javafx/geom/PickRay;
            0    7     1     origin  Lcom/sun/javafx/geom/Vec3d;
            0    7     2  direction  Lcom/sun/javafx/geom/Vec3d;
            0    7     3   nearClip  D
            0    7     5    farClip  D
    MethodParameters:
           Name  Flags
      origin     
      direction  
      nearClip   
      farClip    

  public void <init>(double, double, double, double, double);
    descriptor: (DDDDD)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=11, locals=11, args_size=6
        start local 0 // com.sun.javafx.geom.PickRay this
        start local 1 // double x
        start local 3 // double y
        start local 5 // double z
        start local 7 // double nearClip
        start local 9 // double farClip
         0: .line 50
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 36
            aload 0 /* this */
            new com.sun.javafx.geom.Vec3d
            dup
            invokespecial com.sun.javafx.geom.Vec3d.<init>:()V
            putfield com.sun.javafx.geom.PickRay.origin:Lcom/sun/javafx/geom/Vec3d;
         2: .line 37
            aload 0 /* this */
            new com.sun.javafx.geom.Vec3d
            dup
            invokespecial com.sun.javafx.geom.Vec3d.<init>:()V
            putfield com.sun.javafx.geom.PickRay.direction:Lcom/sun/javafx/geom/Vec3d;
         3: .line 38
            aload 0 /* this */
            dconst_0
            putfield com.sun.javafx.geom.PickRay.nearClip:D
         4: .line 39
            aload 0 /* this */
            ldc Infinity
            putfield com.sun.javafx.geom.PickRay.farClip:D
         5: .line 51
            aload 0 /* this */
            dload 1 /* x */
            dload 3 /* y */
            dload 5 /* z */
            dload 7 /* nearClip */
            dload 9 /* farClip */
            invokevirtual com.sun.javafx.geom.PickRay.set:(DDDDD)V
         6: .line 52
            return
        end local 9 // double farClip
        end local 7 // double nearClip
        end local 5 // double z
        end local 3 // double y
        end local 1 // double x
        end local 0 // com.sun.javafx.geom.PickRay this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    7     0      this  Lcom/sun/javafx/geom/PickRay;
            0    7     1         x  D
            0    7     3         y  D
            0    7     5         z  D
            0    7     7  nearClip  D
            0    7     9   farClip  D
    MethodParameters:
          Name  Flags
      x         
      y         
      z         
      nearClip  
      farClip   

  public static com.sun.javafx.geom.PickRay computePerspectivePickRay(double, double, boolean, double, double, double, boolean, com.sun.javafx.geom.transform.Affine3D, double, double, com.sun.javafx.geom.PickRay);
    descriptor: (DDZDDDZLcom/sun/javafx/geom/transform/Affine3D;DDLcom/sun/javafx/geom/PickRay;)Lcom/sun/javafx/geom/PickRay;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=7, locals=28, args_size=11
        start local 0 // double x
        start local 2 // double y
        start local 4 // boolean fixedEye
        start local 5 // double viewWidth
        start local 7 // double viewHeight
        start local 9 // double fieldOfViewRadians
        start local 11 // boolean verticalFieldOfView
        start local 12 // com.sun.javafx.geom.transform.Affine3D cameraTransform
        start local 13 // double nearClip
        start local 15 // double farClip
        start local 17 // com.sun.javafx.geom.PickRay pickRay
         0: .line 62
            aload 17 /* pickRay */
            ifnonnull 2
         1: .line 63
            new com.sun.javafx.geom.PickRay
            dup
            invokespecial com.sun.javafx.geom.PickRay.<init>:()V
            astore 17 /* pickRay */
         2: .line 66
      StackMap locals:
      StackMap stack:
            aload 17 /* pickRay */
            invokevirtual com.sun.javafx.geom.PickRay.getDirectionNoClone:()Lcom/sun/javafx/geom/Vec3d;
            astore 18 /* direction */
        start local 18 // com.sun.javafx.geom.Vec3d direction
         3: .line 67
            dload 5 /* viewWidth */
            ldc 2.0
            ddiv
            dstore 19 /* halfViewWidth */
        start local 19 // double halfViewWidth
         4: .line 68
            dload 7 /* viewHeight */
            ldc 2.0
            ddiv
            dstore 21 /* halfViewHeight */
        start local 21 // double halfViewHeight
         5: .line 69
            iload 11 /* verticalFieldOfView */
            ifeq 6
            dload 21 /* halfViewHeight */
            goto 7
      StackMap locals: com.sun.javafx.geom.Vec3d double double
      StackMap stack:
         6: dload 19 /* halfViewWidth */
      StackMap locals:
      StackMap stack: double
         7: dstore 23 /* halfViewDim */
        start local 23 // double halfViewDim
         8: .line 71
            dload 23 /* halfViewDim */
            dload 9 /* fieldOfViewRadians */
            ldc 2.0
            ddiv
            invokestatic java.lang.Math.tan:(D)D
            ddiv
            dstore 25 /* distanceZ */
        start local 25 // double distanceZ
         9: .line 73
            aload 18 /* direction */
            dload 0 /* x */
            dload 19 /* halfViewWidth */
            dsub
            putfield com.sun.javafx.geom.Vec3d.x:D
        10: .line 74
            aload 18 /* direction */
            dload 2 /* y */
            dload 21 /* halfViewHeight */
            dsub
            putfield com.sun.javafx.geom.Vec3d.y:D
        11: .line 75
            aload 18 /* direction */
            dload 25 /* distanceZ */
            putfield com.sun.javafx.geom.Vec3d.z:D
        12: .line 77
            aload 17 /* pickRay */
            invokevirtual com.sun.javafx.geom.PickRay.getOriginNoClone:()Lcom/sun/javafx/geom/Vec3d;
            astore 27 /* eye */
        start local 27 // com.sun.javafx.geom.Vec3d eye
        13: .line 79
            iload 4 /* fixedEye */
            ifeq 16
        14: .line 80
            aload 27 /* eye */
            dconst_0
            dconst_0
            dconst_0
            invokevirtual com.sun.javafx.geom.Vec3d.set:(DDD)V
        15: .line 81
            goto 17
        16: .line 84
      StackMap locals: double double com.sun.javafx.geom.Vec3d
      StackMap stack:
            aload 27 /* eye */
            dload 19 /* halfViewWidth */
            dload 21 /* halfViewHeight */
            dload 25 /* distanceZ */
            dneg
            invokevirtual com.sun.javafx.geom.Vec3d.set:(DDD)V
        17: .line 87
      StackMap locals:
      StackMap stack:
            aload 17 /* pickRay */
            dload 13 /* nearClip */
            aload 18 /* direction */
            invokevirtual com.sun.javafx.geom.Vec3d.length:()D
            iload 4 /* fixedEye */
            ifeq 18
            dload 25 /* distanceZ */
            goto 19
      StackMap locals: double double int double double double int com.sun.javafx.geom.transform.Affine3D double double com.sun.javafx.geom.PickRay com.sun.javafx.geom.Vec3d double double double double com.sun.javafx.geom.Vec3d
      StackMap stack: com.sun.javafx.geom.PickRay double double
        18: dconst_1
      StackMap locals: double double int double double double int com.sun.javafx.geom.transform.Affine3D double double com.sun.javafx.geom.PickRay com.sun.javafx.geom.Vec3d double double double double com.sun.javafx.geom.Vec3d
      StackMap stack: com.sun.javafx.geom.PickRay double double double
        19: ddiv
            dmul
            putfield com.sun.javafx.geom.PickRay.nearClip:D
        20: .line 88
            aload 17 /* pickRay */
            dload 15 /* farClip */
            aload 18 /* direction */
            invokevirtual com.sun.javafx.geom.Vec3d.length:()D
            iload 4 /* fixedEye */
            ifeq 21
            dload 25 /* distanceZ */
            goto 22
      StackMap locals: double double int double double double int com.sun.javafx.geom.transform.Affine3D double double com.sun.javafx.geom.PickRay com.sun.javafx.geom.Vec3d double double double double com.sun.javafx.geom.Vec3d
      StackMap stack: com.sun.javafx.geom.PickRay double double
        21: dconst_1
      StackMap locals: double double int double double double int com.sun.javafx.geom.transform.Affine3D double double com.sun.javafx.geom.PickRay com.sun.javafx.geom.Vec3d double double double double com.sun.javafx.geom.Vec3d
      StackMap stack: com.sun.javafx.geom.PickRay double double double
        22: ddiv
            dmul
            putfield com.sun.javafx.geom.PickRay.farClip:D
        23: .line 90
            aload 17 /* pickRay */
            aload 12 /* cameraTransform */
            invokevirtual com.sun.javafx.geom.PickRay.transform:(Lcom/sun/javafx/geom/transform/BaseTransform;)V
        24: .line 92
            aload 17 /* pickRay */
            areturn
        end local 27 // com.sun.javafx.geom.Vec3d eye
        end local 25 // double distanceZ
        end local 23 // double halfViewDim
        end local 21 // double halfViewHeight
        end local 19 // double halfViewWidth
        end local 18 // com.sun.javafx.geom.Vec3d direction
        end local 17 // com.sun.javafx.geom.PickRay pickRay
        end local 15 // double farClip
        end local 13 // double nearClip
        end local 12 // com.sun.javafx.geom.transform.Affine3D cameraTransform
        end local 11 // boolean verticalFieldOfView
        end local 9 // double fieldOfViewRadians
        end local 7 // double viewHeight
        end local 5 // double viewWidth
        end local 4 // boolean fixedEye
        end local 2 // double y
        end local 0 // double x
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   25     0                    x  D
            0   25     2                    y  D
            0   25     4             fixedEye  Z
            0   25     5            viewWidth  D
            0   25     7           viewHeight  D
            0   25     9   fieldOfViewRadians  D
            0   25    11  verticalFieldOfView  Z
            0   25    12      cameraTransform  Lcom/sun/javafx/geom/transform/Affine3D;
            0   25    13             nearClip  D
            0   25    15              farClip  D
            0   25    17              pickRay  Lcom/sun/javafx/geom/PickRay;
            3   25    18            direction  Lcom/sun/javafx/geom/Vec3d;
            4   25    19        halfViewWidth  D
            5   25    21       halfViewHeight  D
            8   25    23          halfViewDim  D
            9   25    25            distanceZ  D
           13   25    27                  eye  Lcom/sun/javafx/geom/Vec3d;
    MethodParameters:
                     Name  Flags
      x                    
      y                    
      fixedEye             
      viewWidth            
      viewHeight           
      fieldOfViewRadians   
      verticalFieldOfView  
      cameraTransform      
      nearClip             
      farClip              
      pickRay              

  public static com.sun.javafx.geom.PickRay computeParallelPickRay(double, double, double, com.sun.javafx.geom.transform.Affine3D, double, double, com.sun.javafx.geom.PickRay);
    descriptor: (DDDLcom/sun/javafx/geom/transform/Affine3D;DDLcom/sun/javafx/geom/PickRay;)Lcom/sun/javafx/geom/PickRay;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=13, locals=14, args_size=7
        start local 0 // double x
        start local 2 // double y
        start local 4 // double viewHeight
        start local 6 // com.sun.javafx.geom.transform.Affine3D cameraTransform
        start local 7 // double nearClip
        start local 9 // double farClip
        start local 11 // com.sun.javafx.geom.PickRay pickRay
         0: .line 101
            aload 11 /* pickRay */
            ifnonnull 2
         1: .line 102
            new com.sun.javafx.geom.PickRay
            dup
            invokespecial com.sun.javafx.geom.PickRay.<init>:()V
            astore 11 /* pickRay */
         2: .line 107
      StackMap locals:
      StackMap stack:
            dload 4 /* viewHeight */
            ldc 2.0
            ddiv
         3: .line 108
            ldc 15.0
            invokestatic java.lang.Math.toRadians:(D)D
            invokestatic java.lang.Math.tan:(D)D
         4: .line 107
            ddiv
            dstore 12 /* distanceZ */
        start local 12 // double distanceZ
         5: .line 110
            aload 11 /* pickRay */
            dload 0 /* x */
            dload 2 /* y */
            dload 12 /* distanceZ */
            dload 7 /* nearClip */
            dload 12 /* distanceZ */
            dmul
            dload 9 /* farClip */
            dload 12 /* distanceZ */
            dmul
            invokevirtual com.sun.javafx.geom.PickRay.set:(DDDDD)V
         6: .line 112
            aload 6 /* cameraTransform */
            ifnull 8
         7: .line 113
            aload 11 /* pickRay */
            aload 6 /* cameraTransform */
            invokevirtual com.sun.javafx.geom.PickRay.transform:(Lcom/sun/javafx/geom/transform/BaseTransform;)V
         8: .line 116
      StackMap locals: double
      StackMap stack:
            aload 11 /* pickRay */
            areturn
        end local 12 // double distanceZ
        end local 11 // com.sun.javafx.geom.PickRay pickRay
        end local 9 // double farClip
        end local 7 // double nearClip
        end local 6 // com.sun.javafx.geom.transform.Affine3D cameraTransform
        end local 4 // double viewHeight
        end local 2 // double y
        end local 0 // double x
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    9     0                x  D
            0    9     2                y  D
            0    9     4       viewHeight  D
            0    9     6  cameraTransform  Lcom/sun/javafx/geom/transform/Affine3D;
            0    9     7         nearClip  D
            0    9     9          farClip  D
            0    9    11          pickRay  Lcom/sun/javafx/geom/PickRay;
            5    9    12        distanceZ  D
    MethodParameters:
                 Name  Flags
      x                
      y                
      viewHeight       
      cameraTransform  
      nearClip         
      farClip          
      pickRay          

  public final void set(com.sun.javafx.geom.Vec3d, com.sun.javafx.geom.Vec3d, double, double);
    descriptor: (Lcom/sun/javafx/geom/Vec3d;Lcom/sun/javafx/geom/Vec3d;DD)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=3, locals=7, args_size=5
        start local 0 // com.sun.javafx.geom.PickRay this
        start local 1 // com.sun.javafx.geom.Vec3d origin
        start local 2 // com.sun.javafx.geom.Vec3d direction
        start local 3 // double nearClip
        start local 5 // double farClip
         0: .line 120
            aload 0 /* this */
            aload 1 /* origin */
            invokevirtual com.sun.javafx.geom.PickRay.setOrigin:(Lcom/sun/javafx/geom/Vec3d;)V
         1: .line 121
            aload 0 /* this */
            aload 2 /* direction */
            invokevirtual com.sun.javafx.geom.PickRay.setDirection:(Lcom/sun/javafx/geom/Vec3d;)V
         2: .line 122
            aload 0 /* this */
            dload 3 /* nearClip */
            putfield com.sun.javafx.geom.PickRay.nearClip:D
         3: .line 123
            aload 0 /* this */
            dload 5 /* farClip */
            putfield com.sun.javafx.geom.PickRay.farClip:D
         4: .line 124
            return
        end local 5 // double farClip
        end local 3 // double nearClip
        end local 2 // com.sun.javafx.geom.Vec3d direction
        end local 1 // com.sun.javafx.geom.Vec3d origin
        end local 0 // com.sun.javafx.geom.PickRay this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    5     0       this  Lcom/sun/javafx/geom/PickRay;
            0    5     1     origin  Lcom/sun/javafx/geom/Vec3d;
            0    5     2  direction  Lcom/sun/javafx/geom/Vec3d;
            0    5     3   nearClip  D
            0    5     5    farClip  D
    MethodParameters:
           Name  Flags
      origin     
      direction  
      nearClip   
      farClip    

  public final void set(double, double, double, double, double);
    descriptor: (DDDDD)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=7, locals=11, args_size=6
        start local 0 // com.sun.javafx.geom.PickRay this
        start local 1 // double x
        start local 3 // double y
        start local 5 // double z
        start local 7 // double nearClip
        start local 9 // double farClip
         0: .line 127
            aload 0 /* this */
            dload 1 /* x */
            dload 3 /* y */
            dload 5 /* z */
            dneg
            invokevirtual com.sun.javafx.geom.PickRay.setOrigin:(DDD)V
         1: .line 128
            aload 0 /* this */
            dconst_0
            dconst_0
            dload 5 /* z */
            invokevirtual com.sun.javafx.geom.PickRay.setDirection:(DDD)V
         2: .line 129
            aload 0 /* this */
            dload 7 /* nearClip */
            putfield com.sun.javafx.geom.PickRay.nearClip:D
         3: .line 130
            aload 0 /* this */
            dload 9 /* farClip */
            putfield com.sun.javafx.geom.PickRay.farClip:D
         4: .line 131
            return
        end local 9 // double farClip
        end local 7 // double nearClip
        end local 5 // double z
        end local 3 // double y
        end local 1 // double x
        end local 0 // com.sun.javafx.geom.PickRay this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0      this  Lcom/sun/javafx/geom/PickRay;
            0    5     1         x  D
            0    5     3         y  D
            0    5     5         z  D
            0    5     7  nearClip  D
            0    5     9   farClip  D
    MethodParameters:
          Name  Flags
      x         
      y         
      z         
      nearClip  
      farClip   

  public void setPickRay(com.sun.javafx.geom.PickRay);
    descriptor: (Lcom/sun/javafx/geom/PickRay;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.sun.javafx.geom.PickRay this
        start local 1 // com.sun.javafx.geom.PickRay other
         0: .line 135
            aload 0 /* this */
            aload 1 /* other */
            getfield com.sun.javafx.geom.PickRay.origin:Lcom/sun/javafx/geom/Vec3d;
            invokevirtual com.sun.javafx.geom.PickRay.setOrigin:(Lcom/sun/javafx/geom/Vec3d;)V
         1: .line 136
            aload 0 /* this */
            aload 1 /* other */
            getfield com.sun.javafx.geom.PickRay.direction:Lcom/sun/javafx/geom/Vec3d;
            invokevirtual com.sun.javafx.geom.PickRay.setDirection:(Lcom/sun/javafx/geom/Vec3d;)V
         2: .line 137
            aload 0 /* this */
            aload 1 /* other */
            getfield com.sun.javafx.geom.PickRay.nearClip:D
            putfield com.sun.javafx.geom.PickRay.nearClip:D
         3: .line 138
            aload 0 /* this */
            aload 1 /* other */
            getfield com.sun.javafx.geom.PickRay.farClip:D
            putfield com.sun.javafx.geom.PickRay.farClip:D
         4: .line 139
            return
        end local 1 // com.sun.javafx.geom.PickRay other
        end local 0 // com.sun.javafx.geom.PickRay this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0   this  Lcom/sun/javafx/geom/PickRay;
            0    5     1  other  Lcom/sun/javafx/geom/PickRay;
    MethodParameters:
       Name  Flags
      other  

  public com.sun.javafx.geom.PickRay copy();
    descriptor: ()Lcom/sun/javafx/geom/PickRay;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=1, args_size=1
        start local 0 // com.sun.javafx.geom.PickRay this
         0: .line 142
            new com.sun.javafx.geom.PickRay
            dup
            aload 0 /* this */
            getfield com.sun.javafx.geom.PickRay.origin:Lcom/sun/javafx/geom/Vec3d;
            aload 0 /* this */
            getfield com.sun.javafx.geom.PickRay.direction:Lcom/sun/javafx/geom/Vec3d;
            aload 0 /* this */
            getfield com.sun.javafx.geom.PickRay.nearClip:D
            aload 0 /* this */
            getfield com.sun.javafx.geom.PickRay.farClip:D
            invokespecial com.sun.javafx.geom.PickRay.<init>:(Lcom/sun/javafx/geom/Vec3d;Lcom/sun/javafx/geom/Vec3d;DD)V
            areturn
        end local 0 // com.sun.javafx.geom.PickRay this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/javafx/geom/PickRay;

  public void setOrigin(com.sun.javafx.geom.Vec3d);
    descriptor: (Lcom/sun/javafx/geom/Vec3d;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.javafx.geom.PickRay this
        start local 1 // com.sun.javafx.geom.Vec3d origin
         0: .line 151
            aload 0 /* this */
            getfield com.sun.javafx.geom.PickRay.origin:Lcom/sun/javafx/geom/Vec3d;
            aload 1 /* origin */
            invokevirtual com.sun.javafx.geom.Vec3d.set:(Lcom/sun/javafx/geom/Vec3d;)V
         1: .line 152
            return
        end local 1 // com.sun.javafx.geom.Vec3d origin
        end local 0 // com.sun.javafx.geom.PickRay this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lcom/sun/javafx/geom/PickRay;
            0    2     1  origin  Lcom/sun/javafx/geom/Vec3d;
    MethodParameters:
        Name  Flags
      origin  

  public void setOrigin(double, double, double);
    descriptor: (DDD)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=7, args_size=4
        start local 0 // com.sun.javafx.geom.PickRay this
        start local 1 // double x
        start local 3 // double y
        start local 5 // double z
         0: .line 162
            aload 0 /* this */
            getfield com.sun.javafx.geom.PickRay.origin:Lcom/sun/javafx/geom/Vec3d;
            dload 1 /* x */
            dload 3 /* y */
            dload 5 /* z */
            invokevirtual com.sun.javafx.geom.Vec3d.set:(DDD)V
         1: .line 163
            return
        end local 5 // double z
        end local 3 // double y
        end local 1 // double x
        end local 0 // com.sun.javafx.geom.PickRay this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/javafx/geom/PickRay;
            0    2     1     x  D
            0    2     3     y  D
            0    2     5     z  D
    MethodParameters:
      Name  Flags
      x     
      y     
      z     

  public com.sun.javafx.geom.Vec3d getOrigin(com.sun.javafx.geom.Vec3d);
    descriptor: (Lcom/sun/javafx/geom/Vec3d;)Lcom/sun/javafx/geom/Vec3d;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.javafx.geom.PickRay this
        start local 1 // com.sun.javafx.geom.Vec3d rv
         0: .line 166
            aload 1 /* rv */
            ifnonnull 2
         1: .line 167
            new com.sun.javafx.geom.Vec3d
            dup
            invokespecial com.sun.javafx.geom.Vec3d.<init>:()V
            astore 1 /* rv */
         2: .line 169
      StackMap locals:
      StackMap stack:
            aload 1 /* rv */
            aload 0 /* this */
            getfield com.sun.javafx.geom.PickRay.origin:Lcom/sun/javafx/geom/Vec3d;
            invokevirtual com.sun.javafx.geom.Vec3d.set:(Lcom/sun/javafx/geom/Vec3d;)V
         3: .line 170
            aload 1 /* rv */
            areturn
        end local 1 // com.sun.javafx.geom.Vec3d rv
        end local 0 // com.sun.javafx.geom.PickRay this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/sun/javafx/geom/PickRay;
            0    4     1    rv  Lcom/sun/javafx/geom/Vec3d;
    MethodParameters:
      Name  Flags
      rv    

  public com.sun.javafx.geom.Vec3d getOriginNoClone();
    descriptor: ()Lcom/sun/javafx/geom/Vec3d;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.javafx.geom.PickRay this
         0: .line 174
            aload 0 /* this */
            getfield com.sun.javafx.geom.PickRay.origin:Lcom/sun/javafx/geom/Vec3d;
            areturn
        end local 0 // com.sun.javafx.geom.PickRay this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/javafx/geom/PickRay;

  public void setDirection(com.sun.javafx.geom.Vec3d);
    descriptor: (Lcom/sun/javafx/geom/Vec3d;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.javafx.geom.PickRay this
        start local 1 // com.sun.javafx.geom.Vec3d direction
         0: .line 184
            aload 0 /* this */
            getfield com.sun.javafx.geom.PickRay.direction:Lcom/sun/javafx/geom/Vec3d;
            aload 1 /* direction */
            invokevirtual com.sun.javafx.geom.Vec3d.set:(Lcom/sun/javafx/geom/Vec3d;)V
         1: .line 185
            return
        end local 1 // com.sun.javafx.geom.Vec3d direction
        end local 0 // com.sun.javafx.geom.PickRay this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lcom/sun/javafx/geom/PickRay;
            0    2     1  direction  Lcom/sun/javafx/geom/Vec3d;
    MethodParameters:
           Name  Flags
      direction  

  public void setDirection(double, double, double);
    descriptor: (DDD)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=7, args_size=4
        start local 0 // com.sun.javafx.geom.PickRay this
        start local 1 // double x
        start local 3 // double y
        start local 5 // double z
         0: .line 195
            aload 0 /* this */
            getfield com.sun.javafx.geom.PickRay.direction:Lcom/sun/javafx/geom/Vec3d;
            dload 1 /* x */
            dload 3 /* y */
            dload 5 /* z */
            invokevirtual com.sun.javafx.geom.Vec3d.set:(DDD)V
         1: .line 196
            return
        end local 5 // double z
        end local 3 // double y
        end local 1 // double x
        end local 0 // com.sun.javafx.geom.PickRay this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/javafx/geom/PickRay;
            0    2     1     x  D
            0    2     3     y  D
            0    2     5     z  D
    MethodParameters:
      Name  Flags
      x     
      y     
      z     

  public com.sun.javafx.geom.Vec3d getDirection(com.sun.javafx.geom.Vec3d);
    descriptor: (Lcom/sun/javafx/geom/Vec3d;)Lcom/sun/javafx/geom/Vec3d;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.javafx.geom.PickRay this
        start local 1 // com.sun.javafx.geom.Vec3d rv
         0: .line 199
            aload 1 /* rv */
            ifnonnull 2
         1: .line 200
            new com.sun.javafx.geom.Vec3d
            dup
            invokespecial com.sun.javafx.geom.Vec3d.<init>:()V
            astore 1 /* rv */
         2: .line 202
      StackMap locals:
      StackMap stack:
            aload 1 /* rv */
            aload 0 /* this */
            getfield com.sun.javafx.geom.PickRay.direction:Lcom/sun/javafx/geom/Vec3d;
            invokevirtual com.sun.javafx.geom.Vec3d.set:(Lcom/sun/javafx/geom/Vec3d;)V
         3: .line 203
            aload 1 /* rv */
            areturn
        end local 1 // com.sun.javafx.geom.Vec3d rv
        end local 0 // com.sun.javafx.geom.PickRay this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/sun/javafx/geom/PickRay;
            0    4     1    rv  Lcom/sun/javafx/geom/Vec3d;
    MethodParameters:
      Name  Flags
      rv    

  public com.sun.javafx.geom.Vec3d getDirectionNoClone();
    descriptor: ()Lcom/sun/javafx/geom/Vec3d;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.javafx.geom.PickRay this
         0: .line 207
            aload 0 /* this */
            getfield com.sun.javafx.geom.PickRay.direction:Lcom/sun/javafx/geom/Vec3d;
            areturn
        end local 0 // com.sun.javafx.geom.PickRay this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/javafx/geom/PickRay;

  public double getNearClip();
    descriptor: ()D
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.javafx.geom.PickRay this
         0: .line 211
            aload 0 /* this */
            getfield com.sun.javafx.geom.PickRay.nearClip:D
            dreturn
        end local 0 // com.sun.javafx.geom.PickRay this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/javafx/geom/PickRay;

  public double getFarClip();
    descriptor: ()D
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.javafx.geom.PickRay this
         0: .line 215
            aload 0 /* this */
            getfield com.sun.javafx.geom.PickRay.farClip:D
            dreturn
        end local 0 // com.sun.javafx.geom.PickRay this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/javafx/geom/PickRay;

  public double distance(com.sun.javafx.geom.Vec3d);
    descriptor: (Lcom/sun/javafx/geom/Vec3d;)D
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=8, args_size=2
        start local 0 // com.sun.javafx.geom.PickRay this
        start local 1 // com.sun.javafx.geom.Vec3d iPnt
         0: .line 219
            aload 1 /* iPnt */
            getfield com.sun.javafx.geom.Vec3d.x:D
            aload 0 /* this */
            getfield com.sun.javafx.geom.PickRay.origin:Lcom/sun/javafx/geom/Vec3d;
            getfield com.sun.javafx.geom.Vec3d.x:D
            dsub
            dstore 2 /* x */
        start local 2 // double x
         1: .line 220
            aload 1 /* iPnt */
            getfield com.sun.javafx.geom.Vec3d.y:D
            aload 0 /* this */
            getfield com.sun.javafx.geom.PickRay.origin:Lcom/sun/javafx/geom/Vec3d;
            getfield com.sun.javafx.geom.Vec3d.y:D
            dsub
            dstore 4 /* y */
        start local 4 // double y
         2: .line 221
            aload 1 /* iPnt */
            getfield com.sun.javafx.geom.Vec3d.z:D
            aload 0 /* this */
            getfield com.sun.javafx.geom.PickRay.origin:Lcom/sun/javafx/geom/Vec3d;
            getfield com.sun.javafx.geom.Vec3d.z:D
            dsub
            dstore 6 /* z */
        start local 6 // double z
         3: .line 222
            dload 2 /* x */
            dload 2 /* x */
            dmul
            dload 4 /* y */
            dload 4 /* y */
            dmul
            dadd
            dload 6 /* z */
            dload 6 /* z */
            dmul
            dadd
            invokestatic java.lang.Math.sqrt:(D)D
            dreturn
        end local 6 // double z
        end local 4 // double y
        end local 2 // double x
        end local 1 // com.sun.javafx.geom.Vec3d iPnt
        end local 0 // com.sun.javafx.geom.PickRay this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/sun/javafx/geom/PickRay;
            0    4     1  iPnt  Lcom/sun/javafx/geom/Vec3d;
            1    4     2     x  D
            2    4     4     y  D
            3    4     6     z  D
    MethodParameters:
      Name  Flags
      iPnt  

  public com.sun.javafx.geom.Point2D projectToZeroPlane(com.sun.javafx.geom.transform.BaseTransform, boolean, com.sun.javafx.geom.Vec3d, com.sun.javafx.geom.Point2D);
    descriptor: (Lcom/sun/javafx/geom/transform/BaseTransform;ZLcom/sun/javafx/geom/Vec3d;Lcom/sun/javafx/geom/Point2D;)Lcom/sun/javafx/geom/Point2D;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=19, args_size=5
        start local 0 // com.sun.javafx.geom.PickRay this
        start local 1 // com.sun.javafx.geom.transform.BaseTransform inversetx
        start local 2 // boolean perspective
        start local 3 // com.sun.javafx.geom.Vec3d tmpvec
        start local 4 // com.sun.javafx.geom.Point2D ret
         0: .line 246
            aload 3 /* tmpvec */
            ifnonnull 2
         1: .line 247
            new com.sun.javafx.geom.Vec3d
            dup
            invokespecial com.sun.javafx.geom.Vec3d.<init>:()V
            astore 3 /* tmpvec */
         2: .line 249
      StackMap locals:
      StackMap stack:
            aload 1 /* inversetx */
            aload 0 /* this */
            getfield com.sun.javafx.geom.PickRay.origin:Lcom/sun/javafx/geom/Vec3d;
            aload 3 /* tmpvec */
            invokevirtual com.sun.javafx.geom.transform.BaseTransform.transform:(Lcom/sun/javafx/geom/Vec3d;Lcom/sun/javafx/geom/Vec3d;)Lcom/sun/javafx/geom/Vec3d;
            pop
         3: .line 250
            aload 3 /* tmpvec */
            getfield com.sun.javafx.geom.Vec3d.x:D
            dstore 5 /* origX */
        start local 5 // double origX
         4: .line 251
            aload 3 /* tmpvec */
            getfield com.sun.javafx.geom.Vec3d.y:D
            dstore 7 /* origY */
        start local 7 // double origY
         5: .line 252
            aload 3 /* tmpvec */
            getfield com.sun.javafx.geom.Vec3d.z:D
            dstore 9 /* origZ */
        start local 9 // double origZ
         6: .line 253
            aload 3 /* tmpvec */
            aload 0 /* this */
            getfield com.sun.javafx.geom.PickRay.origin:Lcom/sun/javafx/geom/Vec3d;
            aload 0 /* this */
            getfield com.sun.javafx.geom.PickRay.direction:Lcom/sun/javafx/geom/Vec3d;
            invokevirtual com.sun.javafx.geom.Vec3d.add:(Lcom/sun/javafx/geom/Vec3d;Lcom/sun/javafx/geom/Vec3d;)V
         7: .line 254
            aload 1 /* inversetx */
            aload 3 /* tmpvec */
            aload 3 /* tmpvec */
            invokevirtual com.sun.javafx.geom.transform.BaseTransform.transform:(Lcom/sun/javafx/geom/Vec3d;Lcom/sun/javafx/geom/Vec3d;)Lcom/sun/javafx/geom/Vec3d;
            pop
         8: .line 255
            aload 3 /* tmpvec */
            getfield com.sun.javafx.geom.Vec3d.x:D
            dload 5 /* origX */
            dsub
            dstore 11 /* dirX */
        start local 11 // double dirX
         9: .line 256
            aload 3 /* tmpvec */
            getfield com.sun.javafx.geom.Vec3d.y:D
            dload 7 /* origY */
            dsub
            dstore 13 /* dirY */
        start local 13 // double dirY
        10: .line 257
            aload 3 /* tmpvec */
            getfield com.sun.javafx.geom.Vec3d.z:D
            dload 9 /* origZ */
            dsub
            dstore 15 /* dirZ */
        start local 15 // double dirZ
        11: .line 259
            dload 15 /* dirZ */
            invokestatic com.sun.javafx.geom.PickRay.almostZero:(D)Z
            ifeq 13
        12: .line 260
            aconst_null
            areturn
        13: .line 262
      StackMap locals: com.sun.javafx.geom.PickRay com.sun.javafx.geom.transform.BaseTransform int com.sun.javafx.geom.Vec3d com.sun.javafx.geom.Point2D double double double double double double
      StackMap stack:
            dload 9 /* origZ */
            dneg
            dload 15 /* dirZ */
            ddiv
            dstore 17 /* t */
        start local 17 // double t
        14: .line 263
            iload 2 /* perspective */
            ifeq 16
            dload 17 /* t */
            dconst_0
            dcmpg
            ifge 16
        15: .line 265
            aconst_null
            areturn
        16: .line 267
      StackMap locals: double
      StackMap stack:
            aload 4 /* ret */
            ifnonnull 18
        17: .line 268
            new com.sun.javafx.geom.Point2D
            dup
            invokespecial com.sun.javafx.geom.Point2D.<init>:()V
            astore 4 /* ret */
        18: .line 270
      StackMap locals:
      StackMap stack:
            aload 4 /* ret */
            dload 5 /* origX */
            dload 11 /* dirX */
            dload 17 /* t */
            dmul
            dadd
            d2f
        19: .line 271
            dload 7 /* origY */
            dload 13 /* dirY */
            dload 17 /* t */
            dmul
            dadd
            d2f
        20: .line 270
            invokevirtual com.sun.javafx.geom.Point2D.setLocation:(FF)V
        21: .line 272
            aload 4 /* ret */
            areturn
        end local 17 // double t
        end local 15 // double dirZ
        end local 13 // double dirY
        end local 11 // double dirX
        end local 9 // double origZ
        end local 7 // double origY
        end local 5 // double origX
        end local 4 // com.sun.javafx.geom.Point2D ret
        end local 3 // com.sun.javafx.geom.Vec3d tmpvec
        end local 2 // boolean perspective
        end local 1 // com.sun.javafx.geom.transform.BaseTransform inversetx
        end local 0 // com.sun.javafx.geom.PickRay this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   22     0         this  Lcom/sun/javafx/geom/PickRay;
            0   22     1    inversetx  Lcom/sun/javafx/geom/transform/BaseTransform;
            0   22     2  perspective  Z
            0   22     3       tmpvec  Lcom/sun/javafx/geom/Vec3d;
            0   22     4          ret  Lcom/sun/javafx/geom/Point2D;
            4   22     5        origX  D
            5   22     7        origY  D
            6   22     9        origZ  D
            9   22    11         dirX  D
           10   22    13         dirY  D
           11   22    15         dirZ  D
           14   22    17            t  D
    MethodParameters:
             Name  Flags
      inversetx    
      perspective  
      tmpvec       
      ret          

  static boolean almostZero(double);
    descriptor: (D)Z
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // double a
         0: .line 281
            dload 0 /* a */
            ldc 1.0E-5
            dcmpg
            ifge 1
            dload 0 /* a */
            ldc -1.0E-5
            dcmpl
            ifle 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // double a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0     a  D
    MethodParameters:
      Name  Flags
      a     

  private static boolean isNonZero(double);
    descriptor: (D)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // double v
         0: .line 285
            dload 0 /* v */
            ldc 9.999999747378752E-6
            dcmpl
            ifgt 1
            dload 0 /* v */
            ldc -9.999999747378752E-6
            dcmpg
            iflt 1
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_1
            ireturn
        end local 0 // double v
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0     v  D
    MethodParameters:
      Name  Flags
      v     

  public void transform(com.sun.javafx.geom.transform.BaseTransform);
    descriptor: (Lcom/sun/javafx/geom/transform/BaseTransform;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.sun.javafx.geom.PickRay this
        start local 1 // com.sun.javafx.geom.transform.BaseTransform t
         0: .line 290
            aload 1 /* t */
            aload 0 /* this */
            getfield com.sun.javafx.geom.PickRay.origin:Lcom/sun/javafx/geom/Vec3d;
            aload 0 /* this */
            getfield com.sun.javafx.geom.PickRay.origin:Lcom/sun/javafx/geom/Vec3d;
            invokevirtual com.sun.javafx.geom.transform.BaseTransform.transform:(Lcom/sun/javafx/geom/Vec3d;Lcom/sun/javafx/geom/Vec3d;)Lcom/sun/javafx/geom/Vec3d;
            pop
         1: .line 291
            aload 1 /* t */
            aload 0 /* this */
            getfield com.sun.javafx.geom.PickRay.direction:Lcom/sun/javafx/geom/Vec3d;
            aload 0 /* this */
            getfield com.sun.javafx.geom.PickRay.direction:Lcom/sun/javafx/geom/Vec3d;
            invokevirtual com.sun.javafx.geom.transform.BaseTransform.deltaTransform:(Lcom/sun/javafx/geom/Vec3d;Lcom/sun/javafx/geom/Vec3d;)Lcom/sun/javafx/geom/Vec3d;
            pop
         2: .line 292
            return
        end local 1 // com.sun.javafx.geom.transform.BaseTransform t
        end local 0 // com.sun.javafx.geom.PickRay this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/javafx/geom/PickRay;
            0    3     1     t  Lcom/sun/javafx/geom/transform/BaseTransform;
    MethodParameters:
      Name  Flags
      t     

  public void inverseTransform(com.sun.javafx.geom.transform.BaseTransform);
    descriptor: (Lcom/sun/javafx/geom/transform/BaseTransform;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.sun.javafx.geom.PickRay this
        start local 1 // com.sun.javafx.geom.transform.BaseTransform t
         0: .line 296
            aload 1 /* t */
            aload 0 /* this */
            getfield com.sun.javafx.geom.PickRay.origin:Lcom/sun/javafx/geom/Vec3d;
            aload 0 /* this */
            getfield com.sun.javafx.geom.PickRay.origin:Lcom/sun/javafx/geom/Vec3d;
            invokevirtual com.sun.javafx.geom.transform.BaseTransform.inverseTransform:(Lcom/sun/javafx/geom/Vec3d;Lcom/sun/javafx/geom/Vec3d;)Lcom/sun/javafx/geom/Vec3d;
            pop
         1: .line 297
            aload 1 /* t */
            aload 0 /* this */
            getfield com.sun.javafx.geom.PickRay.direction:Lcom/sun/javafx/geom/Vec3d;
            aload 0 /* this */
            getfield com.sun.javafx.geom.PickRay.direction:Lcom/sun/javafx/geom/Vec3d;
            invokevirtual com.sun.javafx.geom.transform.BaseTransform.inverseDeltaTransform:(Lcom/sun/javafx/geom/Vec3d;Lcom/sun/javafx/geom/Vec3d;)Lcom/sun/javafx/geom/Vec3d;
            pop
         2: .line 298
            return
        end local 1 // com.sun.javafx.geom.transform.BaseTransform t
        end local 0 // com.sun.javafx.geom.PickRay this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/javafx/geom/PickRay;
            0    3     1     t  Lcom/sun/javafx/geom/transform/BaseTransform;
    Exceptions:
      throws com.sun.javafx.geom.transform.NoninvertibleTransformException
    MethodParameters:
      Name  Flags
      t     

  public com.sun.javafx.geom.PickRay project(com.sun.javafx.geom.transform.BaseTransform, boolean, com.sun.javafx.geom.Vec3d, com.sun.javafx.geom.Point2D);
    descriptor: (Lcom/sun/javafx/geom/transform/BaseTransform;ZLcom/sun/javafx/geom/Vec3d;Lcom/sun/javafx/geom/Point2D;)Lcom/sun/javafx/geom/PickRay;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=18, args_size=5
        start local 0 // com.sun.javafx.geom.PickRay this
        start local 1 // com.sun.javafx.geom.transform.BaseTransform inversetx
        start local 2 // boolean perspective
        start local 3 // com.sun.javafx.geom.Vec3d tmpvec
        start local 4 // com.sun.javafx.geom.Point2D ret
         0: .line 304
            aload 3 /* tmpvec */
            ifnonnull 2
         1: .line 305
            new com.sun.javafx.geom.Vec3d
            dup
            invokespecial com.sun.javafx.geom.Vec3d.<init>:()V
            astore 3 /* tmpvec */
         2: .line 307
      StackMap locals:
      StackMap stack:
            aload 1 /* inversetx */
            aload 0 /* this */
            getfield com.sun.javafx.geom.PickRay.origin:Lcom/sun/javafx/geom/Vec3d;
            aload 3 /* tmpvec */
            invokevirtual com.sun.javafx.geom.transform.BaseTransform.transform:(Lcom/sun/javafx/geom/Vec3d;Lcom/sun/javafx/geom/Vec3d;)Lcom/sun/javafx/geom/Vec3d;
            pop
         3: .line 308
            aload 3 /* tmpvec */
            getfield com.sun.javafx.geom.Vec3d.x:D
            dstore 5 /* origX */
        start local 5 // double origX
         4: .line 309
            aload 3 /* tmpvec */
            getfield com.sun.javafx.geom.Vec3d.y:D
            dstore 7 /* origY */
        start local 7 // double origY
         5: .line 310
            aload 3 /* tmpvec */
            getfield com.sun.javafx.geom.Vec3d.z:D
            dstore 9 /* origZ */
        start local 9 // double origZ
         6: .line 311
            aload 3 /* tmpvec */
            aload 0 /* this */
            getfield com.sun.javafx.geom.PickRay.origin:Lcom/sun/javafx/geom/Vec3d;
            aload 0 /* this */
            getfield com.sun.javafx.geom.PickRay.direction:Lcom/sun/javafx/geom/Vec3d;
            invokevirtual com.sun.javafx.geom.Vec3d.add:(Lcom/sun/javafx/geom/Vec3d;Lcom/sun/javafx/geom/Vec3d;)V
         7: .line 312
            aload 1 /* inversetx */
            aload 3 /* tmpvec */
            aload 3 /* tmpvec */
            invokevirtual com.sun.javafx.geom.transform.BaseTransform.transform:(Lcom/sun/javafx/geom/Vec3d;Lcom/sun/javafx/geom/Vec3d;)Lcom/sun/javafx/geom/Vec3d;
            pop
         8: .line 313
            aload 3 /* tmpvec */
            getfield com.sun.javafx.geom.Vec3d.x:D
            dload 5 /* origX */
            dsub
            dstore 11 /* dirX */
        start local 11 // double dirX
         9: .line 314
            aload 3 /* tmpvec */
            getfield com.sun.javafx.geom.Vec3d.y:D
            dload 7 /* origY */
            dsub
            dstore 13 /* dirY */
        start local 13 // double dirY
        10: .line 315
            aload 3 /* tmpvec */
            getfield com.sun.javafx.geom.Vec3d.z:D
            dload 9 /* origZ */
            dsub
            dstore 15 /* dirZ */
        start local 15 // double dirZ
        11: .line 317
            new com.sun.javafx.geom.PickRay
            dup
            invokespecial com.sun.javafx.geom.PickRay.<init>:()V
            astore 17 /* pr */
        start local 17 // com.sun.javafx.geom.PickRay pr
        12: .line 318
            aload 17 /* pr */
            getfield com.sun.javafx.geom.PickRay.origin:Lcom/sun/javafx/geom/Vec3d;
            dload 5 /* origX */
            putfield com.sun.javafx.geom.Vec3d.x:D
        13: .line 319
            aload 17 /* pr */
            getfield com.sun.javafx.geom.PickRay.origin:Lcom/sun/javafx/geom/Vec3d;
            dload 7 /* origY */
            putfield com.sun.javafx.geom.Vec3d.y:D
        14: .line 320
            aload 17 /* pr */
            getfield com.sun.javafx.geom.PickRay.origin:Lcom/sun/javafx/geom/Vec3d;
            dload 9 /* origZ */
            putfield com.sun.javafx.geom.Vec3d.z:D
        15: .line 322
            aload 17 /* pr */
            getfield com.sun.javafx.geom.PickRay.direction:Lcom/sun/javafx/geom/Vec3d;
            dload 11 /* dirX */
            putfield com.sun.javafx.geom.Vec3d.x:D
        16: .line 323
            aload 17 /* pr */
            getfield com.sun.javafx.geom.PickRay.direction:Lcom/sun/javafx/geom/Vec3d;
            dload 13 /* dirY */
            putfield com.sun.javafx.geom.Vec3d.y:D
        17: .line 324
            aload 17 /* pr */
            getfield com.sun.javafx.geom.PickRay.direction:Lcom/sun/javafx/geom/Vec3d;
            dload 15 /* dirZ */
            putfield com.sun.javafx.geom.Vec3d.z:D
        18: .line 326
            aload 17 /* pr */
            areturn
        end local 17 // com.sun.javafx.geom.PickRay pr
        end local 15 // double dirZ
        end local 13 // double dirY
        end local 11 // double dirX
        end local 9 // double origZ
        end local 7 // double origY
        end local 5 // double origX
        end local 4 // com.sun.javafx.geom.Point2D ret
        end local 3 // com.sun.javafx.geom.Vec3d tmpvec
        end local 2 // boolean perspective
        end local 1 // com.sun.javafx.geom.transform.BaseTransform inversetx
        end local 0 // com.sun.javafx.geom.PickRay this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   19     0         this  Lcom/sun/javafx/geom/PickRay;
            0   19     1    inversetx  Lcom/sun/javafx/geom/transform/BaseTransform;
            0   19     2  perspective  Z
            0   19     3       tmpvec  Lcom/sun/javafx/geom/Vec3d;
            0   19     4          ret  Lcom/sun/javafx/geom/Point2D;
            4   19     5        origX  D
            5   19     7        origY  D
            6   19     9        origZ  D
            9   19    11         dirX  D
           10   19    13         dirY  D
           11   19    15         dirZ  D
           12   19    17           pr  Lcom/sun/javafx/geom/PickRay;
    MethodParameters:
             Name  Flags
      inversetx    
      perspective  
      tmpvec       
      ret          

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.sun.javafx.geom.PickRay this
         0: .line 331
            new java.lang.StringBuilder
            dup
            ldc "origin: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield com.sun.javafx.geom.PickRay.origin:Lcom/sun/javafx/geom/Vec3d;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc "  direction: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield com.sun.javafx.geom.PickRay.direction:Lcom/sun/javafx/geom/Vec3d;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 0 // com.sun.javafx.geom.PickRay this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/javafx/geom/PickRay;
}
SourceFile: "PickRay.java"