public class javafx.scene.shape.TriangleMesh extends javafx.scene.shape.Mesh
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: javafx.scene.shape.TriangleMesh
  super_class: javafx.scene.shape.Mesh
{
  private final javafx.collections.ObservableFloatArray points;
    descriptor: Ljavafx/collections/ObservableFloatArray;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final javafx.collections.ObservableFloatArray normals;
    descriptor: Ljavafx/collections/ObservableFloatArray;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final javafx.collections.ObservableFloatArray texCoords;
    descriptor: Ljavafx/collections/ObservableFloatArray;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final javafx.scene.shape.ObservableFaceArray faces;
    descriptor: Ljavafx/scene/shape/ObservableFaceArray;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final javafx.collections.ObservableIntegerArray faceSmoothingGroups;
    descriptor: Ljavafx/collections/ObservableIntegerArray;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final javafx.scene.shape.TriangleMesh$Listener pointsSyncer;
    descriptor: Ljavafx/scene/shape/TriangleMesh$Listener;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final javafx.scene.shape.TriangleMesh$Listener normalsSyncer;
    descriptor: Ljavafx/scene/shape/TriangleMesh$Listener;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final javafx.scene.shape.TriangleMesh$Listener texCoordsSyncer;
    descriptor: Ljavafx/scene/shape/TriangleMesh$Listener;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final javafx.scene.shape.TriangleMesh$Listener facesSyncer;
    descriptor: Ljavafx/scene/shape/TriangleMesh$Listener;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final javafx.scene.shape.TriangleMesh$Listener faceSmoothingGroupsSyncer;
    descriptor: Ljavafx/scene/shape/TriangleMesh$Listener;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final boolean isPredefinedShape;
    descriptor: Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private boolean isValidDirty;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean isPointsValid;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean isNormalsValid;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean isTexCoordsValid;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean isFacesValid;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean isFaceSmoothingGroupValid;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private int refCount;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

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

  private javafx.beans.property.ObjectProperty<javafx.scene.shape.VertexFormat> vertexFormat;
    descriptor: Ljavafx/beans/property/ObjectProperty;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljavafx/beans/property/ObjectProperty<Ljavafx/scene/shape/VertexFormat;>;

  private com.sun.javafx.sg.prism.NGTriangleMesh peer;
    descriptor: Lcom/sun/javafx/sg/prism/NGTriangleMesh;
    flags: (0x0002) ACC_PRIVATE

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 125
            new javafx.scene.shape.TriangleMesh$1
            dup
            invokespecial javafx.scene.shape.TriangleMesh$1.<init>:()V
            invokestatic com.sun.javafx.scene.shape.TriangleMeshHelper.setTriangleMeshAccessor:(Lcom/sun/javafx/scene/shape/TriangleMeshHelper$TriangleMeshAccessor;)V
         1: .line 134
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // javafx.scene.shape.TriangleMesh this
         0: .line 159
            aload 0 /* this */
            iconst_0
            invokespecial javafx.scene.shape.TriangleMesh.<init>:(Z)V
         1: .line 160
            aload 0 /* this */
            invokestatic com.sun.javafx.scene.shape.TriangleMeshHelper.initHelper:(Ljavafx/scene/shape/TriangleMesh;)V
         2: .line 161
            return
        end local 0 // javafx.scene.shape.TriangleMesh this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljavafx/scene/shape/TriangleMesh;

  public void <init>(javafx.scene.shape.VertexFormat);
    descriptor: (Ljavafx/scene/shape/VertexFormat;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javafx.scene.shape.TriangleMesh this
        start local 1 // javafx.scene.shape.VertexFormat vertexFormat
         0: .line 172
            aload 0 /* this */
            iconst_0
            invokespecial javafx.scene.shape.TriangleMesh.<init>:(Z)V
         1: .line 173
            aload 0 /* this */
            aload 1 /* vertexFormat */
            invokevirtual javafx.scene.shape.TriangleMesh.setVertexFormat:(Ljavafx/scene/shape/VertexFormat;)V
         2: .line 174
            aload 0 /* this */
            invokestatic com.sun.javafx.scene.shape.TriangleMeshHelper.initHelper:(Ljavafx/scene/shape/TriangleMesh;)V
         3: .line 175
            return
        end local 1 // javafx.scene.shape.VertexFormat vertexFormat
        end local 0 // javafx.scene.shape.TriangleMesh this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    4     0          this  Ljavafx/scene/shape/TriangleMesh;
            0    4     1  vertexFormat  Ljavafx/scene/shape/VertexFormat;
    MethodParameters:
              Name  Flags
      vertexFormat  

  void <init>(boolean);
    descriptor: (Z)V
    flags: (0x0000) 
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // javafx.scene.shape.TriangleMesh this
        start local 1 // boolean isPredefinedShape
         0: .line 177
            aload 0 /* this */
            invokespecial javafx.scene.shape.Mesh.<init>:()V
         1: .line 136
            aload 0 /* this */
            invokestatic javafx.collections.FXCollections.observableFloatArray:()Ljavafx/collections/ObservableFloatArray;
            putfield javafx.scene.shape.TriangleMesh.points:Ljavafx/collections/ObservableFloatArray;
         2: .line 137
            aload 0 /* this */
            invokestatic javafx.collections.FXCollections.observableFloatArray:()Ljavafx/collections/ObservableFloatArray;
            putfield javafx.scene.shape.TriangleMesh.normals:Ljavafx/collections/ObservableFloatArray;
         3: .line 138
            aload 0 /* this */
            invokestatic javafx.collections.FXCollections.observableFloatArray:()Ljavafx/collections/ObservableFloatArray;
            putfield javafx.scene.shape.TriangleMesh.texCoords:Ljavafx/collections/ObservableFloatArray;
         4: .line 139
            aload 0 /* this */
            new com.sun.javafx.scene.shape.ObservableFaceArrayImpl
            dup
            invokespecial com.sun.javafx.scene.shape.ObservableFaceArrayImpl.<init>:()V
            putfield javafx.scene.shape.TriangleMesh.faces:Ljavafx/scene/shape/ObservableFaceArray;
         5: .line 140
            aload 0 /* this */
            invokestatic javafx.collections.FXCollections.observableIntegerArray:()Ljavafx/collections/ObservableIntegerArray;
            putfield javafx.scene.shape.TriangleMesh.faceSmoothingGroups:Ljavafx/collections/ObservableIntegerArray;
         6: .line 142
            aload 0 /* this */
            new javafx.scene.shape.TriangleMesh$Listener
            dup
            aload 0 /* this */
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.points:Ljavafx/collections/ObservableFloatArray;
            invokespecial javafx.scene.shape.TriangleMesh$Listener.<init>:(Ljavafx/scene/shape/TriangleMesh;Ljavafx/collections/ObservableArray;)V
            putfield javafx.scene.shape.TriangleMesh.pointsSyncer:Ljavafx/scene/shape/TriangleMesh$Listener;
         7: .line 143
            aload 0 /* this */
            new javafx.scene.shape.TriangleMesh$Listener
            dup
            aload 0 /* this */
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.normals:Ljavafx/collections/ObservableFloatArray;
            invokespecial javafx.scene.shape.TriangleMesh$Listener.<init>:(Ljavafx/scene/shape/TriangleMesh;Ljavafx/collections/ObservableArray;)V
            putfield javafx.scene.shape.TriangleMesh.normalsSyncer:Ljavafx/scene/shape/TriangleMesh$Listener;
         8: .line 144
            aload 0 /* this */
            new javafx.scene.shape.TriangleMesh$Listener
            dup
            aload 0 /* this */
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.texCoords:Ljavafx/collections/ObservableFloatArray;
            invokespecial javafx.scene.shape.TriangleMesh$Listener.<init>:(Ljavafx/scene/shape/TriangleMesh;Ljavafx/collections/ObservableArray;)V
            putfield javafx.scene.shape.TriangleMesh.texCoordsSyncer:Ljavafx/scene/shape/TriangleMesh$Listener;
         9: .line 145
            aload 0 /* this */
            new javafx.scene.shape.TriangleMesh$Listener
            dup
            aload 0 /* this */
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.faces:Ljavafx/scene/shape/ObservableFaceArray;
            invokespecial javafx.scene.shape.TriangleMesh$Listener.<init>:(Ljavafx/scene/shape/TriangleMesh;Ljavafx/collections/ObservableArray;)V
            putfield javafx.scene.shape.TriangleMesh.facesSyncer:Ljavafx/scene/shape/TriangleMesh$Listener;
        10: .line 146
            aload 0 /* this */
            new javafx.scene.shape.TriangleMesh$Listener
            dup
            aload 0 /* this */
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.faceSmoothingGroups:Ljavafx/collections/ObservableIntegerArray;
            invokespecial javafx.scene.shape.TriangleMesh$Listener.<init>:(Ljavafx/scene/shape/TriangleMesh;Ljavafx/collections/ObservableArray;)V
            putfield javafx.scene.shape.TriangleMesh.faceSmoothingGroupsSyncer:Ljavafx/scene/shape/TriangleMesh$Listener;
        11: .line 148
            aload 0 /* this */
            iconst_1
            putfield javafx.scene.shape.TriangleMesh.isValidDirty:Z
        12: .line 150
            aload 0 /* this */
            iconst_1
            putfield javafx.scene.shape.TriangleMesh.refCount:I
        13: .line 178
            aload 0 /* this */
            iload 1 /* isPredefinedShape */
            putfield javafx.scene.shape.TriangleMesh.isPredefinedShape:Z
        14: .line 179
            iload 1 /* isPredefinedShape */
            ifeq 21
        15: .line 180
            aload 0 /* this */
            iconst_1
            putfield javafx.scene.shape.TriangleMesh.isPointsValid:Z
        16: .line 181
            aload 0 /* this */
            iconst_1
            putfield javafx.scene.shape.TriangleMesh.isNormalsValid:Z
        17: .line 182
            aload 0 /* this */
            iconst_1
            putfield javafx.scene.shape.TriangleMesh.isTexCoordsValid:Z
        18: .line 183
            aload 0 /* this */
            iconst_1
            putfield javafx.scene.shape.TriangleMesh.isFacesValid:Z
        19: .line 184
            aload 0 /* this */
            iconst_1
            putfield javafx.scene.shape.TriangleMesh.isFaceSmoothingGroupValid:Z
        20: .line 185
            goto 26
        21: .line 186
      StackMap locals: javafx.scene.shape.TriangleMesh int
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield javafx.scene.shape.TriangleMesh.isPointsValid:Z
        22: .line 187
            aload 0 /* this */
            iconst_0
            putfield javafx.scene.shape.TriangleMesh.isNormalsValid:Z
        23: .line 188
            aload 0 /* this */
            iconst_0
            putfield javafx.scene.shape.TriangleMesh.isTexCoordsValid:Z
        24: .line 189
            aload 0 /* this */
            iconst_0
            putfield javafx.scene.shape.TriangleMesh.isFacesValid:Z
        25: .line 190
            aload 0 /* this */
            iconst_0
            putfield javafx.scene.shape.TriangleMesh.isFaceSmoothingGroupValid:Z
        26: .line 192
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokestatic com.sun.javafx.scene.shape.TriangleMeshHelper.initHelper:(Ljavafx/scene/shape/TriangleMesh;)V
        27: .line 193
            return
        end local 1 // boolean isPredefinedShape
        end local 0 // javafx.scene.shape.TriangleMesh this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   28     0               this  Ljavafx/scene/shape/TriangleMesh;
            0   28     1  isPredefinedShape  Z
    MethodParameters:
                   Name  Flags
      isPredefinedShape  

  public final void setVertexFormat(javafx.scene.shape.VertexFormat);
    descriptor: (Ljavafx/scene/shape/VertexFormat;)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javafx.scene.shape.TriangleMesh this
        start local 1 // javafx.scene.shape.VertexFormat value
         0: .line 206
            aload 0 /* this */
            invokevirtual javafx.scene.shape.TriangleMesh.vertexFormatProperty:()Ljavafx/beans/property/ObjectProperty;
            aload 1 /* value */
            invokevirtual javafx.beans.property.ObjectProperty.set:(Ljava/lang/Object;)V
         1: .line 207
            return
        end local 1 // javafx.scene.shape.VertexFormat value
        end local 0 // javafx.scene.shape.TriangleMesh this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Ljavafx/scene/shape/TriangleMesh;
            0    2     1  value  Ljavafx/scene/shape/VertexFormat;
    MethodParameters:
       Name  Flags
      value  

  public final javafx.scene.shape.VertexFormat getVertexFormat();
    descriptor: ()Ljavafx/scene/shape/VertexFormat;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javafx.scene.shape.TriangleMesh this
         0: .line 210
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.vertexFormat:Ljavafx/beans/property/ObjectProperty;
            ifnonnull 1
            getstatic javafx.scene.shape.VertexFormat.POINT_TEXCOORD:Ljavafx/scene/shape/VertexFormat;
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.vertexFormat:Ljavafx/beans/property/ObjectProperty;
            invokevirtual javafx.beans.property.ObjectProperty.get:()Ljava/lang/Object;
            checkcast javafx.scene.shape.VertexFormat
      StackMap locals:
      StackMap stack: javafx.scene.shape.VertexFormat
         2: areturn
        end local 0 // javafx.scene.shape.TriangleMesh this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljavafx/scene/shape/TriangleMesh;

  public final javafx.beans.property.ObjectProperty<javafx.scene.shape.VertexFormat> vertexFormatProperty();
    descriptor: ()Ljavafx/beans/property/ObjectProperty;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=6, locals=1, args_size=1
        start local 0 // javafx.scene.shape.TriangleMesh this
         0: .line 214
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.vertexFormat:Ljavafx/beans/property/ObjectProperty;
            ifnonnull 2
         1: .line 215
            aload 0 /* this */
            new javafx.scene.shape.TriangleMesh$2
            dup
            aload 0 /* this */
            aload 0 /* this */
            ldc "vertexFormat"
            invokespecial javafx.scene.shape.TriangleMesh$2.<init>:(Ljavafx/scene/shape/TriangleMesh;Ljava/lang/Object;Ljava/lang/String;)V
            putfield javafx.scene.shape.TriangleMesh.vertexFormat:Ljavafx/beans/property/ObjectProperty;
         2: .line 226
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.vertexFormat:Ljavafx/beans/property/ObjectProperty;
            areturn
        end local 0 // javafx.scene.shape.TriangleMesh this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljavafx/scene/shape/TriangleMesh;
    Signature: ()Ljavafx/beans/property/ObjectProperty<Ljavafx/scene/shape/VertexFormat;>;

  public final int getPointElementSize();
    descriptor: ()I
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javafx.scene.shape.TriangleMesh this
         0: .line 235
            aload 0 /* this */
            invokevirtual javafx.scene.shape.TriangleMesh.getVertexFormat:()Ljavafx/scene/shape/VertexFormat;
            invokevirtual javafx.scene.shape.VertexFormat.getPointElementSize:()I
            ireturn
        end local 0 // javafx.scene.shape.TriangleMesh this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavafx/scene/shape/TriangleMesh;

  public final int getNormalElementSize();
    descriptor: ()I
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javafx.scene.shape.TriangleMesh this
         0: .line 246
            aload 0 /* this */
            invokevirtual javafx.scene.shape.TriangleMesh.getVertexFormat:()Ljavafx/scene/shape/VertexFormat;
            invokevirtual javafx.scene.shape.VertexFormat.getNormalElementSize:()I
            ireturn
        end local 0 // javafx.scene.shape.TriangleMesh this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavafx/scene/shape/TriangleMesh;

  public final int getTexCoordElementSize();
    descriptor: ()I
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javafx.scene.shape.TriangleMesh this
         0: .line 255
            aload 0 /* this */
            invokevirtual javafx.scene.shape.TriangleMesh.getVertexFormat:()Ljavafx/scene/shape/VertexFormat;
            invokevirtual javafx.scene.shape.VertexFormat.getTexCoordElementSize:()I
            ireturn
        end local 0 // javafx.scene.shape.TriangleMesh this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavafx/scene/shape/TriangleMesh;

  public final int getFaceElementSize();
    descriptor: ()I
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // javafx.scene.shape.TriangleMesh this
         0: .line 264
            aload 0 /* this */
            invokevirtual javafx.scene.shape.TriangleMesh.getVertexFormat:()Ljavafx/scene/shape/VertexFormat;
            invokevirtual javafx.scene.shape.VertexFormat.getVertexIndexSize:()I
            iconst_3
            imul
            ireturn
        end local 0 // javafx.scene.shape.TriangleMesh this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavafx/scene/shape/TriangleMesh;

  public final javafx.collections.ObservableFloatArray getPoints();
    descriptor: ()Ljavafx/collections/ObservableFloatArray;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javafx.scene.shape.TriangleMesh this
         0: .line 274
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.points:Ljavafx/collections/ObservableFloatArray;
            areturn
        end local 0 // javafx.scene.shape.TriangleMesh this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavafx/scene/shape/TriangleMesh;

  public final javafx.collections.ObservableFloatArray getNormals();
    descriptor: ()Ljavafx/collections/ObservableFloatArray;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javafx.scene.shape.TriangleMesh this
         0: .line 286
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.normals:Ljavafx/collections/ObservableFloatArray;
            areturn
        end local 0 // javafx.scene.shape.TriangleMesh this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavafx/scene/shape/TriangleMesh;

  public final javafx.collections.ObservableFloatArray getTexCoords();
    descriptor: ()Ljavafx/collections/ObservableFloatArray;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javafx.scene.shape.TriangleMesh this
         0: .line 298
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.texCoords:Ljavafx/collections/ObservableFloatArray;
            areturn
        end local 0 // javafx.scene.shape.TriangleMesh this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavafx/scene/shape/TriangleMesh;

  public final javafx.scene.shape.ObservableFaceArray getFaces();
    descriptor: ()Ljavafx/scene/shape/ObservableFaceArray;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javafx.scene.shape.TriangleMesh this
         0: .line 312
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.faces:Ljavafx/scene/shape/ObservableFaceArray;
            areturn
        end local 0 // javafx.scene.shape.TriangleMesh this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavafx/scene/shape/TriangleMesh;

  public final javafx.collections.ObservableIntegerArray getFaceSmoothingGroups();
    descriptor: ()Ljavafx/collections/ObservableIntegerArray;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javafx.scene.shape.TriangleMesh this
         0: .line 342
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.faceSmoothingGroups:Ljavafx/collections/ObservableIntegerArray;
            areturn
        end local 0 // javafx.scene.shape.TriangleMesh this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavafx/scene/shape/TriangleMesh;

  void setDirty(boolean);
    descriptor: (Z)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javafx.scene.shape.TriangleMesh this
        start local 1 // boolean value
         0: .line 346
            aload 0 /* this */
            iload 1 /* value */
            invokespecial javafx.scene.shape.Mesh.setDirty:(Z)V
         1: .line 347
            iload 1 /* value */
            ifne 7
         2: .line 348
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.pointsSyncer:Ljavafx/scene/shape/TriangleMesh$Listener;
            iconst_0
            invokevirtual javafx.scene.shape.TriangleMesh$Listener.setDirty:(Z)V
         3: .line 349
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.normalsSyncer:Ljavafx/scene/shape/TriangleMesh$Listener;
            iconst_0
            invokevirtual javafx.scene.shape.TriangleMesh$Listener.setDirty:(Z)V
         4: .line 350
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.texCoordsSyncer:Ljavafx/scene/shape/TriangleMesh$Listener;
            iconst_0
            invokevirtual javafx.scene.shape.TriangleMesh$Listener.setDirty:(Z)V
         5: .line 351
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.facesSyncer:Ljavafx/scene/shape/TriangleMesh$Listener;
            iconst_0
            invokevirtual javafx.scene.shape.TriangleMesh$Listener.setDirty:(Z)V
         6: .line 352
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.faceSmoothingGroupsSyncer:Ljavafx/scene/shape/TriangleMesh$Listener;
            iconst_0
            invokevirtual javafx.scene.shape.TriangleMesh$Listener.setDirty:(Z)V
         7: .line 354
      StackMap locals:
      StackMap stack:
            return
        end local 1 // boolean value
        end local 0 // javafx.scene.shape.TriangleMesh this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    8     0   this  Ljavafx/scene/shape/TriangleMesh;
            0    8     1  value  Z
    MethodParameters:
       Name  Flags
      value  

  int getRefCount();
    descriptor: ()I
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javafx.scene.shape.TriangleMesh this
         0: .line 357
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.refCount:I
            ireturn
        end local 0 // javafx.scene.shape.TriangleMesh this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavafx/scene/shape/TriangleMesh;

  synchronized void incRef();
    descriptor: ()V
    flags: (0x0020) ACC_SYNCHRONIZED
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // javafx.scene.shape.TriangleMesh this
         0: .line 361
            aload 0 /* this */
            dup
            getfield javafx.scene.shape.TriangleMesh.refCount:I
            iconst_1
            iadd
            putfield javafx.scene.shape.TriangleMesh.refCount:I
         1: .line 362
            return
        end local 0 // javafx.scene.shape.TriangleMesh this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljavafx/scene/shape/TriangleMesh;

  synchronized void decRef();
    descriptor: ()V
    flags: (0x0020) ACC_SYNCHRONIZED
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // javafx.scene.shape.TriangleMesh this
         0: .line 365
            aload 0 /* this */
            dup
            getfield javafx.scene.shape.TriangleMesh.refCount:I
            iconst_1
            isub
            putfield javafx.scene.shape.TriangleMesh.refCount:I
         1: .line 366
            return
        end local 0 // javafx.scene.shape.TriangleMesh this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljavafx/scene/shape/TriangleMesh;

  com.sun.javafx.sg.prism.NGTriangleMesh getPGTriangleMesh();
    descriptor: ()Lcom/sun/javafx/sg/prism/NGTriangleMesh;
    flags: (0x0000) 
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // javafx.scene.shape.TriangleMesh this
         0: .line 372
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.peer:Lcom/sun/javafx/sg/prism/NGTriangleMesh;
            ifnonnull 2
         1: .line 373
            aload 0 /* this */
            new com.sun.javafx.sg.prism.NGTriangleMesh
            dup
            invokespecial com.sun.javafx.sg.prism.NGTriangleMesh.<init>:()V
            putfield javafx.scene.shape.TriangleMesh.peer:Lcom/sun/javafx/sg/prism/NGTriangleMesh;
         2: .line 375
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.peer:Lcom/sun/javafx/sg/prism/NGTriangleMesh;
            areturn
        end local 0 // javafx.scene.shape.TriangleMesh this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljavafx/scene/shape/TriangleMesh;

  com.sun.javafx.sg.prism.NGTriangleMesh getPGMesh();
    descriptor: ()Lcom/sun/javafx/sg/prism/NGTriangleMesh;
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javafx.scene.shape.TriangleMesh this
         0: .line 380
            aload 0 /* this */
            invokevirtual javafx.scene.shape.TriangleMesh.getPGTriangleMesh:()Lcom/sun/javafx/sg/prism/NGTriangleMesh;
            areturn
        end local 0 // javafx.scene.shape.TriangleMesh this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavafx/scene/shape/TriangleMesh;

  private boolean validatePoints();
    descriptor: ()Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // javafx.scene.shape.TriangleMesh this
         0: .line 384
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.points:Ljavafx/collections/ObservableFloatArray;
            invokeinterface javafx.collections.ObservableFloatArray.size:()I
            ifne 2
         1: .line 385
            iconst_0
            ireturn
         2: .line 388
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.points:Ljavafx/collections/ObservableFloatArray;
            invokeinterface javafx.collections.ObservableFloatArray.size:()I
            aload 0 /* this */
            invokevirtual javafx.scene.shape.TriangleMesh.getVertexFormat:()Ljavafx/scene/shape/VertexFormat;
            invokevirtual javafx.scene.shape.VertexFormat.getPointElementSize:()I
            irem
            ifeq 6
         3: .line 389
            ldc Ljavafx/scene/shape/TriangleMesh;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            astore 1 /* logname */
        start local 1 // java.lang.String logname
         4: .line 390
            aload 1 /* logname */
            invokestatic com.sun.javafx.logging.PlatformLogger.getLogger:(Ljava/lang/String;)Lcom/sun/javafx/logging/PlatformLogger;
            ldc "points.size() has to be divisible by getPointElementSize(). It is to store multiple x, y, and z coordinates of this mesh"
            invokevirtual com.sun.javafx.logging.PlatformLogger.warning:(Ljava/lang/String;)V
         5: .line 393
            iconst_0
            ireturn
        end local 1 // java.lang.String logname
         6: .line 395
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 0 // javafx.scene.shape.TriangleMesh this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     this  Ljavafx/scene/shape/TriangleMesh;
            4    6     1  logname  Ljava/lang/String;

  private boolean validateNormals();
    descriptor: ()Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // javafx.scene.shape.TriangleMesh this
         0: .line 400
            aload 0 /* this */
            invokevirtual javafx.scene.shape.TriangleMesh.getVertexFormat:()Ljavafx/scene/shape/VertexFormat;
            getstatic javafx.scene.shape.VertexFormat.POINT_NORMAL_TEXCOORD:Ljavafx/scene/shape/VertexFormat;
            if_acmpeq 1
            iconst_1
            ireturn
         1: .line 402
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.normals:Ljavafx/collections/ObservableFloatArray;
            invokeinterface javafx.collections.ObservableFloatArray.size:()I
            ifne 3
         2: .line 403
            iconst_0
            ireturn
         3: .line 406
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.normals:Ljavafx/collections/ObservableFloatArray;
            invokeinterface javafx.collections.ObservableFloatArray.size:()I
            aload 0 /* this */
            invokevirtual javafx.scene.shape.TriangleMesh.getVertexFormat:()Ljavafx/scene/shape/VertexFormat;
            invokevirtual javafx.scene.shape.VertexFormat.getNormalElementSize:()I
            irem
            ifeq 7
         4: .line 407
            ldc Ljavafx/scene/shape/TriangleMesh;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            astore 1 /* logname */
        start local 1 // java.lang.String logname
         5: .line 408
            aload 1 /* logname */
            invokestatic com.sun.javafx.logging.PlatformLogger.getLogger:(Ljava/lang/String;)Lcom/sun/javafx/logging/PlatformLogger;
            ldc "normals.size() has to be divisible by getNormalElementSize(). It is to store multiple nx, ny, and nz coordinates of this mesh"
            invokevirtual com.sun.javafx.logging.PlatformLogger.warning:(Ljava/lang/String;)V
         6: .line 411
            iconst_0
            ireturn
        end local 1 // java.lang.String logname
         7: .line 413
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 0 // javafx.scene.shape.TriangleMesh this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    8     0     this  Ljavafx/scene/shape/TriangleMesh;
            5    7     1  logname  Ljava/lang/String;

  private boolean validateTexCoords();
    descriptor: ()Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // javafx.scene.shape.TriangleMesh this
         0: .line 417
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.texCoords:Ljavafx/collections/ObservableFloatArray;
            invokeinterface javafx.collections.ObservableFloatArray.size:()I
            ifne 2
         1: .line 418
            iconst_0
            ireturn
         2: .line 421
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.texCoords:Ljavafx/collections/ObservableFloatArray;
            invokeinterface javafx.collections.ObservableFloatArray.size:()I
            aload 0 /* this */
            invokevirtual javafx.scene.shape.TriangleMesh.getVertexFormat:()Ljavafx/scene/shape/VertexFormat;
            invokevirtual javafx.scene.shape.VertexFormat.getTexCoordElementSize:()I
            irem
            ifeq 6
         3: .line 422
            ldc Ljavafx/scene/shape/TriangleMesh;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            astore 1 /* logname */
        start local 1 // java.lang.String logname
         4: .line 423
            aload 1 /* logname */
            invokestatic com.sun.javafx.logging.PlatformLogger.getLogger:(Ljava/lang/String;)Lcom/sun/javafx/logging/PlatformLogger;
            ldc "texCoords.size() has to be divisible by getTexCoordElementSize(). It is to store multiple u and v texture coordinates of this mesh"
            invokevirtual com.sun.javafx.logging.PlatformLogger.warning:(Ljava/lang/String;)V
         5: .line 427
            iconst_0
            ireturn
        end local 1 // java.lang.String logname
         6: .line 429
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 0 // javafx.scene.shape.TriangleMesh this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     this  Ljavafx/scene/shape/TriangleMesh;
            4    6     1  logname  Ljava/lang/String;

  private boolean validateFaces();
    descriptor: ()Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=6, args_size=1
        start local 0 // javafx.scene.shape.TriangleMesh this
         0: .line 433
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.faces:Ljavafx/scene/shape/ObservableFaceArray;
            invokeinterface javafx.scene.shape.ObservableFaceArray.size:()I
            ifne 2
         1: .line 434
            iconst_0
            ireturn
         2: .line 437
      StackMap locals:
      StackMap stack:
            ldc Ljavafx/scene/shape/TriangleMesh;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            astore 1 /* logname */
        start local 1 // java.lang.String logname
         3: .line 438
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.faces:Ljavafx/scene/shape/ObservableFaceArray;
            invokeinterface javafx.scene.shape.ObservableFaceArray.size:()I
            aload 0 /* this */
            invokevirtual javafx.scene.shape.TriangleMesh.getFaceElementSize:()I
            irem
            ifeq 6
         4: .line 439
            aload 1 /* logname */
            invokestatic com.sun.javafx.logging.PlatformLogger.getLogger:(Ljava/lang/String;)Lcom/sun/javafx/logging/PlatformLogger;
            ldc "faces.size() has to be divisible by getFaceElementSize()."
            invokevirtual com.sun.javafx.logging.PlatformLogger.warning:(Ljava/lang/String;)V
         5: .line 441
            iconst_0
            ireturn
         6: .line 444
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            invokevirtual javafx.scene.shape.TriangleMesh.getVertexFormat:()Ljavafx/scene/shape/VertexFormat;
            getstatic javafx.scene.shape.VertexFormat.POINT_TEXCOORD:Ljavafx/scene/shape/VertexFormat;
            if_acmpne 18
         7: .line 445
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.points:Ljavafx/collections/ObservableFloatArray;
            invokeinterface javafx.collections.ObservableFloatArray.size:()I
            aload 0 /* this */
            invokevirtual javafx.scene.shape.TriangleMesh.getVertexFormat:()Ljavafx/scene/shape/VertexFormat;
            invokevirtual javafx.scene.shape.VertexFormat.getPointElementSize:()I
            idiv
            istore 2 /* nVerts */
        start local 2 // int nVerts
         8: .line 446
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.texCoords:Ljavafx/collections/ObservableFloatArray;
            invokeinterface javafx.collections.ObservableFloatArray.size:()I
            aload 0 /* this */
            invokevirtual javafx.scene.shape.TriangleMesh.getVertexFormat:()Ljavafx/scene/shape/VertexFormat;
            invokevirtual javafx.scene.shape.VertexFormat.getTexCoordElementSize:()I
            idiv
            istore 3 /* nTVerts */
        start local 3 // int nTVerts
         9: .line 447
            iconst_0
            istore 4 /* i */
        start local 4 // int i
        10: goto 16
        11: .line 448
      StackMap locals: int int int
      StackMap stack:
            iload 4 /* i */
            iconst_2
            irem
            ifne 12
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.faces:Ljavafx/scene/shape/ObservableFaceArray;
            iload 4 /* i */
            invokeinterface javafx.scene.shape.ObservableFaceArray.get:(I)I
            iload 2 /* nVerts */
            if_icmpge 13
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.faces:Ljavafx/scene/shape/ObservableFaceArray;
            iload 4 /* i */
            invokeinterface javafx.scene.shape.ObservableFaceArray.get:(I)I
            iflt 13
        12: .line 449
      StackMap locals:
      StackMap stack:
            iload 4 /* i */
            iconst_2
            irem
            ifeq 15
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.faces:Ljavafx/scene/shape/ObservableFaceArray;
            iload 4 /* i */
            invokeinterface javafx.scene.shape.ObservableFaceArray.get:(I)I
            iload 3 /* nTVerts */
            if_icmpge 13
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.faces:Ljavafx/scene/shape/ObservableFaceArray;
            iload 4 /* i */
            invokeinterface javafx.scene.shape.ObservableFaceArray.get:(I)I
            ifge 15
        13: .line 450
      StackMap locals:
      StackMap stack:
            aload 1 /* logname */
            invokestatic com.sun.javafx.logging.PlatformLogger.getLogger:(Ljava/lang/String;)Lcom/sun/javafx/logging/PlatformLogger;
            ldc "The values in the faces array must be within the range of the number of vertices in the points array (0 to points.length / 3 - 1) for the point indices and within the range of the number of the vertices in the texCoords array (0 to texCoords.length / 2 - 1) for the texture coordinate indices."
            invokevirtual com.sun.javafx.logging.PlatformLogger.warning:(Ljava/lang/String;)V
        14: .line 456
            iconst_0
            ireturn
        15: .line 447
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        16: iload 4 /* i */
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.faces:Ljavafx/scene/shape/ObservableFaceArray;
            invokeinterface javafx.scene.shape.ObservableFaceArray.size:()I
            if_icmplt 11
        end local 4 // int i
        end local 3 // int nTVerts
        end local 2 // int nVerts
        17: .line 459
            goto 34
      StackMap locals:
      StackMap stack:
        18: aload 0 /* this */
            invokevirtual javafx.scene.shape.TriangleMesh.getVertexFormat:()Ljavafx/scene/shape/VertexFormat;
            getstatic javafx.scene.shape.VertexFormat.POINT_NORMAL_TEXCOORD:Ljavafx/scene/shape/VertexFormat;
            if_acmpne 32
        19: .line 460
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.points:Ljavafx/collections/ObservableFloatArray;
            invokeinterface javafx.collections.ObservableFloatArray.size:()I
            aload 0 /* this */
            invokevirtual javafx.scene.shape.TriangleMesh.getVertexFormat:()Ljavafx/scene/shape/VertexFormat;
            invokevirtual javafx.scene.shape.VertexFormat.getPointElementSize:()I
            idiv
            istore 2 /* nVerts */
        start local 2 // int nVerts
        20: .line 461
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.normals:Ljavafx/collections/ObservableFloatArray;
            invokeinterface javafx.collections.ObservableFloatArray.size:()I
            aload 0 /* this */
            invokevirtual javafx.scene.shape.TriangleMesh.getVertexFormat:()Ljavafx/scene/shape/VertexFormat;
            invokevirtual javafx.scene.shape.VertexFormat.getNormalElementSize:()I
            idiv
            istore 3 /* nNVerts */
        start local 3 // int nNVerts
        21: .line 462
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.texCoords:Ljavafx/collections/ObservableFloatArray;
            invokeinterface javafx.collections.ObservableFloatArray.size:()I
            aload 0 /* this */
            invokevirtual javafx.scene.shape.TriangleMesh.getVertexFormat:()Ljavafx/scene/shape/VertexFormat;
            invokevirtual javafx.scene.shape.VertexFormat.getTexCoordElementSize:()I
            idiv
            istore 4 /* nTVerts */
        start local 4 // int nTVerts
        22: .line 463
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        23: goto 30
        24: .line 464
      StackMap locals: javafx.scene.shape.TriangleMesh java.lang.String int int int int
      StackMap stack:
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.faces:Ljavafx/scene/shape/ObservableFaceArray;
            iload 5 /* i */
            invokeinterface javafx.scene.shape.ObservableFaceArray.get:(I)I
            iload 2 /* nVerts */
            if_icmpge 27
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.faces:Ljavafx/scene/shape/ObservableFaceArray;
            iload 5 /* i */
            invokeinterface javafx.scene.shape.ObservableFaceArray.get:(I)I
            iflt 27
        25: .line 465
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.faces:Ljavafx/scene/shape/ObservableFaceArray;
            iload 5 /* i */
            iconst_1
            iadd
            invokeinterface javafx.scene.shape.ObservableFaceArray.get:(I)I
            iload 3 /* nNVerts */
            if_icmpge 27
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.faces:Ljavafx/scene/shape/ObservableFaceArray;
            iload 5 /* i */
            iconst_1
            iadd
            invokeinterface javafx.scene.shape.ObservableFaceArray.get:(I)I
            iflt 27
        26: .line 466
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.faces:Ljavafx/scene/shape/ObservableFaceArray;
            iload 5 /* i */
            iconst_2
            iadd
            invokeinterface javafx.scene.shape.ObservableFaceArray.get:(I)I
            iload 4 /* nTVerts */
            if_icmpge 27
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.faces:Ljavafx/scene/shape/ObservableFaceArray;
            iload 5 /* i */
            iconst_2
            iadd
            invokeinterface javafx.scene.shape.ObservableFaceArray.get:(I)I
            ifge 29
        27: .line 467
      StackMap locals:
      StackMap stack:
            aload 1 /* logname */
            invokestatic com.sun.javafx.logging.PlatformLogger.getLogger:(Ljava/lang/String;)Lcom/sun/javafx/logging/PlatformLogger;
            ldc "The values in the faces array must be within the range of the number of vertices in the points array (0 to points.length / 3 - 1) for the point indices, and within the range of the number of the vertices in the normals array (0 to normals.length / 3 - 1) for the normals indices, and number of the vertices in the texCoords array (0 to texCoords.length / 2 - 1) for the texture coordinate indices."
            invokevirtual com.sun.javafx.logging.PlatformLogger.warning:(Ljava/lang/String;)V
        28: .line 475
            iconst_0
            ireturn
        29: .line 463
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 3
      StackMap locals:
      StackMap stack:
        30: iload 5 /* i */
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.faces:Ljavafx/scene/shape/ObservableFaceArray;
            invokeinterface javafx.scene.shape.ObservableFaceArray.size:()I
            if_icmplt 24
        end local 5 // int i
        end local 4 // int nTVerts
        end local 3 // int nNVerts
        end local 2 // int nVerts
        31: .line 478
            goto 34
        32: .line 479
      StackMap locals: javafx.scene.shape.TriangleMesh java.lang.String
      StackMap stack:
            aload 1 /* logname */
            invokestatic com.sun.javafx.logging.PlatformLogger.getLogger:(Ljava/lang/String;)Lcom/sun/javafx/logging/PlatformLogger;
            new java.lang.StringBuilder
            dup
            ldc "Unsupported VertexFormat: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual javafx.scene.shape.TriangleMesh.getVertexFormat:()Ljavafx/scene/shape/VertexFormat;
            invokevirtual javafx.scene.shape.VertexFormat.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual com.sun.javafx.logging.PlatformLogger.warning:(Ljava/lang/String;)V
        33: .line 480
            iconst_0
            ireturn
        34: .line 482
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 1 // java.lang.String logname
        end local 0 // javafx.scene.shape.TriangleMesh this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   35     0     this  Ljavafx/scene/shape/TriangleMesh;
            3   35     1  logname  Ljava/lang/String;
            8   17     2   nVerts  I
            9   17     3  nTVerts  I
           10   17     4        i  I
           20   31     2   nVerts  I
           21   31     3  nNVerts  I
           22   31     4  nTVerts  I
           23   31     5        i  I

  private boolean validateFaceSmoothingGroups();
    descriptor: ()Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // javafx.scene.shape.TriangleMesh this
         0: .line 486
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.faceSmoothingGroups:Ljavafx/collections/ObservableIntegerArray;
            invokeinterface javafx.collections.ObservableIntegerArray.size:()I
            ifeq 5
         1: .line 487
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.faceSmoothingGroups:Ljavafx/collections/ObservableIntegerArray;
            invokeinterface javafx.collections.ObservableIntegerArray.size:()I
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.faces:Ljavafx/scene/shape/ObservableFaceArray;
            invokeinterface javafx.scene.shape.ObservableFaceArray.size:()I
            aload 0 /* this */
            invokevirtual javafx.scene.shape.TriangleMesh.getFaceElementSize:()I
            idiv
            if_icmpeq 5
         2: .line 488
            ldc Ljavafx/scene/shape/TriangleMesh;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            astore 1 /* logname */
        start local 1 // java.lang.String logname
         3: .line 489
            aload 1 /* logname */
            invokestatic com.sun.javafx.logging.PlatformLogger.getLogger:(Ljava/lang/String;)Lcom/sun/javafx/logging/PlatformLogger;
            ldc "faceSmoothingGroups.size() has to equal to number of faces."
            invokevirtual com.sun.javafx.logging.PlatformLogger.warning:(Ljava/lang/String;)V
         4: .line 491
            iconst_0
            ireturn
        end local 1 // java.lang.String logname
         5: .line 493
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 0 // javafx.scene.shape.TriangleMesh this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0     this  Ljavafx/scene/shape/TriangleMesh;
            3    5     1  logname  Ljava/lang/String;

  private boolean validate();
    descriptor: ()Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // javafx.scene.shape.TriangleMesh this
         0: .line 497
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.isPredefinedShape:Z
            ifeq 2
         1: .line 498
            iconst_1
            ireturn
         2: .line 501
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.isValidDirty:Z
            ifeq 20
         3: .line 502
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.pointsSyncer:Ljavafx/scene/shape/TriangleMesh$Listener;
            getfield javafx.scene.shape.TriangleMesh$Listener.dirtyInFull:Z
            ifeq 5
         4: .line 503
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual javafx.scene.shape.TriangleMesh.validatePoints:()Z
            putfield javafx.scene.shape.TriangleMesh.isPointsValid:Z
         5: .line 505
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.normalsSyncer:Ljavafx/scene/shape/TriangleMesh$Listener;
            getfield javafx.scene.shape.TriangleMesh$Listener.dirtyInFull:Z
            ifeq 7
         6: .line 506
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual javafx.scene.shape.TriangleMesh.validateNormals:()Z
            putfield javafx.scene.shape.TriangleMesh.isNormalsValid:Z
         7: .line 508
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.texCoordsSyncer:Ljavafx/scene/shape/TriangleMesh$Listener;
            getfield javafx.scene.shape.TriangleMesh$Listener.dirtyInFull:Z
            ifeq 9
         8: .line 509
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual javafx.scene.shape.TriangleMesh.validateTexCoords:()Z
            putfield javafx.scene.shape.TriangleMesh.isTexCoordsValid:Z
         9: .line 511
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.facesSyncer:Ljavafx/scene/shape/TriangleMesh$Listener;
            getfield javafx.scene.shape.TriangleMesh$Listener.dirty:Z
            ifne 11
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.pointsSyncer:Ljavafx/scene/shape/TriangleMesh$Listener;
            getfield javafx.scene.shape.TriangleMesh$Listener.dirtyInFull:Z
            ifne 11
        10: .line 512
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.normalsSyncer:Ljavafx/scene/shape/TriangleMesh$Listener;
            getfield javafx.scene.shape.TriangleMesh$Listener.dirtyInFull:Z
            ifne 11
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.texCoordsSyncer:Ljavafx/scene/shape/TriangleMesh$Listener;
            getfield javafx.scene.shape.TriangleMesh$Listener.dirtyInFull:Z
            ifeq 15
        11: .line 513
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.isPointsValid:Z
            ifeq 13
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.isNormalsValid:Z
            ifeq 13
        12: .line 514
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.isTexCoordsValid:Z
            ifeq 13
            aload 0 /* this */
            invokevirtual javafx.scene.shape.TriangleMesh.validateFaces:()Z
            ifeq 13
            iconst_1
            goto 14
      StackMap locals:
      StackMap stack: javafx.scene.shape.TriangleMesh
        13: iconst_0
        14: .line 513
      StackMap locals: javafx.scene.shape.TriangleMesh
      StackMap stack: javafx.scene.shape.TriangleMesh int
            putfield javafx.scene.shape.TriangleMesh.isFacesValid:Z
        15: .line 516
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.faceSmoothingGroupsSyncer:Ljavafx/scene/shape/TriangleMesh$Listener;
            getfield javafx.scene.shape.TriangleMesh$Listener.dirtyInFull:Z
            ifne 16
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.facesSyncer:Ljavafx/scene/shape/TriangleMesh$Listener;
            getfield javafx.scene.shape.TriangleMesh$Listener.dirtyInFull:Z
            ifeq 19
        16: .line 517
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.isFacesValid:Z
            ifeq 17
            aload 0 /* this */
            invokevirtual javafx.scene.shape.TriangleMesh.validateFaceSmoothingGroups:()Z
            ifeq 17
            iconst_1
            goto 18
      StackMap locals:
      StackMap stack: javafx.scene.shape.TriangleMesh
        17: iconst_0
      StackMap locals: javafx.scene.shape.TriangleMesh
      StackMap stack: javafx.scene.shape.TriangleMesh int
        18: putfield javafx.scene.shape.TriangleMesh.isFaceSmoothingGroupValid:Z
        19: .line 519
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield javafx.scene.shape.TriangleMesh.isValidDirty:Z
        20: .line 521
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.isPointsValid:Z
            ifeq 23
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.isNormalsValid:Z
            ifeq 23
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.isTexCoordsValid:Z
            ifeq 23
        21: .line 522
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.isFaceSmoothingGroupValid:Z
            ifeq 23
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.isFacesValid:Z
            ifeq 23
        22: .line 521
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
        23: iconst_0
            ireturn
        end local 0 // javafx.scene.shape.TriangleMesh this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   24     0  this  Ljavafx/scene/shape/TriangleMesh;

  void updatePG();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // javafx.scene.shape.TriangleMesh this
         0: .line 527
            aload 0 /* this */
            invokevirtual javafx.scene.shape.TriangleMesh.isDirty:()Z
            ifne 2
         1: .line 528
            return
         2: .line 531
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual javafx.scene.shape.TriangleMesh.getPGTriangleMesh:()Lcom/sun/javafx/sg/prism/NGTriangleMesh;
            astore 1 /* pgTriMesh */
        start local 1 // com.sun.javafx.sg.prism.NGTriangleMesh pgTriMesh
         3: .line 532
            aload 0 /* this */
            invokevirtual javafx.scene.shape.TriangleMesh.validate:()Z
            ifeq 13
         4: .line 533
            aload 1 /* pgTriMesh */
            aload 0 /* this */
            invokevirtual javafx.scene.shape.TriangleMesh.getVertexFormat:()Ljavafx/scene/shape/VertexFormat;
            getstatic javafx.scene.shape.VertexFormat.POINT_NORMAL_TEXCOORD:Ljavafx/scene/shape/VertexFormat;
            if_acmpne 5
            iconst_1
            goto 6
      StackMap locals: javafx.scene.shape.TriangleMesh com.sun.javafx.sg.prism.NGTriangleMesh
      StackMap stack: com.sun.javafx.sg.prism.NGTriangleMesh
         5: iconst_0
      StackMap locals: javafx.scene.shape.TriangleMesh com.sun.javafx.sg.prism.NGTriangleMesh
      StackMap stack: com.sun.javafx.sg.prism.NGTriangleMesh int
         6: invokevirtual com.sun.javafx.sg.prism.NGTriangleMesh.setUserDefinedNormals:(Z)V
         7: .line 534
            aload 1 /* pgTriMesh */
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.pointsSyncer:Ljavafx/scene/shape/TriangleMesh$Listener;
            invokevirtual com.sun.javafx.sg.prism.NGTriangleMesh.syncPoints:(Lcom/sun/javafx/collections/FloatArraySyncer;)V
         8: .line 535
            aload 1 /* pgTriMesh */
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.normalsSyncer:Ljavafx/scene/shape/TriangleMesh$Listener;
            invokevirtual com.sun.javafx.sg.prism.NGTriangleMesh.syncNormals:(Lcom/sun/javafx/collections/FloatArraySyncer;)V
         9: .line 536
            aload 1 /* pgTriMesh */
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.texCoordsSyncer:Ljavafx/scene/shape/TriangleMesh$Listener;
            invokevirtual com.sun.javafx.sg.prism.NGTriangleMesh.syncTexCoords:(Lcom/sun/javafx/collections/FloatArraySyncer;)V
        10: .line 537
            aload 1 /* pgTriMesh */
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.facesSyncer:Ljavafx/scene/shape/TriangleMesh$Listener;
            invokevirtual com.sun.javafx.sg.prism.NGTriangleMesh.syncFaces:(Lcom/sun/javafx/collections/IntegerArraySyncer;)V
        11: .line 538
            aload 1 /* pgTriMesh */
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.faceSmoothingGroupsSyncer:Ljavafx/scene/shape/TriangleMesh$Listener;
            invokevirtual com.sun.javafx.sg.prism.NGTriangleMesh.syncFaceSmoothingGroups:(Lcom/sun/javafx/collections/IntegerArraySyncer;)V
        12: .line 539
            goto 19
        13: .line 540
      StackMap locals:
      StackMap stack:
            aload 1 /* pgTriMesh */
            iconst_0
            invokevirtual com.sun.javafx.sg.prism.NGTriangleMesh.setUserDefinedNormals:(Z)V
        14: .line 541
            aload 1 /* pgTriMesh */
            aconst_null
            invokevirtual com.sun.javafx.sg.prism.NGTriangleMesh.syncPoints:(Lcom/sun/javafx/collections/FloatArraySyncer;)V
        15: .line 542
            aload 1 /* pgTriMesh */
            aconst_null
            invokevirtual com.sun.javafx.sg.prism.NGTriangleMesh.syncNormals:(Lcom/sun/javafx/collections/FloatArraySyncer;)V
        16: .line 543
            aload 1 /* pgTriMesh */
            aconst_null
            invokevirtual com.sun.javafx.sg.prism.NGTriangleMesh.syncTexCoords:(Lcom/sun/javafx/collections/FloatArraySyncer;)V
        17: .line 544
            aload 1 /* pgTriMesh */
            aconst_null
            invokevirtual com.sun.javafx.sg.prism.NGTriangleMesh.syncFaces:(Lcom/sun/javafx/collections/IntegerArraySyncer;)V
        18: .line 545
            aload 1 /* pgTriMesh */
            aconst_null
            invokevirtual com.sun.javafx.sg.prism.NGTriangleMesh.syncFaceSmoothingGroups:(Lcom/sun/javafx/collections/IntegerArraySyncer;)V
        19: .line 547
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            invokevirtual javafx.scene.shape.TriangleMesh.setDirty:(Z)V
        20: .line 548
            return
        end local 1 // com.sun.javafx.sg.prism.NGTriangleMesh pgTriMesh
        end local 0 // javafx.scene.shape.TriangleMesh this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   21     0       this  Ljavafx/scene/shape/TriangleMesh;
            3   21     1  pgTriMesh  Lcom/sun/javafx/sg/prism/NGTriangleMesh;

  com.sun.javafx.geom.BaseBounds computeBounds(com.sun.javafx.geom.BaseBounds);
    descriptor: (Lcom/sun/javafx/geom/BaseBounds;)Lcom/sun/javafx/geom/BaseBounds;
    flags: (0x0000) 
    Code:
      stack=6, locals=5, args_size=2
        start local 0 // javafx.scene.shape.TriangleMesh this
        start local 1 // com.sun.javafx.geom.BaseBounds bounds
         0: .line 552
            aload 0 /* this */
            invokevirtual javafx.scene.shape.TriangleMesh.isDirty:()Z
            ifne 1
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.cachedBounds:Lcom/sun/javafx/geom/BaseBounds;
            ifnonnull 10
         1: .line 553
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new com.sun.javafx.geom.BoxBounds
            dup
            invokespecial com.sun.javafx.geom.BoxBounds.<init>:()V
            putfield javafx.scene.shape.TriangleMesh.cachedBounds:Lcom/sun/javafx/geom/BaseBounds;
         2: .line 554
            aload 0 /* this */
            invokevirtual javafx.scene.shape.TriangleMesh.validate:()Z
            ifeq 10
         3: .line 555
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.points:Ljavafx/collections/ObservableFloatArray;
            invokeinterface javafx.collections.ObservableFloatArray.size:()I
            istore 2 /* len */
        start local 2 // int len
         4: .line 556
            aload 0 /* this */
            invokevirtual javafx.scene.shape.TriangleMesh.getVertexFormat:()Ljavafx/scene/shape/VertexFormat;
            invokevirtual javafx.scene.shape.VertexFormat.getPointElementSize:()I
            istore 3 /* pointElementSize */
        start local 3 // int pointElementSize
         5: .line 557
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         6: goto 9
         7: .line 558
      StackMap locals: int int int
      StackMap stack:
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.cachedBounds:Lcom/sun/javafx/geom/BaseBounds;
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.points:Ljavafx/collections/ObservableFloatArray;
            iload 4 /* i */
            invokeinterface javafx.collections.ObservableFloatArray.get:(I)F
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.points:Ljavafx/collections/ObservableFloatArray;
            iload 4 /* i */
            iconst_1
            iadd
            invokeinterface javafx.collections.ObservableFloatArray.get:(I)F
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.points:Ljavafx/collections/ObservableFloatArray;
            iload 4 /* i */
            iconst_2
            iadd
            invokeinterface javafx.collections.ObservableFloatArray.get:(I)F
            invokevirtual com.sun.javafx.geom.BaseBounds.add:(FFF)V
         8: .line 557
            iload 4 /* i */
            iload 3 /* pointElementSize */
            iadd
            istore 4 /* i */
      StackMap locals:
      StackMap stack:
         9: iload 4 /* i */
            iload 2 /* len */
            if_icmplt 7
        end local 4 // int i
        end local 3 // int pointElementSize
        end local 2 // int len
        10: .line 562
      StackMap locals:
      StackMap stack:
            aload 1 /* bounds */
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.cachedBounds:Lcom/sun/javafx/geom/BaseBounds;
            invokevirtual com.sun.javafx.geom.BaseBounds.deriveWithNewBounds:(Lcom/sun/javafx/geom/BaseBounds;)Lcom/sun/javafx/geom/BaseBounds;
            areturn
        end local 1 // com.sun.javafx.geom.BaseBounds bounds
        end local 0 // javafx.scene.shape.TriangleMesh this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   11     0              this  Ljavafx/scene/shape/TriangleMesh;
            0   11     1            bounds  Lcom/sun/javafx/geom/BaseBounds;
            4   10     2               len  I
            5   10     3  pointElementSize  I
            6   10     4                 i  I
    MethodParameters:
        Name  Flags
      bounds  

  private javafx.geometry.Point3D computeCentroid(double, double, double, double, double, double, double, double, double);
    descriptor: (DDDDDDDDD)Ljavafx/geometry/Point3D;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=14, locals=19, args_size=10
        start local 0 // javafx.scene.shape.TriangleMesh this
        start local 1 // double v0x
        start local 3 // double v0y
        start local 5 // double v0z
        start local 7 // double v1x
        start local 9 // double v1y
        start local 11 // double v1z
        start local 13 // double v2x
        start local 15 // double v2y
        start local 17 // double v2z
         0: .line 587
            new javafx.geometry.Point3D
            dup
         1: .line 588
            dload 1 /* v0x */
            dload 13 /* v2x */
            dload 7 /* v1x */
            dload 13 /* v2x */
            dsub
            ldc 2.0
            ddiv
            dadd
            dload 1 /* v0x */
            dsub
            ldc 3.0
            ddiv
            dadd
         2: .line 589
            dload 3 /* v0y */
            dload 15 /* v2y */
            dload 9 /* v1y */
            dload 15 /* v2y */
            dsub
            ldc 2.0
            ddiv
            dadd
            dload 3 /* v0y */
            dsub
            ldc 3.0
            ddiv
            dadd
         3: .line 590
            dload 5 /* v0z */
            dload 17 /* v2z */
            dload 11 /* v1z */
            dload 17 /* v2z */
            dsub
            ldc 2.0
            ddiv
            dadd
            dload 5 /* v0z */
            dsub
            ldc 3.0
            ddiv
            dadd
         4: .line 587
            invokespecial javafx.geometry.Point3D.<init>:(DDD)V
            areturn
        end local 17 // double v2z
        end local 15 // double v2y
        end local 13 // double v2x
        end local 11 // double v1z
        end local 9 // double v1y
        end local 7 // double v1x
        end local 5 // double v0z
        end local 3 // double v0y
        end local 1 // double v0x
        end local 0 // javafx.scene.shape.TriangleMesh this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljavafx/scene/shape/TriangleMesh;
            0    5     1   v0x  D
            0    5     3   v0y  D
            0    5     5   v0z  D
            0    5     7   v1x  D
            0    5     9   v1y  D
            0    5    11   v1z  D
            0    5    13   v2x  D
            0    5    15   v2y  D
            0    5    17   v2z  D
    MethodParameters:
      Name  Flags
      v0x   
      v0y   
      v0z   
      v1x   
      v1y   
      v1z   
      v2x   
      v2y   
      v2z   

  private javafx.geometry.Point2D computeCentroid(javafx.geometry.Point2D, javafx.geometry.Point2D, javafx.geometry.Point2D);
    descriptor: (Ljavafx/geometry/Point2D;Ljavafx/geometry/Point2D;Ljavafx/geometry/Point2D;)Ljavafx/geometry/Point2D;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=6, args_size=4
        start local 0 // javafx.scene.shape.TriangleMesh this
        start local 1 // javafx.geometry.Point2D v0
        start local 2 // javafx.geometry.Point2D v1
        start local 3 // javafx.geometry.Point2D v2
         0: .line 601
            aload 2 /* v1 */
            aload 3 /* v2 */
            invokevirtual javafx.geometry.Point2D.midpoint:(Ljavafx/geometry/Point2D;)Ljavafx/geometry/Point2D;
            astore 4 /* center */
        start local 4 // javafx.geometry.Point2D center
         1: .line 603
            aload 4 /* center */
            aload 1 /* v0 */
            invokevirtual javafx.geometry.Point2D.subtract:(Ljavafx/geometry/Point2D;)Ljavafx/geometry/Point2D;
            astore 5 /* vec */
        start local 5 // javafx.geometry.Point2D vec
         2: .line 604
            aload 1 /* v0 */
            new javafx.geometry.Point2D
            dup
            aload 5 /* vec */
            invokevirtual javafx.geometry.Point2D.getX:()D
            ldc 3.0
            ddiv
            aload 5 /* vec */
            invokevirtual javafx.geometry.Point2D.getY:()D
            ldc 3.0
            ddiv
            invokespecial javafx.geometry.Point2D.<init>:(DD)V
            invokevirtual javafx.geometry.Point2D.add:(Ljavafx/geometry/Point2D;)Ljavafx/geometry/Point2D;
            areturn
        end local 5 // javafx.geometry.Point2D vec
        end local 4 // javafx.geometry.Point2D center
        end local 3 // javafx.geometry.Point2D v2
        end local 2 // javafx.geometry.Point2D v1
        end local 1 // javafx.geometry.Point2D v0
        end local 0 // javafx.scene.shape.TriangleMesh this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Ljavafx/scene/shape/TriangleMesh;
            0    3     1      v0  Ljavafx/geometry/Point2D;
            0    3     2      v1  Ljavafx/geometry/Point2D;
            0    3     3      v2  Ljavafx/geometry/Point2D;
            1    3     4  center  Ljavafx/geometry/Point2D;
            2    3     5     vec  Ljavafx/geometry/Point2D;
    MethodParameters:
      Name  Flags
      v0    
      v1    
      v2    

  private boolean computeIntersectsFace(com.sun.javafx.geom.PickRay, com.sun.javafx.geom.Vec3d, com.sun.javafx.geom.Vec3d, int, javafx.scene.shape.CullFace, javafx.scene.Node, boolean, com.sun.javafx.scene.input.PickResultChooser);
    descriptor: (Lcom/sun/javafx/geom/PickRay;Lcom/sun/javafx/geom/Vec3d;Lcom/sun/javafx/geom/Vec3d;ILjavafx/scene/shape/CullFace;Ljavafx/scene/Node;ZLcom/sun/javafx/scene/input/PickResultChooser;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=19, locals=92, args_size=9
        start local 0 // javafx.scene.shape.TriangleMesh this
        start local 1 // com.sun.javafx.geom.PickRay pickRay
        start local 2 // com.sun.javafx.geom.Vec3d origin
        start local 3 // com.sun.javafx.geom.Vec3d dir
        start local 4 // int faceIndex
        start local 5 // javafx.scene.shape.CullFace cullFace
        start local 6 // javafx.scene.Node candidate
        start local 7 // boolean reportFace
        start local 8 // com.sun.javafx.scene.input.PickResultChooser result
         0: .line 635
            aload 0 /* this */
            invokevirtual javafx.scene.shape.TriangleMesh.getVertexFormat:()Ljavafx/scene/shape/VertexFormat;
            invokevirtual javafx.scene.shape.VertexFormat.getVertexIndexSize:()I
            istore 9 /* vertexIndexSize */
        start local 9 // int vertexIndexSize
         1: .line 636
            aload 0 /* this */
            invokevirtual javafx.scene.shape.TriangleMesh.getVertexFormat:()Ljavafx/scene/shape/VertexFormat;
            invokevirtual javafx.scene.shape.VertexFormat.getPointElementSize:()I
            istore 10 /* pointElementSize */
        start local 10 // int pointElementSize
         2: .line 637
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.faces:Ljavafx/scene/shape/ObservableFaceArray;
            iload 4 /* faceIndex */
            invokeinterface javafx.scene.shape.ObservableFaceArray.get:(I)I
            iload 10 /* pointElementSize */
            imul
            istore 11 /* v0Idx */
        start local 11 // int v0Idx
         3: .line 638
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.faces:Ljavafx/scene/shape/ObservableFaceArray;
            iload 4 /* faceIndex */
            iload 9 /* vertexIndexSize */
            iadd
            invokeinterface javafx.scene.shape.ObservableFaceArray.get:(I)I
            iload 10 /* pointElementSize */
            imul
            istore 12 /* v1Idx */
        start local 12 // int v1Idx
         4: .line 639
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.faces:Ljavafx/scene/shape/ObservableFaceArray;
            iload 4 /* faceIndex */
            iconst_2
            iload 9 /* vertexIndexSize */
            imul
            iadd
            invokeinterface javafx.scene.shape.ObservableFaceArray.get:(I)I
            iload 10 /* pointElementSize */
            imul
            istore 13 /* v2Idx */
        start local 13 // int v2Idx
         5: .line 641
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.points:Ljavafx/collections/ObservableFloatArray;
            iload 11 /* v0Idx */
            invokeinterface javafx.collections.ObservableFloatArray.get:(I)F
            fstore 14 /* v0x */
        start local 14 // float v0x
         6: .line 642
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.points:Ljavafx/collections/ObservableFloatArray;
            iload 11 /* v0Idx */
            iconst_1
            iadd
            invokeinterface javafx.collections.ObservableFloatArray.get:(I)F
            fstore 15 /* v0y */
        start local 15 // float v0y
         7: .line 643
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.points:Ljavafx/collections/ObservableFloatArray;
            iload 11 /* v0Idx */
            iconst_2
            iadd
            invokeinterface javafx.collections.ObservableFloatArray.get:(I)F
            fstore 16 /* v0z */
        start local 16 // float v0z
         8: .line 644
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.points:Ljavafx/collections/ObservableFloatArray;
            iload 12 /* v1Idx */
            invokeinterface javafx.collections.ObservableFloatArray.get:(I)F
            fstore 17 /* v1x */
        start local 17 // float v1x
         9: .line 645
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.points:Ljavafx/collections/ObservableFloatArray;
            iload 12 /* v1Idx */
            iconst_1
            iadd
            invokeinterface javafx.collections.ObservableFloatArray.get:(I)F
            fstore 18 /* v1y */
        start local 18 // float v1y
        10: .line 646
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.points:Ljavafx/collections/ObservableFloatArray;
            iload 12 /* v1Idx */
            iconst_2
            iadd
            invokeinterface javafx.collections.ObservableFloatArray.get:(I)F
            fstore 19 /* v1z */
        start local 19 // float v1z
        11: .line 647
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.points:Ljavafx/collections/ObservableFloatArray;
            iload 13 /* v2Idx */
            invokeinterface javafx.collections.ObservableFloatArray.get:(I)F
            fstore 20 /* v2x */
        start local 20 // float v2x
        12: .line 648
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.points:Ljavafx/collections/ObservableFloatArray;
            iload 13 /* v2Idx */
            iconst_1
            iadd
            invokeinterface javafx.collections.ObservableFloatArray.get:(I)F
            fstore 21 /* v2y */
        start local 21 // float v2y
        13: .line 649
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.points:Ljavafx/collections/ObservableFloatArray;
            iload 13 /* v2Idx */
            iconst_2
            iadd
            invokeinterface javafx.collections.ObservableFloatArray.get:(I)F
            fstore 22 /* v2z */
        start local 22 // float v2z
        14: .line 652
            fload 17 /* v1x */
            fload 14 /* v0x */
            fsub
            fstore 23 /* e1x */
        start local 23 // float e1x
        15: .line 653
            fload 18 /* v1y */
            fload 15 /* v0y */
            fsub
            fstore 24 /* e1y */
        start local 24 // float e1y
        16: .line 654
            fload 19 /* v1z */
            fload 16 /* v0z */
            fsub
            fstore 25 /* e1z */
        start local 25 // float e1z
        17: .line 656
            fload 20 /* v2x */
            fload 14 /* v0x */
            fsub
            fstore 26 /* e2x */
        start local 26 // float e2x
        18: .line 657
            fload 21 /* v2y */
            fload 15 /* v0y */
            fsub
            fstore 27 /* e2y */
        start local 27 // float e2y
        19: .line 658
            fload 22 /* v2z */
            fload 16 /* v0z */
            fsub
            fstore 28 /* e2z */
        start local 28 // float e2z
        20: .line 661
            aload 3 /* dir */
            getfield com.sun.javafx.geom.Vec3d.y:D
            fload 28 /* e2z */
            f2d
            dmul
            aload 3 /* dir */
            getfield com.sun.javafx.geom.Vec3d.z:D
            fload 27 /* e2y */
            f2d
            dmul
            dsub
            dstore 29 /* hx */
        start local 29 // double hx
        21: .line 662
            aload 3 /* dir */
            getfield com.sun.javafx.geom.Vec3d.z:D
            fload 26 /* e2x */
            f2d
            dmul
            aload 3 /* dir */
            getfield com.sun.javafx.geom.Vec3d.x:D
            fload 28 /* e2z */
            f2d
            dmul
            dsub
            dstore 31 /* hy */
        start local 31 // double hy
        22: .line 663
            aload 3 /* dir */
            getfield com.sun.javafx.geom.Vec3d.x:D
            fload 27 /* e2y */
            f2d
            dmul
            aload 3 /* dir */
            getfield com.sun.javafx.geom.Vec3d.y:D
            fload 26 /* e2x */
            f2d
            dmul
            dsub
            dstore 33 /* hz */
        start local 33 // double hz
        23: .line 666
            fload 23 /* e1x */
            f2d
            dload 29 /* hx */
            dmul
            fload 24 /* e1y */
            f2d
            dload 31 /* hy */
            dmul
            dadd
            fload 25 /* e1z */
            f2d
            dload 33 /* hz */
            dmul
            dadd
            dstore 35 /* a */
        start local 35 // double a
        24: .line 667
            dload 35 /* a */
            dconst_0
            dcmpl
            ifne 26
        25: .line 668
            iconst_0
            ireturn
        26: .line 670
      StackMap locals: javafx.scene.shape.TriangleMesh com.sun.javafx.geom.PickRay com.sun.javafx.geom.Vec3d com.sun.javafx.geom.Vec3d int javafx.scene.shape.CullFace javafx.scene.Node int com.sun.javafx.scene.input.PickResultChooser int int int int int float float float float float float float float float float float float float float float double double double double
      StackMap stack:
            dconst_1
            dload 35 /* a */
            ddiv
            dstore 37 /* f */
        start local 37 // double f
        27: .line 673
            aload 2 /* origin */
            getfield com.sun.javafx.geom.Vec3d.x:D
            fload 14 /* v0x */
            f2d
            dsub
            dstore 39 /* sx */
        start local 39 // double sx
        28: .line 674
            aload 2 /* origin */
            getfield com.sun.javafx.geom.Vec3d.y:D
            fload 15 /* v0y */
            f2d
            dsub
            dstore 41 /* sy */
        start local 41 // double sy
        29: .line 675
            aload 2 /* origin */
            getfield com.sun.javafx.geom.Vec3d.z:D
            fload 16 /* v0z */
            f2d
            dsub
            dstore 43 /* sz */
        start local 43 // double sz
        30: .line 678
            dload 37 /* f */
            dload 39 /* sx */
            dload 29 /* hx */
            dmul
            dload 41 /* sy */
            dload 31 /* hy */
            dmul
            dadd
            dload 43 /* sz */
            dload 33 /* hz */
            dmul
            dadd
            dmul
            dstore 45 /* u */
        start local 45 // double u
        31: .line 680
            dload 45 /* u */
            dconst_0
            dcmpg
            iflt 32
            dload 45 /* u */
            dconst_1
            dcmpl
            ifle 33
        32: .line 681
      StackMap locals: javafx.scene.shape.TriangleMesh com.sun.javafx.geom.PickRay com.sun.javafx.geom.Vec3d com.sun.javafx.geom.Vec3d int javafx.scene.shape.CullFace javafx.scene.Node int com.sun.javafx.scene.input.PickResultChooser int int int int int float float float float float float float float float float float float float float float double double double double double double double double double
      StackMap stack:
            iconst_0
            ireturn
        33: .line 685
      StackMap locals:
      StackMap stack:
            dload 41 /* sy */
            fload 25 /* e1z */
            f2d
            dmul
            dload 43 /* sz */
            fload 24 /* e1y */
            f2d
            dmul
            dsub
            dstore 47 /* qx */
        start local 47 // double qx
        34: .line 686
            dload 43 /* sz */
            fload 23 /* e1x */
            f2d
            dmul
            dload 39 /* sx */
            fload 25 /* e1z */
            f2d
            dmul
            dsub
            dstore 49 /* qy */
        start local 49 // double qy
        35: .line 687
            dload 39 /* sx */
            fload 24 /* e1y */
            f2d
            dmul
            dload 41 /* sy */
            fload 23 /* e1x */
            f2d
            dmul
            dsub
            dstore 51 /* qz */
        start local 51 // double qz
        36: .line 690
            dload 37 /* f */
            aload 3 /* dir */
            getfield com.sun.javafx.geom.Vec3d.x:D
            dload 47 /* qx */
            dmul
            aload 3 /* dir */
            getfield com.sun.javafx.geom.Vec3d.y:D
            dload 49 /* qy */
            dmul
            dadd
            aload 3 /* dir */
            getfield com.sun.javafx.geom.Vec3d.z:D
            dload 51 /* qz */
            dmul
            dadd
            dmul
            dstore 53 /* v */
        start local 53 // double v
        37: .line 692
            dload 53 /* v */
            dconst_0
            dcmpg
            iflt 38
            dload 45 /* u */
            dload 53 /* v */
            dadd
            dconst_1
            dcmpl
            ifle 39
        38: .line 693
      StackMap locals: javafx.scene.shape.TriangleMesh com.sun.javafx.geom.PickRay com.sun.javafx.geom.Vec3d com.sun.javafx.geom.Vec3d int javafx.scene.shape.CullFace javafx.scene.Node int com.sun.javafx.scene.input.PickResultChooser int int int int int float float float float float float float float float float float float float float float double double double double double double double double double double double double double
      StackMap stack:
            iconst_0
            ireturn
        39: .line 697
      StackMap locals:
      StackMap stack:
            dload 37 /* f */
            fload 26 /* e2x */
            f2d
            dload 47 /* qx */
            dmul
            fload 27 /* e2y */
            f2d
            dload 49 /* qy */
            dmul
            dadd
            fload 28 /* e2z */
            f2d
            dload 51 /* qz */
            dmul
            dadd
            dmul
            dstore 55 /* t */
        start local 55 // double t
        40: .line 699
            dload 55 /* t */
            aload 1 /* pickRay */
            invokevirtual com.sun.javafx.geom.PickRay.getNearClip:()D
            dcmpl
            iflt 126
            dload 55 /* t */
            aload 1 /* pickRay */
            invokevirtual com.sun.javafx.geom.PickRay.getFarClip:()D
            dcmpg
            ifgt 126
        41: .line 703
            aload 5 /* cullFace */
            getstatic javafx.scene.shape.CullFace.NONE:Ljavafx/scene/shape/CullFace;
            if_acmpeq 53
        42: .line 705
            new javafx.geometry.Point3D
            dup
        43: .line 706
            fload 24 /* e1y */
            fload 28 /* e2z */
            fmul
            fload 25 /* e1z */
            fload 27 /* e2y */
            fmul
            fsub
            f2d
        44: .line 707
            fload 25 /* e1z */
            fload 26 /* e2x */
            fmul
            fload 23 /* e1x */
            fload 28 /* e2z */
            fmul
            fsub
            f2d
        45: .line 708
            fload 23 /* e1x */
            fload 27 /* e2y */
            fmul
            fload 24 /* e1y */
            fload 26 /* e2x */
            fmul
            fsub
            f2d
        46: .line 705
            invokespecial javafx.geometry.Point3D.<init>:(DDD)V
            astore 57 /* normal */
        start local 57 // javafx.geometry.Point3D normal
        47: .line 710
            aload 57 /* normal */
        48: .line 711
            new javafx.geometry.Point3D
            dup
            aload 3 /* dir */
            getfield com.sun.javafx.geom.Vec3d.x:D
            dneg
            aload 3 /* dir */
            getfield com.sun.javafx.geom.Vec3d.y:D
            dneg
            aload 3 /* dir */
            getfield com.sun.javafx.geom.Vec3d.z:D
            dneg
            invokespecial javafx.geometry.Point3D.<init>:(DDD)V
        49: .line 710
            invokevirtual javafx.geometry.Point3D.angle:(Ljavafx/geometry/Point3D;)D
            dstore 58 /* nangle */
        start local 58 // double nangle
        50: .line 712
            dload 58 /* nangle */
            ldc 90.0
            dcmpl
            ifge 51
            aload 5 /* cullFace */
            getstatic javafx.scene.shape.CullFace.BACK:Ljavafx/scene/shape/CullFace;
            if_acmpeq 53
        51: .line 713
      StackMap locals: double javafx.geometry.Point3D double
      StackMap stack:
            dload 58 /* nangle */
            ldc 90.0
            dcmpg
            ifle 52
            aload 5 /* cullFace */
            getstatic javafx.scene.shape.CullFace.FRONT:Ljavafx/scene/shape/CullFace;
            if_acmpeq 53
        52: .line 715
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 58 // double nangle
        end local 57 // javafx.geometry.Point3D normal
        53: .line 719
      StackMap locals:
      StackMap stack:
            dload 55 /* t */
            invokestatic java.lang.Double.isInfinite:(D)Z
            ifne 54
            dload 55 /* t */
            invokestatic java.lang.Double.isNaN:(D)Z
            ifeq 55
        54: .line 721
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        55: .line 724
      StackMap locals:
      StackMap stack:
            aload 8 /* result */
            ifnull 56
            aload 8 /* result */
            dload 55 /* t */
            invokevirtual com.sun.javafx.scene.input.PickResultChooser.isCloser:(D)Z
            ifne 57
        56: .line 728
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        57: .line 731
      StackMap locals:
      StackMap stack:
            aload 1 /* pickRay */
            dload 55 /* t */
            invokestatic com.sun.javafx.scene.input.PickResultChooser.computePoint:(Lcom/sun/javafx/geom/PickRay;D)Ljavafx/geometry/Point3D;
            astore 57 /* point */
        start local 57 // javafx.geometry.Point3D point
        58: .line 737
            aload 0 /* this */
        59: .line 738
            fload 14 /* v0x */
            f2d
            fload 15 /* v0y */
            f2d
            fload 16 /* v0z */
            f2d
        60: .line 739
            fload 17 /* v1x */
            f2d
            fload 18 /* v1y */
            f2d
            fload 19 /* v1z */
            f2d
        61: .line 740
            fload 20 /* v2x */
            f2d
            fload 21 /* v2y */
            f2d
            fload 22 /* v2z */
            f2d
        62: .line 737
            invokevirtual javafx.scene.shape.TriangleMesh.computeCentroid:(DDDDDDDDD)Ljavafx/geometry/Point3D;
            astore 58 /* centroid */
        start local 58 // javafx.geometry.Point3D centroid
        63: .line 743
            new javafx.geometry.Point3D
            dup
        64: .line 744
            fload 14 /* v0x */
            f2d
            aload 58 /* centroid */
            invokevirtual javafx.geometry.Point3D.getX:()D
            dsub
        65: .line 745
            fload 15 /* v0y */
            f2d
            aload 58 /* centroid */
            invokevirtual javafx.geometry.Point3D.getY:()D
            dsub
        66: .line 746
            fload 16 /* v0z */
            f2d
            aload 58 /* centroid */
            invokevirtual javafx.geometry.Point3D.getZ:()D
            dsub
        67: .line 743
            invokespecial javafx.geometry.Point3D.<init>:(DDD)V
            astore 59 /* cv0 */
        start local 59 // javafx.geometry.Point3D cv0
        68: .line 748
            new javafx.geometry.Point3D
            dup
        69: .line 749
            fload 17 /* v1x */
            f2d
            aload 58 /* centroid */
            invokevirtual javafx.geometry.Point3D.getX:()D
            dsub
        70: .line 750
            fload 18 /* v1y */
            f2d
            aload 58 /* centroid */
            invokevirtual javafx.geometry.Point3D.getY:()D
            dsub
        71: .line 751
            fload 19 /* v1z */
            f2d
            aload 58 /* centroid */
            invokevirtual javafx.geometry.Point3D.getZ:()D
            dsub
        72: .line 748
            invokespecial javafx.geometry.Point3D.<init>:(DDD)V
            astore 60 /* cv1 */
        start local 60 // javafx.geometry.Point3D cv1
        73: .line 753
            new javafx.geometry.Point3D
            dup
        74: .line 754
            fload 20 /* v2x */
            f2d
            aload 58 /* centroid */
            invokevirtual javafx.geometry.Point3D.getX:()D
            dsub
        75: .line 755
            fload 21 /* v2y */
            f2d
            aload 58 /* centroid */
            invokevirtual javafx.geometry.Point3D.getY:()D
            dsub
        76: .line 756
            fload 22 /* v2z */
            f2d
            aload 58 /* centroid */
            invokevirtual javafx.geometry.Point3D.getZ:()D
            dsub
        77: .line 753
            invokespecial javafx.geometry.Point3D.<init>:(DDD)V
            astore 61 /* cv2 */
        start local 61 // javafx.geometry.Point3D cv2
        78: .line 758
            aload 60 /* cv1 */
            aload 59 /* cv0 */
            invokevirtual javafx.geometry.Point3D.subtract:(Ljavafx/geometry/Point3D;)Ljavafx/geometry/Point3D;
            astore 62 /* ce1 */
        start local 62 // javafx.geometry.Point3D ce1
        79: .line 759
            aload 61 /* cv2 */
            aload 59 /* cv0 */
            invokevirtual javafx.geometry.Point3D.subtract:(Ljavafx/geometry/Point3D;)Ljavafx/geometry/Point3D;
            astore 63 /* ce2 */
        start local 63 // javafx.geometry.Point3D ce2
        80: .line 760
            aload 62 /* ce1 */
            aload 63 /* ce2 */
            invokevirtual javafx.geometry.Point3D.crossProduct:(Ljavafx/geometry/Point3D;)Ljavafx/geometry/Point3D;
            astore 64 /* n */
        start local 64 // javafx.geometry.Point3D n
        81: .line 761
            aload 64 /* n */
            invokevirtual javafx.geometry.Point3D.getZ:()D
            dconst_0
            dcmpg
            ifge 83
        82: .line 762
            new javafx.geometry.Point3D
            dup
            aload 64 /* n */
            invokevirtual javafx.geometry.Point3D.getX:()D
            dneg
            aload 64 /* n */
            invokevirtual javafx.geometry.Point3D.getY:()D
            dneg
            aload 64 /* n */
            invokevirtual javafx.geometry.Point3D.getZ:()D
            dneg
            invokespecial javafx.geometry.Point3D.<init>:(DDD)V
            astore 64 /* n */
        83: .line 764
      StackMap locals: javafx.scene.shape.TriangleMesh com.sun.javafx.geom.PickRay com.sun.javafx.geom.Vec3d com.sun.javafx.geom.Vec3d int javafx.scene.shape.CullFace javafx.scene.Node int com.sun.javafx.scene.input.PickResultChooser int int int int int float float float float float float float float float float float float float float float double double double double double double double double double double double double double double javafx.geometry.Point3D javafx.geometry.Point3D javafx.geometry.Point3D javafx.geometry.Point3D javafx.geometry.Point3D javafx.geometry.Point3D javafx.geometry.Point3D javafx.geometry.Point3D
      StackMap stack:
            aload 64 /* n */
            getstatic javafx.scene.transform.Rotate.Z_AXIS:Ljavafx/geometry/Point3D;
            invokevirtual javafx.geometry.Point3D.crossProduct:(Ljavafx/geometry/Point3D;)Ljavafx/geometry/Point3D;
            astore 65 /* ax */
        start local 65 // javafx.geometry.Point3D ax
        84: .line 765
            aload 65 /* ax */
            invokevirtual javafx.geometry.Point3D.magnitude:()D
            aload 64 /* n */
            getstatic javafx.scene.transform.Rotate.Z_AXIS:Ljavafx/geometry/Point3D;
            invokevirtual javafx.geometry.Point3D.dotProduct:(Ljavafx/geometry/Point3D;)D
            invokestatic java.lang.Math.atan2:(DD)D
            dstore 66 /* angle */
        start local 66 // double angle
        85: .line 767
            new javafx.scene.transform.Rotate
            dup
            dload 66 /* angle */
            invokestatic java.lang.Math.toDegrees:(D)D
            aload 65 /* ax */
            invokespecial javafx.scene.transform.Rotate.<init>:(DLjavafx/geometry/Point3D;)V
            astore 68 /* r */
        start local 68 // javafx.scene.transform.Rotate r
        86: .line 768
            aload 68 /* r */
            aload 59 /* cv0 */
            invokevirtual javafx.scene.transform.Rotate.transform:(Ljavafx/geometry/Point3D;)Ljavafx/geometry/Point3D;
            astore 69 /* crv0 */
        start local 69 // javafx.geometry.Point3D crv0
        87: .line 769
            aload 68 /* r */
            aload 60 /* cv1 */
            invokevirtual javafx.scene.transform.Rotate.transform:(Ljavafx/geometry/Point3D;)Ljavafx/geometry/Point3D;
            astore 70 /* crv1 */
        start local 70 // javafx.geometry.Point3D crv1
        88: .line 770
            aload 68 /* r */
            aload 61 /* cv2 */
            invokevirtual javafx.scene.transform.Rotate.transform:(Ljavafx/geometry/Point3D;)Ljavafx/geometry/Point3D;
            astore 71 /* crv2 */
        start local 71 // javafx.geometry.Point3D crv2
        89: .line 771
            aload 68 /* r */
            aload 57 /* point */
            aload 58 /* centroid */
            invokevirtual javafx.geometry.Point3D.subtract:(Ljavafx/geometry/Point3D;)Ljavafx/geometry/Point3D;
            invokevirtual javafx.scene.transform.Rotate.transform:(Ljavafx/geometry/Point3D;)Ljavafx/geometry/Point3D;
            astore 72 /* rPoint */
        start local 72 // javafx.geometry.Point3D rPoint
        90: .line 773
            new javafx.geometry.Point2D
            dup
            aload 69 /* crv0 */
            invokevirtual javafx.geometry.Point3D.getX:()D
            aload 69 /* crv0 */
            invokevirtual javafx.geometry.Point3D.getY:()D
            invokespecial javafx.geometry.Point2D.<init>:(DD)V
            astore 73 /* flatV0 */
        start local 73 // javafx.geometry.Point2D flatV0
        91: .line 774
            new javafx.geometry.Point2D
            dup
            aload 70 /* crv1 */
            invokevirtual javafx.geometry.Point3D.getX:()D
            aload 70 /* crv1 */
            invokevirtual javafx.geometry.Point3D.getY:()D
            invokespecial javafx.geometry.Point2D.<init>:(DD)V
            astore 74 /* flatV1 */
        start local 74 // javafx.geometry.Point2D flatV1
        92: .line 775
            new javafx.geometry.Point2D
            dup
            aload 71 /* crv2 */
            invokevirtual javafx.geometry.Point3D.getX:()D
            aload 71 /* crv2 */
            invokevirtual javafx.geometry.Point3D.getY:()D
            invokespecial javafx.geometry.Point2D.<init>:(DD)V
            astore 75 /* flatV2 */
        start local 75 // javafx.geometry.Point2D flatV2
        93: .line 776
            new javafx.geometry.Point2D
            dup
            aload 72 /* rPoint */
            invokevirtual javafx.geometry.Point3D.getX:()D
            aload 72 /* rPoint */
            invokevirtual javafx.geometry.Point3D.getY:()D
            invokespecial javafx.geometry.Point2D.<init>:(DD)V
            astore 76 /* flatPoint */
        start local 76 // javafx.geometry.Point2D flatPoint
        94: .line 779
            aload 0 /* this */
            invokevirtual javafx.scene.shape.TriangleMesh.getVertexFormat:()Ljavafx/scene/shape/VertexFormat;
            invokevirtual javafx.scene.shape.VertexFormat.getTexCoordElementSize:()I
            istore 77 /* texCoordElementSize */
        start local 77 // int texCoordElementSize
        95: .line 780
            aload 0 /* this */
            invokevirtual javafx.scene.shape.TriangleMesh.getVertexFormat:()Ljavafx/scene/shape/VertexFormat;
            invokevirtual javafx.scene.shape.VertexFormat.getTexCoordIndexOffset:()I
            istore 78 /* texCoordOffset */
        start local 78 // int texCoordOffset
        96: .line 781
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.faces:Ljavafx/scene/shape/ObservableFaceArray;
            iload 4 /* faceIndex */
            iload 78 /* texCoordOffset */
            iadd
            invokeinterface javafx.scene.shape.ObservableFaceArray.get:(I)I
            iload 77 /* texCoordElementSize */
            imul
            istore 79 /* t0Idx */
        start local 79 // int t0Idx
        97: .line 782
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.faces:Ljavafx/scene/shape/ObservableFaceArray;
            iload 4 /* faceIndex */
            iload 9 /* vertexIndexSize */
            iadd
            iload 78 /* texCoordOffset */
            iadd
            invokeinterface javafx.scene.shape.ObservableFaceArray.get:(I)I
            iload 77 /* texCoordElementSize */
            imul
            istore 80 /* t1Idx */
        start local 80 // int t1Idx
        98: .line 783
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.faces:Ljavafx/scene/shape/ObservableFaceArray;
            iload 4 /* faceIndex */
            iload 9 /* vertexIndexSize */
            iconst_2
            imul
            iadd
            iload 78 /* texCoordOffset */
            iadd
            invokeinterface javafx.scene.shape.ObservableFaceArray.get:(I)I
            iload 77 /* texCoordElementSize */
            imul
            istore 81 /* t2Idx */
        start local 81 // int t2Idx
        99: .line 785
            new javafx.geometry.Point2D
            dup
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.texCoords:Ljavafx/collections/ObservableFloatArray;
            iload 79 /* t0Idx */
            invokeinterface javafx.collections.ObservableFloatArray.get:(I)F
            f2d
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.texCoords:Ljavafx/collections/ObservableFloatArray;
            iload 79 /* t0Idx */
            iconst_1
            iadd
            invokeinterface javafx.collections.ObservableFloatArray.get:(I)F
            f2d
            invokespecial javafx.geometry.Point2D.<init>:(DD)V
            astore 82 /* u0 */
        start local 82 // javafx.geometry.Point2D u0
       100: .line 786
            new javafx.geometry.Point2D
            dup
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.texCoords:Ljavafx/collections/ObservableFloatArray;
            iload 80 /* t1Idx */
            invokeinterface javafx.collections.ObservableFloatArray.get:(I)F
            f2d
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.texCoords:Ljavafx/collections/ObservableFloatArray;
            iload 80 /* t1Idx */
            iconst_1
            iadd
            invokeinterface javafx.collections.ObservableFloatArray.get:(I)F
            f2d
            invokespecial javafx.geometry.Point2D.<init>:(DD)V
            astore 83 /* u1 */
        start local 83 // javafx.geometry.Point2D u1
       101: .line 787
            new javafx.geometry.Point2D
            dup
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.texCoords:Ljavafx/collections/ObservableFloatArray;
            iload 81 /* t2Idx */
            invokeinterface javafx.collections.ObservableFloatArray.get:(I)F
            f2d
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.texCoords:Ljavafx/collections/ObservableFloatArray;
            iload 81 /* t2Idx */
            iconst_1
            iadd
            invokeinterface javafx.collections.ObservableFloatArray.get:(I)F
            f2d
            invokespecial javafx.geometry.Point2D.<init>:(DD)V
            astore 84 /* u2 */
        start local 84 // javafx.geometry.Point2D u2
       102: .line 789
            aload 0 /* this */
            aload 82 /* u0 */
            aload 83 /* u1 */
            aload 84 /* u2 */
            invokevirtual javafx.scene.shape.TriangleMesh.computeCentroid:(Ljavafx/geometry/Point2D;Ljavafx/geometry/Point2D;Ljavafx/geometry/Point2D;)Ljavafx/geometry/Point2D;
            astore 85 /* txCentroid */
        start local 85 // javafx.geometry.Point2D txCentroid
       103: .line 791
            aload 82 /* u0 */
            aload 85 /* txCentroid */
            invokevirtual javafx.geometry.Point2D.subtract:(Ljavafx/geometry/Point2D;)Ljavafx/geometry/Point2D;
            astore 86 /* cu0 */
        start local 86 // javafx.geometry.Point2D cu0
       104: .line 792
            aload 83 /* u1 */
            aload 85 /* txCentroid */
            invokevirtual javafx.geometry.Point2D.subtract:(Ljavafx/geometry/Point2D;)Ljavafx/geometry/Point2D;
            astore 87 /* cu1 */
        start local 87 // javafx.geometry.Point2D cu1
       105: .line 793
            aload 84 /* u2 */
            aload 85 /* txCentroid */
            invokevirtual javafx.geometry.Point2D.subtract:(Ljavafx/geometry/Point2D;)Ljavafx/geometry/Point2D;
            astore 88 /* cu2 */
        start local 88 // javafx.geometry.Point2D cu2
       106: .line 797
            new javafx.scene.transform.Affine
            dup
       107: .line 798
            aload 73 /* flatV0 */
            invokevirtual javafx.geometry.Point2D.getX:()D
            aload 74 /* flatV1 */
            invokevirtual javafx.geometry.Point2D.getX:()D
            aload 75 /* flatV2 */
            invokevirtual javafx.geometry.Point2D.getX:()D
       108: .line 799
            aload 73 /* flatV0 */
            invokevirtual javafx.geometry.Point2D.getY:()D
            aload 74 /* flatV1 */
            invokevirtual javafx.geometry.Point2D.getY:()D
            aload 75 /* flatV2 */
            invokevirtual javafx.geometry.Point2D.getY:()D
       109: .line 797
            invokespecial javafx.scene.transform.Affine.<init>:(DDDDDD)V
            astore 89 /* src */
        start local 89 // javafx.scene.transform.Affine src
       110: .line 800
            new javafx.scene.transform.Affine
            dup
       111: .line 801
            aload 86 /* cu0 */
            invokevirtual javafx.geometry.Point2D.getX:()D
            aload 87 /* cu1 */
            invokevirtual javafx.geometry.Point2D.getX:()D
            aload 88 /* cu2 */
            invokevirtual javafx.geometry.Point2D.getX:()D
       112: .line 802
            aload 86 /* cu0 */
            invokevirtual javafx.geometry.Point2D.getY:()D
            aload 87 /* cu1 */
            invokevirtual javafx.geometry.Point2D.getY:()D
            aload 88 /* cu2 */
            invokevirtual javafx.geometry.Point2D.getY:()D
       113: .line 800
            invokespecial javafx.scene.transform.Affine.<init>:(DDDDDD)V
            astore 90 /* trg */
        start local 90 // javafx.scene.transform.Affine trg
       114: .line 804
            aconst_null
            astore 91 /* txCoords */
        start local 91 // javafx.geometry.Point2D txCoords
       115: .line 807
            aload 89 /* src */
            invokevirtual javafx.scene.transform.Affine.invert:()V
       116: .line 808
            aload 90 /* trg */
            aload 89 /* src */
            invokevirtual javafx.scene.transform.Affine.append:(Ljavafx/scene/transform/Transform;)V
       117: .line 809
            aload 85 /* txCentroid */
            aload 90 /* trg */
            aload 76 /* flatPoint */
            invokevirtual javafx.scene.transform.Affine.transform:(Ljavafx/geometry/Point2D;)Ljavafx/geometry/Point2D;
            invokevirtual javafx.geometry.Point2D.add:(Ljavafx/geometry/Point2D;)Ljavafx/geometry/Point2D;
            astore 91 /* txCoords */
       118: .line 810
            goto 120
      StackMap locals: javafx.scene.shape.TriangleMesh com.sun.javafx.geom.PickRay com.sun.javafx.geom.Vec3d com.sun.javafx.geom.Vec3d int javafx.scene.shape.CullFace javafx.scene.Node int com.sun.javafx.scene.input.PickResultChooser int int int int int float float float float float float float float float float float float float float float double double double double double double double double double double double double double double javafx.geometry.Point3D javafx.geometry.Point3D javafx.geometry.Point3D javafx.geometry.Point3D javafx.geometry.Point3D javafx.geometry.Point3D javafx.geometry.Point3D javafx.geometry.Point3D javafx.geometry.Point3D double javafx.scene.transform.Rotate javafx.geometry.Point3D javafx.geometry.Point3D javafx.geometry.Point3D javafx.geometry.Point3D javafx.geometry.Point2D javafx.geometry.Point2D javafx.geometry.Point2D javafx.geometry.Point2D int int int int int javafx.geometry.Point2D javafx.geometry.Point2D javafx.geometry.Point2D javafx.geometry.Point2D javafx.geometry.Point2D javafx.geometry.Point2D javafx.geometry.Point2D javafx.scene.transform.Affine javafx.scene.transform.Affine javafx.geometry.Point2D
      StackMap stack: javafx.scene.transform.NonInvertibleTransformException
       119: pop
       120: .line 815
      StackMap locals:
      StackMap stack:
            aload 8 /* result */
            aload 6 /* candidate */
            dload 55 /* t */
       121: .line 816
            iload 7 /* reportFace */
            ifeq 122
            iload 4 /* faceIndex */
            aload 0 /* this */
            invokevirtual javafx.scene.shape.TriangleMesh.getFaceElementSize:()I
            idiv
            goto 123
      StackMap locals: javafx.scene.shape.TriangleMesh com.sun.javafx.geom.PickRay com.sun.javafx.geom.Vec3d com.sun.javafx.geom.Vec3d int javafx.scene.shape.CullFace javafx.scene.Node int com.sun.javafx.scene.input.PickResultChooser int int int int int float float float float float float float float float float float float float float float double double double double double double double double double double double double double double javafx.geometry.Point3D javafx.geometry.Point3D javafx.geometry.Point3D javafx.geometry.Point3D javafx.geometry.Point3D javafx.geometry.Point3D javafx.geometry.Point3D javafx.geometry.Point3D javafx.geometry.Point3D double javafx.scene.transform.Rotate javafx.geometry.Point3D javafx.geometry.Point3D javafx.geometry.Point3D javafx.geometry.Point3D javafx.geometry.Point2D javafx.geometry.Point2D javafx.geometry.Point2D javafx.geometry.Point2D int int int int int javafx.geometry.Point2D javafx.geometry.Point2D javafx.geometry.Point2D javafx.geometry.Point2D javafx.geometry.Point2D javafx.geometry.Point2D javafx.geometry.Point2D javafx.scene.transform.Affine javafx.scene.transform.Affine javafx.geometry.Point2D
      StackMap stack: com.sun.javafx.scene.input.PickResultChooser javafx.scene.Node double
       122: iconst_m1
       123: .line 817
      StackMap locals: javafx.scene.shape.TriangleMesh com.sun.javafx.geom.PickRay com.sun.javafx.geom.Vec3d com.sun.javafx.geom.Vec3d int javafx.scene.shape.CullFace javafx.scene.Node int com.sun.javafx.scene.input.PickResultChooser int int int int int float float float float float float float float float float float float float float float double double double double double double double double double double double double double double javafx.geometry.Point3D javafx.geometry.Point3D javafx.geometry.Point3D javafx.geometry.Point3D javafx.geometry.Point3D javafx.geometry.Point3D javafx.geometry.Point3D javafx.geometry.Point3D javafx.geometry.Point3D double javafx.scene.transform.Rotate javafx.geometry.Point3D javafx.geometry.Point3D javafx.geometry.Point3D javafx.geometry.Point3D javafx.geometry.Point2D javafx.geometry.Point2D javafx.geometry.Point2D javafx.geometry.Point2D int int int int int javafx.geometry.Point2D javafx.geometry.Point2D javafx.geometry.Point2D javafx.geometry.Point2D javafx.geometry.Point2D javafx.geometry.Point2D javafx.geometry.Point2D javafx.scene.transform.Affine javafx.scene.transform.Affine javafx.geometry.Point2D
      StackMap stack: com.sun.javafx.scene.input.PickResultChooser javafx.scene.Node double int
            aload 57 /* point */
            aload 91 /* txCoords */
       124: .line 815
            invokevirtual com.sun.javafx.scene.input.PickResultChooser.offer:(Ljavafx/scene/Node;DILjavafx/geometry/Point3D;Ljavafx/geometry/Point2D;)Z
            pop
       125: .line 818
            iconst_1
            ireturn
        end local 91 // javafx.geometry.Point2D txCoords
        end local 90 // javafx.scene.transform.Affine trg
        end local 89 // javafx.scene.transform.Affine src
        end local 88 // javafx.geometry.Point2D cu2
        end local 87 // javafx.geometry.Point2D cu1
        end local 86 // javafx.geometry.Point2D cu0
        end local 85 // javafx.geometry.Point2D txCentroid
        end local 84 // javafx.geometry.Point2D u2
        end local 83 // javafx.geometry.Point2D u1
        end local 82 // javafx.geometry.Point2D u0
        end local 81 // int t2Idx
        end local 80 // int t1Idx
        end local 79 // int t0Idx
        end local 78 // int texCoordOffset
        end local 77 // int texCoordElementSize
        end local 76 // javafx.geometry.Point2D flatPoint
        end local 75 // javafx.geometry.Point2D flatV2
        end local 74 // javafx.geometry.Point2D flatV1
        end local 73 // javafx.geometry.Point2D flatV0
        end local 72 // javafx.geometry.Point3D rPoint
        end local 71 // javafx.geometry.Point3D crv2
        end local 70 // javafx.geometry.Point3D crv1
        end local 69 // javafx.geometry.Point3D crv0
        end local 68 // javafx.scene.transform.Rotate r
        end local 66 // double angle
        end local 65 // javafx.geometry.Point3D ax
        end local 64 // javafx.geometry.Point3D n
        end local 63 // javafx.geometry.Point3D ce2
        end local 62 // javafx.geometry.Point3D ce1
        end local 61 // javafx.geometry.Point3D cv2
        end local 60 // javafx.geometry.Point3D cv1
        end local 59 // javafx.geometry.Point3D cv0
        end local 58 // javafx.geometry.Point3D centroid
        end local 57 // javafx.geometry.Point3D point
       126: .line 821
      StackMap locals: javafx.scene.shape.TriangleMesh com.sun.javafx.geom.PickRay com.sun.javafx.geom.Vec3d com.sun.javafx.geom.Vec3d int javafx.scene.shape.CullFace javafx.scene.Node int com.sun.javafx.scene.input.PickResultChooser int int int int int float float float float float float float float float float float float float float float double double double double double double double double double double double double double double
      StackMap stack:
            iconst_0
            ireturn
        end local 55 // double t
        end local 53 // double v
        end local 51 // double qz
        end local 49 // double qy
        end local 47 // double qx
        end local 45 // double u
        end local 43 // double sz
        end local 41 // double sy
        end local 39 // double sx
        end local 37 // double f
        end local 35 // double a
        end local 33 // double hz
        end local 31 // double hy
        end local 29 // double hx
        end local 28 // float e2z
        end local 27 // float e2y
        end local 26 // float e2x
        end local 25 // float e1z
        end local 24 // float e1y
        end local 23 // float e1x
        end local 22 // float v2z
        end local 21 // float v2y
        end local 20 // float v2x
        end local 19 // float v1z
        end local 18 // float v1y
        end local 17 // float v1x
        end local 16 // float v0z
        end local 15 // float v0y
        end local 14 // float v0x
        end local 13 // int v2Idx
        end local 12 // int v1Idx
        end local 11 // int v0Idx
        end local 10 // int pointElementSize
        end local 9 // int vertexIndexSize
        end local 8 // com.sun.javafx.scene.input.PickResultChooser result
        end local 7 // boolean reportFace
        end local 6 // javafx.scene.Node candidate
        end local 5 // javafx.scene.shape.CullFace cullFace
        end local 4 // int faceIndex
        end local 3 // com.sun.javafx.geom.Vec3d dir
        end local 2 // com.sun.javafx.geom.Vec3d origin
        end local 1 // com.sun.javafx.geom.PickRay pickRay
        end local 0 // javafx.scene.shape.TriangleMesh this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0  127     0                 this  Ljavafx/scene/shape/TriangleMesh;
            0  127     1              pickRay  Lcom/sun/javafx/geom/PickRay;
            0  127     2               origin  Lcom/sun/javafx/geom/Vec3d;
            0  127     3                  dir  Lcom/sun/javafx/geom/Vec3d;
            0  127     4            faceIndex  I
            0  127     5             cullFace  Ljavafx/scene/shape/CullFace;
            0  127     6            candidate  Ljavafx/scene/Node;
            0  127     7           reportFace  Z
            0  127     8               result  Lcom/sun/javafx/scene/input/PickResultChooser;
            1  127     9      vertexIndexSize  I
            2  127    10     pointElementSize  I
            3  127    11                v0Idx  I
            4  127    12                v1Idx  I
            5  127    13                v2Idx  I
            6  127    14                  v0x  F
            7  127    15                  v0y  F
            8  127    16                  v0z  F
            9  127    17                  v1x  F
           10  127    18                  v1y  F
           11  127    19                  v1z  F
           12  127    20                  v2x  F
           13  127    21                  v2y  F
           14  127    22                  v2z  F
           15  127    23                  e1x  F
           16  127    24                  e1y  F
           17  127    25                  e1z  F
           18  127    26                  e2x  F
           19  127    27                  e2y  F
           20  127    28                  e2z  F
           21  127    29                   hx  D
           22  127    31                   hy  D
           23  127    33                   hz  D
           24  127    35                    a  D
           27  127    37                    f  D
           28  127    39                   sx  D
           29  127    41                   sy  D
           30  127    43                   sz  D
           31  127    45                    u  D
           34  127    47                   qx  D
           35  127    49                   qy  D
           36  127    51                   qz  D
           37  127    53                    v  D
           40  127    55                    t  D
           47   53    57               normal  Ljavafx/geometry/Point3D;
           50   53    58               nangle  D
           58  126    57                point  Ljavafx/geometry/Point3D;
           63  126    58             centroid  Ljavafx/geometry/Point3D;
           68  126    59                  cv0  Ljavafx/geometry/Point3D;
           73  126    60                  cv1  Ljavafx/geometry/Point3D;
           78  126    61                  cv2  Ljavafx/geometry/Point3D;
           79  126    62                  ce1  Ljavafx/geometry/Point3D;
           80  126    63                  ce2  Ljavafx/geometry/Point3D;
           81  126    64                    n  Ljavafx/geometry/Point3D;
           84  126    65                   ax  Ljavafx/geometry/Point3D;
           85  126    66                angle  D
           86  126    68                    r  Ljavafx/scene/transform/Rotate;
           87  126    69                 crv0  Ljavafx/geometry/Point3D;
           88  126    70                 crv1  Ljavafx/geometry/Point3D;
           89  126    71                 crv2  Ljavafx/geometry/Point3D;
           90  126    72               rPoint  Ljavafx/geometry/Point3D;
           91  126    73               flatV0  Ljavafx/geometry/Point2D;
           92  126    74               flatV1  Ljavafx/geometry/Point2D;
           93  126    75               flatV2  Ljavafx/geometry/Point2D;
           94  126    76            flatPoint  Ljavafx/geometry/Point2D;
           95  126    77  texCoordElementSize  I
           96  126    78       texCoordOffset  I
           97  126    79                t0Idx  I
           98  126    80                t1Idx  I
           99  126    81                t2Idx  I
          100  126    82                   u0  Ljavafx/geometry/Point2D;
          101  126    83                   u1  Ljavafx/geometry/Point2D;
          102  126    84                   u2  Ljavafx/geometry/Point2D;
          103  126    85           txCentroid  Ljavafx/geometry/Point2D;
          104  126    86                  cu0  Ljavafx/geometry/Point2D;
          105  126    87                  cu1  Ljavafx/geometry/Point2D;
          106  126    88                  cu2  Ljavafx/geometry/Point2D;
          110  126    89                  src  Ljavafx/scene/transform/Affine;
          114  126    90                  trg  Ljavafx/scene/transform/Affine;
          115  126    91             txCoords  Ljavafx/geometry/Point2D;
      Exception table:
        from    to  target  type
         115   118     119  Class javafx.scene.transform.NonInvertibleTransformException
    MethodParameters:
            Name  Flags
      pickRay     
      origin      
      dir         
      faceIndex   
      cullFace    
      candidate   
      reportFace  
      result      

  private boolean doComputeIntersects(com.sun.javafx.geom.PickRay, com.sun.javafx.scene.input.PickResultChooser, javafx.scene.Node, javafx.scene.shape.CullFace, boolean);
    descriptor: (Lcom/sun/javafx/geom/PickRay;Lcom/sun/javafx/scene/input/PickResultChooser;Ljavafx/scene/Node;Ljavafx/scene/shape/CullFace;Z)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=11, args_size=6
        start local 0 // javafx.scene.shape.TriangleMesh this
        start local 1 // com.sun.javafx.geom.PickRay pickRay
        start local 2 // com.sun.javafx.scene.input.PickResultChooser pickResult
        start local 3 // javafx.scene.Node candidate
        start local 4 // javafx.scene.shape.CullFace cullFace
        start local 5 // boolean reportFace
         0: .line 830
            iconst_0
            istore 6 /* found */
        start local 6 // boolean found
         1: .line 831
            aload 0 /* this */
            invokevirtual javafx.scene.shape.TriangleMesh.validate:()Z
            ifeq 14
         2: .line 832
            aload 0 /* this */
            getfield javafx.scene.shape.TriangleMesh.faces:Ljavafx/scene/shape/ObservableFaceArray;
            invokeinterface javafx.scene.shape.ObservableFaceArray.size:()I
            istore 7 /* size */
        start local 7 // int size
         3: .line 834
            aload 1 /* pickRay */
            invokevirtual com.sun.javafx.geom.PickRay.getOriginNoClone:()Lcom/sun/javafx/geom/Vec3d;
            astore 8 /* o */
        start local 8 // com.sun.javafx.geom.Vec3d o
         4: .line 836
            aload 1 /* pickRay */
            invokevirtual com.sun.javafx.geom.PickRay.getDirectionNoClone:()Lcom/sun/javafx/geom/Vec3d;
            astore 9 /* d */
        start local 9 // com.sun.javafx.geom.Vec3d d
         5: .line 838
            iconst_0
            istore 10 /* i */
        start local 10 // int i
         6: goto 13
         7: .line 839
      StackMap locals: javafx.scene.shape.TriangleMesh com.sun.javafx.geom.PickRay com.sun.javafx.scene.input.PickResultChooser javafx.scene.Node javafx.scene.shape.CullFace int int int com.sun.javafx.geom.Vec3d com.sun.javafx.geom.Vec3d int
      StackMap stack:
            aload 0 /* this */
            aload 1 /* pickRay */
            aload 8 /* o */
            aload 9 /* d */
            iload 10 /* i */
            aload 4 /* cullFace */
            aload 3 /* candidate */
         8: .line 840
            iload 5 /* reportFace */
            aload 2 /* pickResult */
         9: .line 839
            invokevirtual javafx.scene.shape.TriangleMesh.computeIntersectsFace:(Lcom/sun/javafx/geom/PickRay;Lcom/sun/javafx/geom/Vec3d;Lcom/sun/javafx/geom/Vec3d;ILjavafx/scene/shape/CullFace;Ljavafx/scene/Node;ZLcom/sun/javafx/scene/input/PickResultChooser;)Z
        10: .line 840
            ifeq 12
        11: .line 841
            iconst_1
            istore 6 /* found */
        12: .line 838
      StackMap locals:
      StackMap stack:
            iload 10 /* i */
            aload 0 /* this */
            invokevirtual javafx.scene.shape.TriangleMesh.getFaceElementSize:()I
            iadd
            istore 10 /* i */
      StackMap locals:
      StackMap stack:
        13: iload 10 /* i */
            iload 7 /* size */
            if_icmplt 7
        end local 10 // int i
        end local 9 // com.sun.javafx.geom.Vec3d d
        end local 8 // com.sun.javafx.geom.Vec3d o
        end local 7 // int size
        14: .line 845
      StackMap locals: javafx.scene.shape.TriangleMesh com.sun.javafx.geom.PickRay com.sun.javafx.scene.input.PickResultChooser javafx.scene.Node javafx.scene.shape.CullFace int int
      StackMap stack:
            iload 6 /* found */
            ireturn
        end local 6 // boolean found
        end local 5 // boolean reportFace
        end local 4 // javafx.scene.shape.CullFace cullFace
        end local 3 // javafx.scene.Node candidate
        end local 2 // com.sun.javafx.scene.input.PickResultChooser pickResult
        end local 1 // com.sun.javafx.geom.PickRay pickRay
        end local 0 // javafx.scene.shape.TriangleMesh this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   15     0        this  Ljavafx/scene/shape/TriangleMesh;
            0   15     1     pickRay  Lcom/sun/javafx/geom/PickRay;
            0   15     2  pickResult  Lcom/sun/javafx/scene/input/PickResultChooser;
            0   15     3   candidate  Ljavafx/scene/Node;
            0   15     4    cullFace  Ljavafx/scene/shape/CullFace;
            0   15     5  reportFace  Z
            1   15     6       found  Z
            3   14     7        size  I
            4   14     8           o  Lcom/sun/javafx/geom/Vec3d;
            5   14     9           d  Lcom/sun/javafx/geom/Vec3d;
            6   14    10           i  I
    MethodParameters:
            Name  Flags
      pickRay     
      pickResult  
      candidate   
      cullFace    
      reportFace  
}
SourceFile: "TriangleMesh.java"
NestMembers:
  javafx.scene.shape.TriangleMesh$1  javafx.scene.shape.TriangleMesh$2  javafx.scene.shape.TriangleMesh$Listener
InnerClasses:
  public abstract TriangleMeshAccessor = com.sun.javafx.scene.shape.TriangleMeshHelper$TriangleMeshAccessor of com.sun.javafx.scene.shape.TriangleMeshHelper
  javafx.scene.shape.TriangleMesh$1
  javafx.scene.shape.TriangleMesh$2
  private Listener = javafx.scene.shape.TriangleMesh$Listener of javafx.scene.shape.TriangleMesh