public abstract class com.sun.javafx.sg.prism.NGShape3D extends com.sun.javafx.sg.prism.NGNode
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: com.sun.javafx.sg.prism.NGShape3D
  super_class: com.sun.javafx.sg.prism.NGNode
{
  private com.sun.javafx.sg.prism.NGPhongMaterial material;
    descriptor: Lcom/sun/javafx/sg/prism/NGPhongMaterial;
    flags: (0x0002) ACC_PRIVATE

  private javafx.scene.shape.DrawMode drawMode;
    descriptor: Ljavafx/scene/shape/DrawMode;
    flags: (0x0002) ACC_PRIVATE

  private javafx.scene.shape.CullFace cullFace;
    descriptor: Ljavafx/scene/shape/CullFace;
    flags: (0x0002) ACC_PRIVATE

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

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

  com.sun.javafx.sg.prism.NGTriangleMesh mesh;
    descriptor: Lcom/sun/javafx/sg/prism/NGTriangleMesh;
    flags: (0x0000) 

  private com.sun.prism.MeshView meshView;
    descriptor: Lcom/sun/prism/MeshView;
    flags: (0x0002) ACC_PRIVATE

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.javafx.sg.prism.NGShape3D this
         0: .line 42
            aload 0 /* this */
            invokespecial com.sun.javafx.sg.prism.NGNode.<init>:()V
         1: .line 46
            aload 0 /* this */
            iconst_0
            putfield com.sun.javafx.sg.prism.NGShape3D.materialDirty:Z
         2: .line 47
            aload 0 /* this */
            iconst_0
            putfield com.sun.javafx.sg.prism.NGShape3D.drawModeDirty:Z
         3: .line 42
            return
        end local 0 // com.sun.javafx.sg.prism.NGShape3D this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/sun/javafx/sg/prism/NGShape3D;

  public void setMaterial(com.sun.javafx.sg.prism.NGPhongMaterial);
    descriptor: (Lcom/sun/javafx/sg/prism/NGPhongMaterial;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.javafx.sg.prism.NGShape3D this
        start local 1 // com.sun.javafx.sg.prism.NGPhongMaterial material
         0: .line 52
            aload 0 /* this */
            aload 1 /* material */
            putfield com.sun.javafx.sg.prism.NGShape3D.material:Lcom/sun/javafx/sg/prism/NGPhongMaterial;
         1: .line 53
            aload 0 /* this */
            iconst_1
            putfield com.sun.javafx.sg.prism.NGShape3D.materialDirty:Z
         2: .line 54
            aload 0 /* this */
            invokevirtual com.sun.javafx.sg.prism.NGShape3D.visualsChanged:()V
         3: .line 55
            return
        end local 1 // com.sun.javafx.sg.prism.NGPhongMaterial material
        end local 0 // com.sun.javafx.sg.prism.NGShape3D this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Lcom/sun/javafx/sg/prism/NGShape3D;
            0    4     1  material  Lcom/sun/javafx/sg/prism/NGPhongMaterial;
    MethodParameters:
          Name  Flags
      material  

  public void setDrawMode(java.lang.Object);
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.javafx.sg.prism.NGShape3D this
        start local 1 // java.lang.Object drawMode
         0: .line 57
            aload 0 /* this */
            aload 1 /* drawMode */
            checkcast javafx.scene.shape.DrawMode
            putfield com.sun.javafx.sg.prism.NGShape3D.drawMode:Ljavafx/scene/shape/DrawMode;
         1: .line 58
            aload 0 /* this */
            iconst_1
            putfield com.sun.javafx.sg.prism.NGShape3D.drawModeDirty:Z
         2: .line 59
            aload 0 /* this */
            invokevirtual com.sun.javafx.sg.prism.NGShape3D.visualsChanged:()V
         3: .line 60
            return
        end local 1 // java.lang.Object drawMode
        end local 0 // com.sun.javafx.sg.prism.NGShape3D this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Lcom/sun/javafx/sg/prism/NGShape3D;
            0    4     1  drawMode  Ljava/lang/Object;
    MethodParameters:
          Name  Flags
      drawMode  

  public void setCullFace(java.lang.Object);
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.javafx.sg.prism.NGShape3D this
        start local 1 // java.lang.Object cullFace
         0: .line 63
            aload 0 /* this */
            aload 1 /* cullFace */
            checkcast javafx.scene.shape.CullFace
            putfield com.sun.javafx.sg.prism.NGShape3D.cullFace:Ljavafx/scene/shape/CullFace;
         1: .line 64
            aload 0 /* this */
            invokevirtual com.sun.javafx.sg.prism.NGShape3D.visualsChanged:()V
         2: .line 65
            return
        end local 1 // java.lang.Object cullFace
        end local 0 // com.sun.javafx.sg.prism.NGShape3D this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0      this  Lcom/sun/javafx/sg/prism/NGShape3D;
            0    3     1  cullFace  Ljava/lang/Object;
    MethodParameters:
          Name  Flags
      cullFace  

  void invalidate();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.javafx.sg.prism.NGShape3D this
         0: .line 68
            aload 0 /* this */
            aconst_null
            putfield com.sun.javafx.sg.prism.NGShape3D.meshView:Lcom/sun/prism/MeshView;
         1: .line 69
            aload 0 /* this */
            invokevirtual com.sun.javafx.sg.prism.NGShape3D.visualsChanged:()V
         2: .line 70
            return
        end local 0 // com.sun.javafx.sg.prism.NGShape3D this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/javafx/sg/prism/NGShape3D;

  private void renderMeshView(com.sun.prism.Graphics);
    descriptor: (Lcom/sun/prism/Graphics;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=16, args_size=2
        start local 0 // com.sun.javafx.sg.prism.NGShape3D this
        start local 1 // com.sun.prism.Graphics g
         0: .line 75
            aload 1 /* g */
            invokeinterface com.sun.prism.Graphics.setup3DRendering:()V
         1: .line 77
            aload 1 /* g */
            invokeinterface com.sun.prism.Graphics.getResourceFactory:()Lcom/sun/prism/ResourceFactory;
            astore 2 /* rf */
        start local 2 // com.sun.prism.ResourceFactory rf
         2: .line 79
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGShape3D.meshView:Lcom/sun/prism/MeshView;
            ifnonnull 5
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGShape3D.mesh:Lcom/sun/javafx/sg/prism/NGTriangleMesh;
            ifnull 5
         3: .line 80
            aload 0 /* this */
            aload 2 /* rf */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGShape3D.mesh:Lcom/sun/javafx/sg/prism/NGTriangleMesh;
            aload 2 /* rf */
            invokevirtual com.sun.javafx.sg.prism.NGTriangleMesh.createMesh:(Lcom/sun/prism/ResourceFactory;)Lcom/sun/prism/Mesh;
            invokeinterface com.sun.prism.ResourceFactory.createMeshView:(Lcom/sun/prism/Mesh;)Lcom/sun/prism/MeshView;
            putfield com.sun.javafx.sg.prism.NGShape3D.meshView:Lcom/sun/prism/MeshView;
         4: .line 81
            aload 0 /* this */
            aload 0 /* this */
            iconst_1
            dup_x1
            putfield com.sun.javafx.sg.prism.NGShape3D.drawModeDirty:Z
            putfield com.sun.javafx.sg.prism.NGShape3D.materialDirty:Z
         5: .line 84
      StackMap locals: com.sun.prism.ResourceFactory
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGShape3D.meshView:Lcom/sun/prism/MeshView;
            ifnull 6
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGShape3D.mesh:Lcom/sun/javafx/sg/prism/NGTriangleMesh;
            invokevirtual com.sun.javafx.sg.prism.NGTriangleMesh.validate:()Z
            ifne 7
         6: .line 85
      StackMap locals:
      StackMap stack:
            return
         7: .line 88
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGShape3D.material:Lcom/sun/javafx/sg/prism/NGPhongMaterial;
            aload 2 /* rf */
            invokevirtual com.sun.javafx.sg.prism.NGPhongMaterial.createMaterial:(Lcom/sun/prism/ResourceFactory;)Lcom/sun/prism/Material;
            astore 3 /* mtl */
        start local 3 // com.sun.prism.Material mtl
         8: .line 89
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGShape3D.materialDirty:Z
            ifeq 11
         9: .line 90
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGShape3D.meshView:Lcom/sun/prism/MeshView;
            aload 3 /* mtl */
            invokeinterface com.sun.prism.MeshView.setMaterial:(Lcom/sun/prism/Material;)V
        10: .line 91
            aload 0 /* this */
            iconst_0
            putfield com.sun.javafx.sg.prism.NGShape3D.materialDirty:Z
        11: .line 95
      StackMap locals: com.sun.prism.Material
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGShape3D.cullFace:Ljavafx/scene/shape/CullFace;
            invokevirtual javafx.scene.shape.CullFace.ordinal:()I
            istore 4 /* cullingMode */
        start local 4 // int cullingMode
        12: .line 96
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGShape3D.cullFace:Ljavafx/scene/shape/CullFace;
            invokevirtual javafx.scene.shape.CullFace.ordinal:()I
            getstatic com.sun.prism.MeshView.CULL_NONE:I
            if_icmpeq 18
        13: .line 97
            aload 1 /* g */
            invokeinterface com.sun.prism.Graphics.getTransformNoClone:()Lcom/sun/javafx/geom/transform/BaseTransform;
            invokevirtual com.sun.javafx.geom.transform.BaseTransform.getDeterminant:()D
            dconst_0
            dcmpg
            ifge 18
        14: .line 98
            iload 4 /* cullingMode */
            getstatic com.sun.prism.MeshView.CULL_BACK:I
            if_icmpne 16
        15: .line 99
            getstatic com.sun.prism.MeshView.CULL_FRONT:I
            goto 17
      StackMap locals: int
      StackMap stack:
        16: getstatic com.sun.prism.MeshView.CULL_BACK:I
        17: .line 98
      StackMap locals:
      StackMap stack: int
            istore 4 /* cullingMode */
        18: .line 101
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGShape3D.meshView:Lcom/sun/prism/MeshView;
            iload 4 /* cullingMode */
            invokeinterface com.sun.prism.MeshView.setCullingMode:(I)V
        19: .line 103
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGShape3D.drawModeDirty:Z
            ifeq 24
        20: .line 104
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGShape3D.meshView:Lcom/sun/prism/MeshView;
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGShape3D.drawMode:Ljavafx/scene/shape/DrawMode;
            getstatic javafx.scene.shape.DrawMode.LINE:Ljavafx/scene/shape/DrawMode;
            if_acmpne 21
            iconst_1
            goto 22
      StackMap locals:
      StackMap stack: com.sun.prism.MeshView
        21: iconst_0
      StackMap locals: com.sun.javafx.sg.prism.NGShape3D com.sun.prism.Graphics com.sun.prism.ResourceFactory com.sun.prism.Material int
      StackMap stack: com.sun.prism.MeshView int
        22: invokeinterface com.sun.prism.MeshView.setWireframe:(Z)V
        23: .line 105
            aload 0 /* this */
            iconst_0
            putfield com.sun.javafx.sg.prism.NGShape3D.drawModeDirty:Z
        24: .line 109
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 5 /* pointLightIdx */
        start local 5 // int pointLightIdx
        25: .line 110
            aload 1 /* g */
            invokeinterface com.sun.prism.Graphics.getLights:()[Lcom/sun/javafx/sg/prism/NGLightBase;
            ifnull 26
            aload 1 /* g */
            invokeinterface com.sun.prism.Graphics.getLights:()[Lcom/sun/javafx/sg/prism/NGLightBase;
            iconst_0
            aaload
            ifnonnull 35
        26: .line 113
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGShape3D.meshView:Lcom/sun/prism/MeshView;
            fconst_0
            fconst_0
            fconst_0
            invokeinterface com.sun.prism.MeshView.setAmbientLight:(FFF)V
        27: .line 114
            aload 1 /* g */
            invokeinterface com.sun.prism.Graphics.getCameraNoClone:()Lcom/sun/javafx/sg/prism/NGCamera;
            aconst_null
            invokevirtual com.sun.javafx.sg.prism.NGCamera.getPositionInWorld:(Lcom/sun/javafx/geom/Vec3d;)Lcom/sun/javafx/geom/Vec3d;
            astore 6 /* cameraPos */
        start local 6 // com.sun.javafx.geom.Vec3d cameraPos
        28: .line 115
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGShape3D.meshView:Lcom/sun/prism/MeshView;
            iload 5 /* pointLightIdx */
            iinc 5 /* pointLightIdx */ 1
        29: .line 116
            aload 6 /* cameraPos */
            getfield com.sun.javafx.geom.Vec3d.x:D
            d2f
        30: .line 117
            aload 6 /* cameraPos */
            getfield com.sun.javafx.geom.Vec3d.y:D
            d2f
        31: .line 118
            aload 6 /* cameraPos */
            getfield com.sun.javafx.geom.Vec3d.z:D
            d2f
        32: .line 119
            fconst_1
            fconst_1
            fconst_1
            fconst_1
        33: .line 115
            invokeinterface com.sun.prism.MeshView.setPointLight:(IFFFFFFF)V
        end local 6 // com.sun.javafx.geom.Vec3d cameraPos
        34: .line 120
            goto 70
        35: .line 121
      StackMap locals:
      StackMap stack:
            fconst_0
            fstore 6 /* ambientRed */
        start local 6 // float ambientRed
        36: .line 122
            fconst_0
            fstore 7 /* ambientBlue */
        start local 7 // float ambientBlue
        37: .line 123
            fconst_0
            fstore 8 /* ambientGreen */
        start local 8 // float ambientGreen
        38: .line 125
            iconst_0
            istore 9 /* i */
        start local 9 // int i
        39: goto 63
        40: .line 126
      StackMap locals: com.sun.javafx.sg.prism.NGShape3D com.sun.prism.Graphics com.sun.prism.ResourceFactory com.sun.prism.Material int int float float float int
      StackMap stack:
            aload 1 /* g */
            invokeinterface com.sun.prism.Graphics.getLights:()[Lcom/sun/javafx/sg/prism/NGLightBase;
            iload 9 /* i */
            aaload
            astore 10 /* lightBase */
        start local 10 // com.sun.javafx.sg.prism.NGLightBase lightBase
        41: .line 127
            aload 10 /* lightBase */
            ifnonnull 43
        42: .line 129
            goto 64
        43: .line 130
      StackMap locals: com.sun.javafx.sg.prism.NGLightBase
      StackMap stack:
            aload 10 /* lightBase */
            aload 0 /* this */
            invokevirtual com.sun.javafx.sg.prism.NGLightBase.affects:(Lcom/sun/javafx/sg/prism/NGShape3D;)Z
            ifeq 62
        44: .line 131
            aload 10 /* lightBase */
            invokevirtual com.sun.javafx.sg.prism.NGLightBase.getColor:()Lcom/sun/prism/paint/Color;
            invokevirtual com.sun.prism.paint.Color.getRed:()F
            fstore 11 /* rL */
        start local 11 // float rL
        45: .line 132
            aload 10 /* lightBase */
            invokevirtual com.sun.javafx.sg.prism.NGLightBase.getColor:()Lcom/sun/prism/paint/Color;
            invokevirtual com.sun.prism.paint.Color.getGreen:()F
            fstore 12 /* gL */
        start local 12 // float gL
        46: .line 133
            aload 10 /* lightBase */
            invokevirtual com.sun.javafx.sg.prism.NGLightBase.getColor:()Lcom/sun/prism/paint/Color;
            invokevirtual com.sun.prism.paint.Color.getBlue:()F
            fstore 13 /* bL */
        start local 13 // float bL
        47: .line 150
            aload 10 /* lightBase */
            instanceof com.sun.javafx.sg.prism.NGPointLight
            ifeq 58
        48: .line 151
            aload 10 /* lightBase */
            checkcast com.sun.javafx.sg.prism.NGPointLight
            astore 14 /* light */
        start local 14 // com.sun.javafx.sg.prism.NGPointLight light
        49: .line 152
            fload 11 /* rL */
            fconst_0
            fcmpl
            ifne 50
            fload 12 /* gL */
            fconst_0
            fcmpl
            ifne 50
            fload 13 /* bL */
            fconst_0
            fcmpl
            ifeq 62
        50: .line 153
      StackMap locals: com.sun.javafx.sg.prism.NGShape3D com.sun.prism.Graphics com.sun.prism.ResourceFactory com.sun.prism.Material int int float float float int com.sun.javafx.sg.prism.NGLightBase float float float com.sun.javafx.sg.prism.NGPointLight
      StackMap stack:
            aload 14 /* light */
            invokevirtual com.sun.javafx.sg.prism.NGPointLight.getWorldTransform:()Lcom/sun/javafx/geom/transform/Affine3D;
            astore 15 /* lightWT */
        start local 15 // com.sun.javafx.geom.transform.Affine3D lightWT
        51: .line 154
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGShape3D.meshView:Lcom/sun/prism/MeshView;
            iload 5 /* pointLightIdx */
            iinc 5 /* pointLightIdx */ 1
        52: .line 155
            aload 15 /* lightWT */
            invokevirtual com.sun.javafx.geom.transform.Affine3D.getMxt:()D
            d2f
        53: .line 156
            aload 15 /* lightWT */
            invokevirtual com.sun.javafx.geom.transform.Affine3D.getMyt:()D
            d2f
        54: .line 157
            aload 15 /* lightWT */
            invokevirtual com.sun.javafx.geom.transform.Affine3D.getMzt:()D
            d2f
        55: .line 158
            fload 11 /* rL */
            fload 12 /* gL */
            fload 13 /* bL */
            fconst_1
        56: .line 154
            invokeinterface com.sun.prism.MeshView.setPointLight:(IFFFFFFF)V
        end local 15 // com.sun.javafx.geom.transform.Affine3D lightWT
        end local 14 // com.sun.javafx.sg.prism.NGPointLight light
        57: .line 160
            goto 62
      StackMap locals:
      StackMap stack:
        58: aload 10 /* lightBase */
            instanceof com.sun.javafx.sg.prism.NGAmbientLight
            ifeq 62
        59: .line 162
            fload 6 /* ambientRed */
            fload 11 /* rL */
            fadd
            fstore 6 /* ambientRed */
        60: .line 163
            fload 8 /* ambientGreen */
            fload 12 /* gL */
            fadd
            fstore 8 /* ambientGreen */
        61: .line 164
            fload 7 /* ambientBlue */
            fload 13 /* bL */
            fadd
            fstore 7 /* ambientBlue */
        end local 13 // float bL
        end local 12 // float gL
        end local 11 // float rL
        end local 10 // com.sun.javafx.sg.prism.NGLightBase lightBase
        62: .line 125
      StackMap locals: com.sun.javafx.sg.prism.NGShape3D com.sun.prism.Graphics com.sun.prism.ResourceFactory com.sun.prism.Material int int float float float int
      StackMap stack:
            iinc 9 /* i */ 1
      StackMap locals:
      StackMap stack:
        63: iload 9 /* i */
            aload 1 /* g */
            invokeinterface com.sun.prism.Graphics.getLights:()[Lcom/sun/javafx/sg/prism/NGLightBase;
            arraylength
            if_icmplt 40
        end local 9 // int i
        64: .line 168
      StackMap locals:
      StackMap stack:
            fload 6 /* ambientRed */
            invokestatic com.sun.javafx.sg.prism.NGShape3D.saturate:(F)F
            fstore 6 /* ambientRed */
        65: .line 169
            fload 8 /* ambientGreen */
            invokestatic com.sun.javafx.sg.prism.NGShape3D.saturate:(F)F
            fstore 8 /* ambientGreen */
        66: .line 170
            fload 7 /* ambientBlue */
            invokestatic com.sun.javafx.sg.prism.NGShape3D.saturate:(F)F
            fstore 7 /* ambientBlue */
        67: .line 171
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGShape3D.meshView:Lcom/sun/prism/MeshView;
            fload 6 /* ambientRed */
            fload 8 /* ambientGreen */
            fload 7 /* ambientBlue */
            invokeinterface com.sun.prism.MeshView.setAmbientLight:(FFF)V
        end local 8 // float ambientGreen
        end local 7 // float ambientBlue
        end local 6 // float ambientRed
        68: .line 174
            goto 70
        69: .line 176
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGShape3D.meshView:Lcom/sun/prism/MeshView;
            iload 5 /* pointLightIdx */
            iinc 5 /* pointLightIdx */ 1
            fconst_0
            fconst_0
            fconst_0
            fconst_0
            fconst_0
            fconst_0
            fconst_0
            invokeinterface com.sun.prism.MeshView.setPointLight:(IFFFFFFF)V
        70: .line 174
      StackMap locals:
      StackMap stack:
            iload 5 /* pointLightIdx */
            iconst_3
            if_icmplt 69
        71: .line 179
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGShape3D.meshView:Lcom/sun/prism/MeshView;
            aload 1 /* g */
            invokeinterface com.sun.prism.MeshView.render:(Lcom/sun/prism/Graphics;)V
        72: .line 180
            return
        end local 5 // int pointLightIdx
        end local 4 // int cullingMode
        end local 3 // com.sun.prism.Material mtl
        end local 2 // com.sun.prism.ResourceFactory rf
        end local 1 // com.sun.prism.Graphics g
        end local 0 // com.sun.javafx.sg.prism.NGShape3D this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   73     0           this  Lcom/sun/javafx/sg/prism/NGShape3D;
            0   73     1              g  Lcom/sun/prism/Graphics;
            2   73     2             rf  Lcom/sun/prism/ResourceFactory;
            8   73     3            mtl  Lcom/sun/prism/Material;
           12   73     4    cullingMode  I
           25   73     5  pointLightIdx  I
           28   34     6      cameraPos  Lcom/sun/javafx/geom/Vec3d;
           36   68     6     ambientRed  F
           37   68     7    ambientBlue  F
           38   68     8   ambientGreen  F
           39   64     9              i  I
           41   62    10      lightBase  Lcom/sun/javafx/sg/prism/NGLightBase;
           45   62    11             rL  F
           46   62    12             gL  F
           47   62    13             bL  F
           49   57    14          light  Lcom/sun/javafx/sg/prism/NGPointLight;
           51   57    15        lightWT  Lcom/sun/javafx/geom/transform/Affine3D;
    MethodParameters:
      Name  Flags
      g     

  private static float saturate(float);
    descriptor: (F)F
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // float value
         0: .line 184
            fload 0 /* value */
            fconst_1
            fcmpg
            ifge 2
            fload 0 /* value */
            fconst_0
            fcmpg
            ifge 1
            fconst_0
            goto 3
      StackMap locals:
      StackMap stack:
         1: fload 0 /* value */
            goto 3
      StackMap locals:
      StackMap stack:
         2: fconst_1
      StackMap locals:
      StackMap stack: float
         3: freturn
        end local 0 // float value
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0  value  F
    MethodParameters:
       Name  Flags
      value  

  public void setMesh(com.sun.javafx.sg.prism.NGTriangleMesh);
    descriptor: (Lcom/sun/javafx/sg/prism/NGTriangleMesh;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.javafx.sg.prism.NGShape3D this
        start local 1 // com.sun.javafx.sg.prism.NGTriangleMesh triangleMesh
         0: .line 188
            aload 0 /* this */
            aload 1 /* triangleMesh */
            putfield com.sun.javafx.sg.prism.NGShape3D.mesh:Lcom/sun/javafx/sg/prism/NGTriangleMesh;
         1: .line 189
            aload 0 /* this */
            aconst_null
            putfield com.sun.javafx.sg.prism.NGShape3D.meshView:Lcom/sun/prism/MeshView;
         2: .line 190
            aload 0 /* this */
            invokevirtual com.sun.javafx.sg.prism.NGShape3D.visualsChanged:()V
         3: .line 191
            return
        end local 1 // com.sun.javafx.sg.prism.NGTriangleMesh triangleMesh
        end local 0 // com.sun.javafx.sg.prism.NGShape3D this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    4     0          this  Lcom/sun/javafx/sg/prism/NGShape3D;
            0    4     1  triangleMesh  Lcom/sun/javafx/sg/prism/NGTriangleMesh;
    MethodParameters:
              Name  Flags
      triangleMesh  

  protected void renderContent(com.sun.prism.Graphics);
    descriptor: (Lcom/sun/prism/Graphics;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.javafx.sg.prism.NGShape3D this
        start local 1 // com.sun.prism.Graphics g
         0: .line 195
            getstatic javafx.application.ConditionalFeature.SCENE3D:Ljavafx/application/ConditionalFeature;
            invokestatic javafx.application.Platform.isSupported:(Ljavafx/application/ConditionalFeature;)Z
            ifeq 3
         1: .line 196
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGShape3D.material:Lcom/sun/javafx/sg/prism/NGPhongMaterial;
            ifnull 3
         2: .line 197
            aload 1 /* g */
            instanceof com.sun.prism.PrinterGraphics
            ifeq 4
         3: .line 199
      StackMap locals:
      StackMap stack:
            return
         4: .line 201
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* g */
            invokevirtual com.sun.javafx.sg.prism.NGShape3D.renderMeshView:(Lcom/sun/prism/Graphics;)V
         5: .line 202
            return
        end local 1 // com.sun.prism.Graphics g
        end local 0 // com.sun.javafx.sg.prism.NGShape3D this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lcom/sun/javafx/sg/prism/NGShape3D;
            0    6     1     g  Lcom/sun/prism/Graphics;
    MethodParameters:
      Name  Flags
      g     

  boolean isShape3D();
    descriptor: ()Z
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.javafx.sg.prism.NGShape3D this
         0: .line 207
            iconst_1
            ireturn
        end local 0 // com.sun.javafx.sg.prism.NGShape3D this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/javafx/sg/prism/NGShape3D;

  protected boolean hasOverlappingContents();
    descriptor: ()Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.javafx.sg.prism.NGShape3D this
         0: .line 212
            iconst_0
            ireturn
        end local 0 // com.sun.javafx.sg.prism.NGShape3D this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/javafx/sg/prism/NGShape3D;

  public void release();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=1, args_size=1
        start local 0 // com.sun.javafx.sg.prism.NGShape3D this
         0: .line 219
            return
        end local 0 // com.sun.javafx.sg.prism.NGShape3D this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/javafx/sg/prism/NGShape3D;
}
SourceFile: "NGShape3D.java"