public abstract class com.sun.prism.impl.BaseMesh extends com.sun.prism.impl.BaseGraphicsResource implements com.sun.prism.Mesh
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: com.sun.prism.impl.BaseMesh
super_class: com.sun.prism.impl.BaseGraphicsResource
{
private int nVerts;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int nTVerts;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int nFaces;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private float[] pos;
descriptor: [F
flags: (0x0002) ACC_PRIVATE
private float[] uv;
descriptor: [F
flags: (0x0002) ACC_PRIVATE
private int[] faces;
descriptor: [I
flags: (0x0002) ACC_PRIVATE
private int[] smoothing;
descriptor: [I
flags: (0x0002) ACC_PRIVATE
private boolean allSameSmoothing;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean allHardEdges;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
protected static final int POINT_SIZE;
descriptor: I
flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
ConstantValue: 3
protected static final int NORMAL_SIZE;
descriptor: I
flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
ConstantValue: 3
protected static final int TEXCOORD_SIZE;
descriptor: I
flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
ConstantValue: 2
protected static final int POINT_SIZE_VB;
descriptor: I
flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
ConstantValue: 3
protected static final int TEXCOORD_SIZE_VB;
descriptor: I
flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
ConstantValue: 2
protected static final int NORMAL_SIZE_VB;
descriptor: I
flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
ConstantValue: 4
protected static final int VERTEX_SIZE_VB;
descriptor: I
flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
ConstantValue: 9
public static final int FACE_MEMBERS_SIZE;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 7
private boolean[] dirtyVertices;
descriptor: [Z
flags: (0x0002) ACC_PRIVATE
private float[] cachedNormals;
descriptor: [F
flags: (0x0002) ACC_PRIVATE
private float[] cachedTangents;
descriptor: [F
flags: (0x0002) ACC_PRIVATE
private float[] cachedBitangents;
descriptor: [F
flags: (0x0002) ACC_PRIVATE
private float[] vertexBuffer;
descriptor: [F
flags: (0x0002) ACC_PRIVATE
private int[] indexBuffer;
descriptor: [I
flags: (0x0002) ACC_PRIVATE
private short[] indexBufferShort;
descriptor: [S
flags: (0x0002) ACC_PRIVATE
private int indexBufferSize;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int numberOfVertices;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private java.util.HashMap<java.lang.Integer, com.sun.prism.impl.BaseMesh$MeshGeomComp2VB> point2vbMap;
descriptor: Ljava/util/HashMap;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/HashMap<Ljava/lang/Integer;Lcom/sun/prism/impl/BaseMesh$MeshGeomComp2VB;>;
private java.util.HashMap<java.lang.Integer, com.sun.prism.impl.BaseMesh$MeshGeomComp2VB> normal2vbMap;
descriptor: Ljava/util/HashMap;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/HashMap<Ljava/lang/Integer;Lcom/sun/prism/impl/BaseMesh$MeshGeomComp2VB;>;
private java.util.HashMap<java.lang.Integer, com.sun.prism.impl.BaseMesh$MeshGeomComp2VB> texCoord2vbMap;
descriptor: Ljava/util/HashMap;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/HashMap<Ljava/lang/Integer;Lcom/sun/prism/impl/BaseMesh$MeshGeomComp2VB;>;
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lcom/sun/prism/impl/BaseMesh;
invokevirtual java.lang.Class.desiredAssertionStatus:()Z
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic com.sun.prism.impl.BaseMesh.$assertionsDisabled:Z
3: return
LocalVariableTable:
Start End Slot Name Signature
protected void <init>(com.sun.prism.impl.Disposer$Record);
descriptor: (Lcom/sun/prism/impl/Disposer$Record;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokespecial com.sun.prism.impl.BaseGraphicsResource.<init>:(Lcom/sun/prism/impl/Disposer$Record;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/prism/impl/BaseMesh;
0 2 1 disposerRecord Lcom/sun/prism/impl/Disposer$Record;
MethodParameters:
Name Flags
disposerRecord
public abstract boolean buildNativeGeometry(float[], int, int[], int);
descriptor: ([FI[II)Z
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
vertexBuffer
vertexBufferLength
indexBufferInt
indexBufferLength
public abstract boolean buildNativeGeometry(float[], int, short[], int);
descriptor: ([FI[SI)Z
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
vertexBuffer
vertexBufferLength
indexBufferShort
indexBufferLength
private void convertNormalsToQuats(com.sun.prism.impl.MeshTempState, int, float[], float[], float[], float[], boolean[]);
descriptor: (Lcom/sun/prism/impl/MeshTempState;I[F[F[F[F[Z)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=14, args_size=8
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 0: aload 1
getfield com.sun.prism.impl.MeshTempState.vec3f1:Lcom/sun/javafx/geom/Vec3f;
astore 8
start local 8 1: aload 1
getfield com.sun.prism.impl.MeshTempState.vec3f2:Lcom/sun/javafx/geom/Vec3f;
astore 9
start local 9 2: aload 1
getfield com.sun.prism.impl.MeshTempState.vec3f3:Lcom/sun/javafx/geom/Vec3f;
astore 10
start local 10 3: iconst_0
istore 11
start local 11 4: iconst_0
istore 12
start local 12 5: goto 28
6: StackMap locals: com.sun.prism.impl.BaseMesh com.sun.prism.impl.MeshTempState int float[] float[] float[] float[] boolean[] com.sun.javafx.geom.Vec3f com.sun.javafx.geom.Vec3f com.sun.javafx.geom.Vec3f int int
StackMap stack:
aload 7
ifnull 7
aload 7
iload 11
baload
ifeq 27
7: StackMap locals:
StackMap stack:
iload 11
iconst_3
imul
istore 13
start local 13 8: aload 8
aload 3
iload 13
faload
putfield com.sun.javafx.geom.Vec3f.x:F
9: aload 8
aload 3
iload 13
iconst_1
iadd
faload
putfield com.sun.javafx.geom.Vec3f.y:F
10: aload 8
aload 3
iload 13
iconst_2
iadd
faload
putfield com.sun.javafx.geom.Vec3f.z:F
11: aload 8
invokevirtual com.sun.javafx.geom.Vec3f.normalize:()V
12: aload 9
aload 4
iload 13
faload
putfield com.sun.javafx.geom.Vec3f.x:F
13: aload 9
aload 4
iload 13
iconst_1
iadd
faload
putfield com.sun.javafx.geom.Vec3f.y:F
14: aload 9
aload 4
iload 13
iconst_2
iadd
faload
putfield com.sun.javafx.geom.Vec3f.z:F
15: aload 10
aload 5
iload 13
faload
putfield com.sun.javafx.geom.Vec3f.x:F
16: aload 10
aload 5
iload 13
iconst_1
iadd
faload
putfield com.sun.javafx.geom.Vec3f.y:F
17: aload 10
aload 5
iload 13
iconst_2
iadd
faload
putfield com.sun.javafx.geom.Vec3f.z:F
18: aload 1
getfield com.sun.prism.impl.MeshTempState.triNormals:[Lcom/sun/javafx/geom/Vec3f;
iconst_0
aaload
aload 8
invokevirtual com.sun.javafx.geom.Vec3f.set:(Lcom/sun/javafx/geom/Vec3f;)V
19: aload 1
getfield com.sun.prism.impl.MeshTempState.triNormals:[Lcom/sun/javafx/geom/Vec3f;
iconst_1
aaload
aload 9
invokevirtual com.sun.javafx.geom.Vec3f.set:(Lcom/sun/javafx/geom/Vec3f;)V
20: aload 1
getfield com.sun.prism.impl.MeshTempState.triNormals:[Lcom/sun/javafx/geom/Vec3f;
iconst_2
aaload
aload 10
invokevirtual com.sun.javafx.geom.Vec3f.set:(Lcom/sun/javafx/geom/Vec3f;)V
21: aload 1
getfield com.sun.prism.impl.MeshTempState.triNormals:[Lcom/sun/javafx/geom/Vec3f;
invokestatic com.sun.prism.impl.MeshUtil.fixTSpace:([Lcom/sun/javafx/geom/Vec3f;)V
22: aload 0
aload 1
getfield com.sun.prism.impl.MeshTempState.triNormals:[Lcom/sun/javafx/geom/Vec3f;
aload 1
getfield com.sun.prism.impl.MeshTempState.quat:Lcom/sun/javafx/geom/Quat4f;
invokevirtual com.sun.prism.impl.BaseMesh.buildVSQuat:([Lcom/sun/javafx/geom/Vec3f;Lcom/sun/javafx/geom/Quat4f;)V
23: aload 6
iload 12
iconst_5
iadd
aload 1
getfield com.sun.prism.impl.MeshTempState.quat:Lcom/sun/javafx/geom/Quat4f;
getfield com.sun.javafx.geom.Quat4f.x:F
fastore
24: aload 6
iload 12
bipush 6
iadd
aload 1
getfield com.sun.prism.impl.MeshTempState.quat:Lcom/sun/javafx/geom/Quat4f;
getfield com.sun.javafx.geom.Quat4f.y:F
fastore
25: aload 6
iload 12
bipush 7
iadd
aload 1
getfield com.sun.prism.impl.MeshTempState.quat:Lcom/sun/javafx/geom/Quat4f;
getfield com.sun.javafx.geom.Quat4f.z:F
fastore
26: aload 6
iload 12
bipush 8
iadd
aload 1
getfield com.sun.prism.impl.MeshTempState.quat:Lcom/sun/javafx/geom/Quat4f;
getfield com.sun.javafx.geom.Quat4f.w:F
fastore
end local 13 27: StackMap locals:
StackMap stack:
iinc 11 1
iinc 12 9
StackMap locals:
StackMap stack:
28: iload 11
iload 2
if_icmplt 6
end local 12 end local 11 29: return
end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 30 0 this Lcom/sun/prism/impl/BaseMesh;
0 30 1 instance Lcom/sun/prism/impl/MeshTempState;
0 30 2 numberOfVertices I
0 30 3 normals [F
0 30 4 tangents [F
0 30 5 bitangents [F
0 30 6 vertexBuffer [F
0 30 7 dirtys [Z
1 30 8 normal Lcom/sun/javafx/geom/Vec3f;
2 30 9 tangent Lcom/sun/javafx/geom/Vec3f;
3 30 10 bitangent Lcom/sun/javafx/geom/Vec3f;
4 29 11 i I
5 29 12 vbIndex I
8 27 13 index I
MethodParameters:
Name Flags
instance
numberOfVertices
normals
tangents
bitangents
vertexBuffer
dirtys
private boolean doBuildPNTGeometry(float[], float[], float[], int[]);
descriptor: ([F[F[F[I)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=32, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
getfield com.sun.prism.impl.BaseMesh.point2vbMap:Ljava/util/HashMap;
ifnonnull 3
1: aload 0
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putfield com.sun.prism.impl.BaseMesh.point2vbMap:Ljava/util/HashMap;
2: goto 4
3: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.prism.impl.BaseMesh.point2vbMap:Ljava/util/HashMap;
invokevirtual java.util.HashMap.clear:()V
4: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.prism.impl.BaseMesh.normal2vbMap:Ljava/util/HashMap;
ifnonnull 7
5: aload 0
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putfield com.sun.prism.impl.BaseMesh.normal2vbMap:Ljava/util/HashMap;
6: goto 8
7: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.prism.impl.BaseMesh.normal2vbMap:Ljava/util/HashMap;
invokevirtual java.util.HashMap.clear:()V
8: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.prism.impl.BaseMesh.texCoord2vbMap:Ljava/util/HashMap;
ifnonnull 11
9: aload 0
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putfield com.sun.prism.impl.BaseMesh.texCoord2vbMap:Ljava/util/HashMap;
10: goto 12
11: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.prism.impl.BaseMesh.texCoord2vbMap:Ljava/util/HashMap;
invokevirtual java.util.HashMap.clear:()V
12: StackMap locals:
StackMap stack:
getstatic javafx.scene.shape.VertexFormat.POINT_NORMAL_TEXCOORD:Ljavafx/scene/shape/VertexFormat;
invokevirtual javafx.scene.shape.VertexFormat.getVertexIndexSize:()I
istore 5
start local 5 13: iload 5
iconst_3
imul
istore 6
start local 6 14: getstatic javafx.scene.shape.VertexFormat.POINT_NORMAL_TEXCOORD:Ljavafx/scene/shape/VertexFormat;
invokevirtual javafx.scene.shape.VertexFormat.getPointIndexOffset:()I
istore 7
start local 7 15: getstatic javafx.scene.shape.VertexFormat.POINT_NORMAL_TEXCOORD:Ljavafx/scene/shape/VertexFormat;
invokevirtual javafx.scene.shape.VertexFormat.getNormalIndexOffset:()I
istore 8
start local 8 16: getstatic javafx.scene.shape.VertexFormat.POINT_NORMAL_TEXCOORD:Ljavafx/scene/shape/VertexFormat;
invokevirtual javafx.scene.shape.VertexFormat.getTexCoordIndexOffset:()I
istore 9
start local 9 17: aload 1
arraylength
iconst_3
idiv
istore 10
start local 10 18: aload 2
arraylength
iconst_3
idiv
istore 11
start local 11 19: aload 3
arraylength
iconst_2
idiv
istore 12
start local 12 20: aload 4
arraylength
iload 6
idiv
istore 13
start local 13 21: getstatic com.sun.prism.impl.BaseMesh.$assertionsDisabled:Z
ifne 23
iload 10
ifle 22
iload 11
ifle 22
iload 12
ifle 22
iload 13
ifgt 23
StackMap locals: com.sun.prism.impl.BaseMesh float[] float[] float[] int[] int int int int int int int int int
StackMap stack:
22: new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
23: StackMap locals:
StackMap stack:
aload 0
iload 10
iconst_3
imul
newarray 6
putfield com.sun.prism.impl.BaseMesh.cachedNormals:[F
24: aload 0
iload 10
iconst_3
imul
newarray 6
putfield com.sun.prism.impl.BaseMesh.cachedTangents:[F
25: aload 0
iload 10
iconst_3
imul
newarray 6
putfield com.sun.prism.impl.BaseMesh.cachedBitangents:[F
26: aload 0
iload 10
bipush 9
imul
newarray 6
putfield com.sun.prism.impl.BaseMesh.vertexBuffer:[F
27: aload 0
iload 13
iconst_3
imul
newarray 10
putfield com.sun.prism.impl.BaseMesh.indexBuffer:[I
28: iconst_0
istore 18
start local 18 29: iconst_0
istore 19
start local 19 30: invokestatic com.sun.prism.impl.MeshTempState.getInstance:()Lcom/sun/prism/impl/MeshTempState;
astore 20
start local 20 31: iconst_0
istore 21
start local 21 32: goto 38
33: StackMap locals: com.sun.prism.impl.BaseMesh float[] float[] float[] int[] int int int int int int int int int top top top top int int com.sun.prism.impl.MeshTempState int
StackMap stack:
aload 20
getfield com.sun.prism.impl.MeshTempState.triPoints:[Lcom/sun/javafx/geom/Vec3f;
iload 21
aaload
ifnonnull 35
34: aload 20
getfield com.sun.prism.impl.MeshTempState.triPoints:[Lcom/sun/javafx/geom/Vec3f;
iload 21
new com.sun.javafx.geom.Vec3f
dup
invokespecial com.sun.javafx.geom.Vec3f.<init>:()V
aastore
35: StackMap locals:
StackMap stack:
aload 20
getfield com.sun.prism.impl.MeshTempState.triTexCoords:[Lcom/sun/javafx/geom/Vec2f;
iload 21
aaload
ifnonnull 37
36: aload 20
getfield com.sun.prism.impl.MeshTempState.triTexCoords:[Lcom/sun/javafx/geom/Vec2f;
iload 21
new com.sun.javafx.geom.Vec2f
dup
invokespecial com.sun.javafx.geom.Vec2f.<init>:()V
aastore
37: StackMap locals:
StackMap stack:
iinc 21 1
StackMap locals:
StackMap stack:
38: iload 21
iconst_3
if_icmplt 33
end local 21 39: iconst_0
istore 21
start local 21 40: goto 127
41: StackMap locals:
StackMap stack:
iload 21
iload 6
imul
istore 22
start local 22 42: iconst_0
istore 23
start local 23 43: goto 100
44: StackMap locals: int int
StackMap stack:
iload 22
iload 23
iload 5
imul
iadd
istore 24
start local 24 45: iload 24
iload 7
iadd
istore 25
start local 25 46: iload 24
iload 8
iadd
istore 26
start local 26 47: iload 24
iload 9
iadd
istore 27
start local 27 48: iload 19
bipush 9
idiv
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
astore 14
start local 14 49: aload 0
getfield com.sun.prism.impl.BaseMesh.vertexBuffer:[F
arraylength
iload 19
if_icmpgt 64
50: iload 19
bipush 9
idiv
istore 28
start local 28 51: iload 28
iload 28
iconst_3
ishr
bipush 6
invokestatic java.lang.Math.max:(II)I
iadd
istore 29
start local 29 52: iload 29
bipush 9
imul
newarray 6
astore 30
start local 30 53: aload 0
getfield com.sun.prism.impl.BaseMesh.vertexBuffer:[F
iconst_0
aload 30
iconst_0
aload 0
getfield com.sun.prism.impl.BaseMesh.vertexBuffer:[F
arraylength
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
54: aload 0
aload 30
putfield com.sun.prism.impl.BaseMesh.vertexBuffer:[F
55: iload 29
iconst_3
imul
newarray 6
astore 30
56: aload 0
getfield com.sun.prism.impl.BaseMesh.cachedNormals:[F
iconst_0
aload 30
iconst_0
aload 0
getfield com.sun.prism.impl.BaseMesh.cachedNormals:[F
arraylength
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
57: aload 0
aload 30
putfield com.sun.prism.impl.BaseMesh.cachedNormals:[F
58: iload 29
iconst_3
imul
newarray 6
astore 30
59: aload 0
getfield com.sun.prism.impl.BaseMesh.cachedTangents:[F
iconst_0
aload 30
iconst_0
aload 0
getfield com.sun.prism.impl.BaseMesh.cachedTangents:[F
arraylength
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
60: aload 0
aload 30
putfield com.sun.prism.impl.BaseMesh.cachedTangents:[F
61: iload 29
iconst_3
imul
newarray 6
astore 30
62: aload 0
getfield com.sun.prism.impl.BaseMesh.cachedBitangents:[F
iconst_0
aload 30
iconst_0
aload 0
getfield com.sun.prism.impl.BaseMesh.cachedBitangents:[F
arraylength
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
63: aload 0
aload 30
putfield com.sun.prism.impl.BaseMesh.cachedBitangents:[F
end local 30 end local 29 end local 28 64: StackMap locals: com.sun.prism.impl.BaseMesh float[] float[] float[] int[] int int int int int int int int int java.lang.Integer top top top int int com.sun.prism.impl.MeshTempState int int int int int int int
StackMap stack:
aload 4
iload 25
iaload
iconst_3
imul
istore 28
start local 28 65: aload 4
iload 26
iaload
iconst_3
imul
istore 29
start local 29 66: aload 4
iload 27
iaload
iconst_2
imul
istore 30
start local 30 67: aload 20
getfield com.sun.prism.impl.MeshTempState.triPointIndex:[I
iload 23
iload 28
iastore
68: aload 20
getfield com.sun.prism.impl.MeshTempState.triTexCoordIndex:[I
iload 23
iload 30
iastore
69: aload 20
getfield com.sun.prism.impl.MeshTempState.triVerts:[I
iload 23
iload 19
bipush 9
idiv
iastore
70: aload 0
getfield com.sun.prism.impl.BaseMesh.vertexBuffer:[F
iload 19
aload 1
iload 28
faload
fastore
71: aload 0
getfield com.sun.prism.impl.BaseMesh.vertexBuffer:[F
iload 19
iconst_1
iadd
aload 1
iload 28
iconst_1
iadd
faload
fastore
72: aload 0
getfield com.sun.prism.impl.BaseMesh.vertexBuffer:[F
iload 19
iconst_2
iadd
aload 1
iload 28
iconst_2
iadd
faload
fastore
73: aload 0
getfield com.sun.prism.impl.BaseMesh.vertexBuffer:[F
iload 19
iconst_3
iadd
aload 3
iload 30
faload
fastore
74: aload 0
getfield com.sun.prism.impl.BaseMesh.vertexBuffer:[F
iload 19
iconst_4
iadd
aload 3
iload 30
iconst_1
iadd
faload
fastore
75: aload 20
getfield com.sun.prism.impl.MeshTempState.triVerts:[I
iload 23
iaload
iconst_3
imul
istore 31
start local 31 76: aload 0
getfield com.sun.prism.impl.BaseMesh.cachedNormals:[F
iload 31
aload 2
iload 29
faload
fastore
77: aload 0
getfield com.sun.prism.impl.BaseMesh.cachedNormals:[F
iload 31
iconst_1
iadd
aload 2
iload 29
iconst_1
iadd
faload
fastore
78: aload 0
getfield com.sun.prism.impl.BaseMesh.cachedNormals:[F
iload 31
iconst_2
iadd
aload 2
iload 29
iconst_2
iadd
faload
fastore
79: iinc 19 9
80: aload 0
getfield com.sun.prism.impl.BaseMesh.point2vbMap:Ljava/util/HashMap;
iload 28
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.sun.prism.impl.BaseMesh$MeshGeomComp2VB
astore 15
start local 15 81: aload 15
ifnonnull 85
82: new com.sun.prism.impl.BaseMesh$MeshGeomComp2VB
dup
aload 0
iload 28
aload 14
invokevirtual java.lang.Integer.intValue:()I
invokespecial com.sun.prism.impl.BaseMesh$MeshGeomComp2VB.<init>:(Lcom/sun/prism/impl/BaseMesh;II)V
astore 15
83: aload 0
getfield com.sun.prism.impl.BaseMesh.point2vbMap:Ljava/util/HashMap;
iload 28
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aload 15
invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
84: goto 86
85: StackMap locals: com.sun.prism.impl.BaseMesh float[] float[] float[] int[] int int int int int int int int int java.lang.Integer com.sun.prism.impl.BaseMesh$MeshGeomComp2VB top top int int com.sun.prism.impl.MeshTempState int int int int int int int int int int int
StackMap stack:
aload 15
aload 14
invokevirtual java.lang.Integer.intValue:()I
invokevirtual com.sun.prism.impl.BaseMesh$MeshGeomComp2VB.addLoc:(I)V
86: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.prism.impl.BaseMesh.normal2vbMap:Ljava/util/HashMap;
iload 29
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.sun.prism.impl.BaseMesh$MeshGeomComp2VB
astore 16
start local 16 87: aload 16
ifnonnull 91
88: new com.sun.prism.impl.BaseMesh$MeshGeomComp2VB
dup
aload 0
iload 29
aload 14
invokevirtual java.lang.Integer.intValue:()I
invokespecial com.sun.prism.impl.BaseMesh$MeshGeomComp2VB.<init>:(Lcom/sun/prism/impl/BaseMesh;II)V
astore 16
89: aload 0
getfield com.sun.prism.impl.BaseMesh.normal2vbMap:Ljava/util/HashMap;
iload 29
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aload 16
invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
90: goto 92
91: StackMap locals: com.sun.prism.impl.BaseMesh float[] float[] float[] int[] int int int int int int int int int java.lang.Integer com.sun.prism.impl.BaseMesh$MeshGeomComp2VB com.sun.prism.impl.BaseMesh$MeshGeomComp2VB top int int com.sun.prism.impl.MeshTempState int int int int int int int int int int int
StackMap stack:
aload 16
aload 14
invokevirtual java.lang.Integer.intValue:()I
invokevirtual com.sun.prism.impl.BaseMesh$MeshGeomComp2VB.addLoc:(I)V
92: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.prism.impl.BaseMesh.texCoord2vbMap:Ljava/util/HashMap;
iload 30
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.sun.prism.impl.BaseMesh$MeshGeomComp2VB
astore 17
start local 17 93: aload 17
ifnonnull 97
94: new com.sun.prism.impl.BaseMesh$MeshGeomComp2VB
dup
aload 0
iload 30
aload 14
invokevirtual java.lang.Integer.intValue:()I
invokespecial com.sun.prism.impl.BaseMesh$MeshGeomComp2VB.<init>:(Lcom/sun/prism/impl/BaseMesh;II)V
astore 17
95: aload 0
getfield com.sun.prism.impl.BaseMesh.texCoord2vbMap:Ljava/util/HashMap;
iload 30
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aload 17
invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
96: goto 98
97: StackMap locals: com.sun.prism.impl.BaseMesh float[] float[] float[] int[] int int int int int int int int int java.lang.Integer com.sun.prism.impl.BaseMesh$MeshGeomComp2VB com.sun.prism.impl.BaseMesh$MeshGeomComp2VB com.sun.prism.impl.BaseMesh$MeshGeomComp2VB int int com.sun.prism.impl.MeshTempState int int int int int int int int int int int
StackMap stack:
aload 17
aload 14
invokevirtual java.lang.Integer.intValue:()I
invokevirtual com.sun.prism.impl.BaseMesh$MeshGeomComp2VB.addLoc:(I)V
98: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.prism.impl.BaseMesh.indexBuffer:[I
iload 18
iinc 18 1
aload 14
invokevirtual java.lang.Integer.intValue:()I
iastore
end local 31 end local 30 end local 29 end local 28 end local 27 end local 26 end local 25 end local 24 99: iinc 23 1
end local 17 end local 16 end local 15 end local 14 StackMap locals: com.sun.prism.impl.BaseMesh float[] float[] float[] int[] int int int int int int int int int top top top top int int com.sun.prism.impl.MeshTempState int int int
StackMap stack:
100: iload 23
iconst_3
if_icmplt 44
end local 23 101: iconst_0
istore 23
start local 23 102: goto 109
103: StackMap locals:
StackMap stack:
aload 20
getfield com.sun.prism.impl.MeshTempState.triPoints:[Lcom/sun/javafx/geom/Vec3f;
iload 23
aaload
aload 1
aload 20
getfield com.sun.prism.impl.MeshTempState.triPointIndex:[I
iload 23
iaload
faload
putfield com.sun.javafx.geom.Vec3f.x:F
104: aload 20
getfield com.sun.prism.impl.MeshTempState.triPoints:[Lcom/sun/javafx/geom/Vec3f;
iload 23
aaload
aload 1
aload 20
getfield com.sun.prism.impl.MeshTempState.triPointIndex:[I
iload 23
iaload
iconst_1
iadd
faload
putfield com.sun.javafx.geom.Vec3f.y:F
105: aload 20
getfield com.sun.prism.impl.MeshTempState.triPoints:[Lcom/sun/javafx/geom/Vec3f;
iload 23
aaload
aload 1
aload 20
getfield com.sun.prism.impl.MeshTempState.triPointIndex:[I
iload 23
iaload
iconst_2
iadd
faload
putfield com.sun.javafx.geom.Vec3f.z:F
106: aload 20
getfield com.sun.prism.impl.MeshTempState.triTexCoords:[Lcom/sun/javafx/geom/Vec2f;
iload 23
aaload
aload 3
aload 20
getfield com.sun.prism.impl.MeshTempState.triTexCoordIndex:[I
iload 23
iaload
faload
putfield com.sun.javafx.geom.Vec2f.x:F
107: aload 20
getfield com.sun.prism.impl.MeshTempState.triTexCoords:[Lcom/sun/javafx/geom/Vec2f;
iload 23
aaload
aload 3
aload 20
getfield com.sun.prism.impl.MeshTempState.triTexCoordIndex:[I
iload 23
iaload
iconst_1
iadd
faload
putfield com.sun.javafx.geom.Vec2f.y:F
108: iinc 23 1
StackMap locals:
StackMap stack:
109: iload 23
iconst_3
if_icmplt 103
end local 23 110: aload 20
getfield com.sun.prism.impl.MeshTempState.triPoints:[Lcom/sun/javafx/geom/Vec3f;
iconst_0
aaload
aload 20
getfield com.sun.prism.impl.MeshTempState.triPoints:[Lcom/sun/javafx/geom/Vec3f;
iconst_1
aaload
111: aload 20
getfield com.sun.prism.impl.MeshTempState.triPoints:[Lcom/sun/javafx/geom/Vec3f;
iconst_2
aaload
aload 20
getfield com.sun.prism.impl.MeshTempState.triTexCoords:[Lcom/sun/javafx/geom/Vec2f;
iconst_0
aaload
112: aload 20
getfield com.sun.prism.impl.MeshTempState.triTexCoords:[Lcom/sun/javafx/geom/Vec2f;
iconst_1
aaload
aload 20
getfield com.sun.prism.impl.MeshTempState.triTexCoords:[Lcom/sun/javafx/geom/Vec2f;
iconst_2
aaload
113: aload 20
getfield com.sun.prism.impl.MeshTempState.triNormals:[Lcom/sun/javafx/geom/Vec3f;
114: invokestatic com.sun.prism.impl.MeshUtil.computeTBNNormalized:(Lcom/sun/javafx/geom/Vec3f;Lcom/sun/javafx/geom/Vec3f;Lcom/sun/javafx/geom/Vec3f;Lcom/sun/javafx/geom/Vec2f;Lcom/sun/javafx/geom/Vec2f;Lcom/sun/javafx/geom/Vec2f;[Lcom/sun/javafx/geom/Vec3f;)V
115: iconst_0
istore 23
start local 23 116: goto 125
117: StackMap locals:
StackMap stack:
aload 20
getfield com.sun.prism.impl.MeshTempState.triVerts:[I
iload 23
iaload
iconst_3
imul
istore 24
start local 24 118: aload 0
getfield com.sun.prism.impl.BaseMesh.cachedTangents:[F
iload 24
aload 20
getfield com.sun.prism.impl.MeshTempState.triNormals:[Lcom/sun/javafx/geom/Vec3f;
iconst_1
aaload
getfield com.sun.javafx.geom.Vec3f.x:F
fastore
119: aload 0
getfield com.sun.prism.impl.BaseMesh.cachedTangents:[F
iload 24
iconst_1
iadd
aload 20
getfield com.sun.prism.impl.MeshTempState.triNormals:[Lcom/sun/javafx/geom/Vec3f;
iconst_1
aaload
getfield com.sun.javafx.geom.Vec3f.y:F
fastore
120: aload 0
getfield com.sun.prism.impl.BaseMesh.cachedTangents:[F
iload 24
iconst_2
iadd
aload 20
getfield com.sun.prism.impl.MeshTempState.triNormals:[Lcom/sun/javafx/geom/Vec3f;
iconst_1
aaload
getfield com.sun.javafx.geom.Vec3f.z:F
fastore
121: aload 0
getfield com.sun.prism.impl.BaseMesh.cachedBitangents:[F
iload 24
aload 20
getfield com.sun.prism.impl.MeshTempState.triNormals:[Lcom/sun/javafx/geom/Vec3f;
iconst_2
aaload
getfield com.sun.javafx.geom.Vec3f.x:F
fastore
122: aload 0
getfield com.sun.prism.impl.BaseMesh.cachedBitangents:[F
iload 24
iconst_1
iadd
aload 20
getfield com.sun.prism.impl.MeshTempState.triNormals:[Lcom/sun/javafx/geom/Vec3f;
iconst_2
aaload
getfield com.sun.javafx.geom.Vec3f.y:F
fastore
123: aload 0
getfield com.sun.prism.impl.BaseMesh.cachedBitangents:[F
iload 24
iconst_2
iadd
aload 20
getfield com.sun.prism.impl.MeshTempState.triNormals:[Lcom/sun/javafx/geom/Vec3f;
iconst_2
aaload
getfield com.sun.javafx.geom.Vec3f.z:F
fastore
end local 24 124: iinc 23 1
StackMap locals:
StackMap stack:
125: iload 23
iconst_3
if_icmplt 117
end local 23 end local 22 126: iinc 21 1
StackMap locals:
StackMap stack:
127: iload 21
iload 13
if_icmplt 41
end local 21 128: aload 0
iload 19
bipush 9
idiv
putfield com.sun.prism.impl.BaseMesh.numberOfVertices:I
129: aload 0
aload 20
aload 0
getfield com.sun.prism.impl.BaseMesh.numberOfVertices:I
130: aload 0
getfield com.sun.prism.impl.BaseMesh.cachedNormals:[F
aload 0
getfield com.sun.prism.impl.BaseMesh.cachedTangents:[F
aload 0
getfield com.sun.prism.impl.BaseMesh.cachedBitangents:[F
aload 0
getfield com.sun.prism.impl.BaseMesh.vertexBuffer:[F
aconst_null
131: invokevirtual com.sun.prism.impl.BaseMesh.convertNormalsToQuats:(Lcom/sun/prism/impl/MeshTempState;I[F[F[F[F[Z)V
132: aload 0
iload 13
iconst_3
imul
putfield com.sun.prism.impl.BaseMesh.indexBufferSize:I
133: aload 0
getfield com.sun.prism.impl.BaseMesh.numberOfVertices:I
ldc 65536
if_icmple 137
134: aload 0
aload 0
getfield com.sun.prism.impl.BaseMesh.vertexBuffer:[F
135: aload 0
getfield com.sun.prism.impl.BaseMesh.numberOfVertices:I
bipush 9
imul
aload 0
getfield com.sun.prism.impl.BaseMesh.indexBuffer:[I
aload 0
getfield com.sun.prism.impl.BaseMesh.indexBufferSize:I
136: invokevirtual com.sun.prism.impl.BaseMesh.buildNativeGeometry:([FI[II)Z
ireturn
137: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.prism.impl.BaseMesh.indexBufferShort:[S
ifnull 138
aload 0
getfield com.sun.prism.impl.BaseMesh.indexBufferShort:[S
arraylength
aload 0
getfield com.sun.prism.impl.BaseMesh.indexBufferSize:I
if_icmpge 139
138: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield com.sun.prism.impl.BaseMesh.indexBufferSize:I
newarray 9
putfield com.sun.prism.impl.BaseMesh.indexBufferShort:[S
139: StackMap locals:
StackMap stack:
iconst_0
istore 21
start local 21 140: iconst_0
istore 22
start local 22 141: goto 146
142: StackMap locals: int int
StackMap stack:
aload 0
getfield com.sun.prism.impl.BaseMesh.indexBufferShort:[S
iload 21
aload 0
getfield com.sun.prism.impl.BaseMesh.indexBuffer:[I
iload 21
iinc 21 1
iaload
i2s
sastore
143: aload 0
getfield com.sun.prism.impl.BaseMesh.indexBufferShort:[S
iload 21
aload 0
getfield com.sun.prism.impl.BaseMesh.indexBuffer:[I
iload 21
iinc 21 1
iaload
i2s
sastore
144: aload 0
getfield com.sun.prism.impl.BaseMesh.indexBufferShort:[S
iload 21
aload 0
getfield com.sun.prism.impl.BaseMesh.indexBuffer:[I
iload 21
iinc 21 1
iaload
i2s
sastore
145: iinc 22 1
StackMap locals:
StackMap stack:
146: iload 22
iload 13
if_icmplt 142
end local 22 147: aload 0
aconst_null
putfield com.sun.prism.impl.BaseMesh.indexBuffer:[I
148: aload 0
aload 0
getfield com.sun.prism.impl.BaseMesh.vertexBuffer:[F
149: aload 0
getfield com.sun.prism.impl.BaseMesh.numberOfVertices:I
bipush 9
imul
aload 0
getfield com.sun.prism.impl.BaseMesh.indexBufferShort:[S
aload 0
getfield com.sun.prism.impl.BaseMesh.indexBufferSize:I
150: invokevirtual com.sun.prism.impl.BaseMesh.buildNativeGeometry:([FI[SI)Z
ireturn
end local 21 end local 20 end local 19 end local 18 end local 13 end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 151 0 this Lcom/sun/prism/impl/BaseMesh;
0 151 1 points [F
0 151 2 normals [F
0 151 3 texCoords [F
0 151 4 faces [I
13 151 5 vertexIndexSize I
14 151 6 faceIndexSize I
15 151 7 pointIndexOffset I
16 151 8 normalIndexOffset I
17 151 9 texCoordIndexOffset I
18 151 10 numPoints I
19 151 11 numNormals I
20 151 12 numTexCoords I
21 151 13 numFaces I
49 100 14 mf2vb Ljava/lang/Integer;
81 100 15 mp2vb Lcom/sun/prism/impl/BaseMesh$MeshGeomComp2VB;
87 100 16 mn2vb Lcom/sun/prism/impl/BaseMesh$MeshGeomComp2VB;
93 100 17 mt2vb Lcom/sun/prism/impl/BaseMesh$MeshGeomComp2VB;
29 151 18 ibCount I
30 151 19 vbCount I
31 151 20 instance Lcom/sun/prism/impl/MeshTempState;
32 39 21 i I
40 128 21 faceCount I
42 126 22 faceIndex I
43 101 23 i I
45 99 24 vertexIndex I
46 99 25 pointIndex I
47 99 26 normalIndex I
48 99 27 texCoordIndex I
51 64 28 numVertices I
52 64 29 newNumVertices I
53 64 30 temp [F
65 99 28 pointOffset I
66 99 29 normalOffset I
67 99 30 texCoordOffset I
76 99 31 index I
102 110 23 i I
116 126 23 i I
118 124 24 index I
140 151 21 ii I
141 147 22 i I
MethodParameters:
Name Flags
points
normals
texCoords
faces
private boolean updatePNTGeometry(float[], int[], float[], int[], float[], int[]);
descriptor: ([F[I[F[I[F[I)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=20, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: aload 0
getfield com.sun.prism.impl.BaseMesh.dirtyVertices:[Z
ifnonnull 2
1: aload 0
aload 0
getfield com.sun.prism.impl.BaseMesh.numberOfVertices:I
newarray 4
putfield com.sun.prism.impl.BaseMesh.dirtyVertices:[Z
2: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.prism.impl.BaseMesh.dirtyVertices:[Z
iconst_0
invokestatic java.util.Arrays.fill:([ZZ)V
3: aload 2
iconst_0
iaload
iconst_3
idiv
istore 7
start local 7 4: aload 2
iconst_1
iaload
iconst_3
idiv
istore 8
start local 8 5: aload 2
iconst_1
iaload
iconst_3
irem
ifle 7
6: iinc 8 1
7: StackMap locals: int int
StackMap stack:
iload 8
ifle 35
8: iconst_0
istore 9
start local 9 9: goto 34
10: StackMap locals: int
StackMap stack:
iload 7
iload 9
iadd
iconst_3
imul
istore 10
start local 10 11: aload 0
getfield com.sun.prism.impl.BaseMesh.point2vbMap:Ljava/util/HashMap;
iload 10
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.sun.prism.impl.BaseMesh$MeshGeomComp2VB
astore 11
start local 11 12: getstatic com.sun.prism.impl.BaseMesh.$assertionsDisabled:Z
ifne 13
aload 11
ifnonnull 13
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
13: StackMap locals: int com.sun.prism.impl.BaseMesh$MeshGeomComp2VB
StackMap stack:
aload 11
ifnull 33
14: aload 11
invokevirtual com.sun.prism.impl.BaseMesh$MeshGeomComp2VB.getLocs:()[I
astore 12
start local 12 15: aload 11
invokevirtual com.sun.prism.impl.BaseMesh$MeshGeomComp2VB.getValidLocs:()I
istore 13
start local 13 16: aload 12
ifnull 27
17: iconst_0
istore 14
start local 14 18: goto 25
19: StackMap locals: int[] int int
StackMap stack:
aload 12
iload 14
iaload
bipush 9
imul
istore 15
start local 15 20: aload 0
getfield com.sun.prism.impl.BaseMesh.vertexBuffer:[F
iload 15
aload 1
iload 10
faload
fastore
21: aload 0
getfield com.sun.prism.impl.BaseMesh.vertexBuffer:[F
iload 15
iconst_1
iadd
aload 1
iload 10
iconst_1
iadd
faload
fastore
22: aload 0
getfield com.sun.prism.impl.BaseMesh.vertexBuffer:[F
iload 15
iconst_2
iadd
aload 1
iload 10
iconst_2
iadd
faload
fastore
23: aload 0
getfield com.sun.prism.impl.BaseMesh.dirtyVertices:[Z
aload 12
iload 14
iaload
iconst_1
bastore
end local 15 24: iinc 14 1
StackMap locals:
StackMap stack:
25: iload 14
iload 13
if_icmplt 19
end local 14 26: goto 33
27: StackMap locals:
StackMap stack:
aload 11
invokevirtual com.sun.prism.impl.BaseMesh$MeshGeomComp2VB.getLoc:()I
istore 14
start local 14 28: iload 14
bipush 9
imul
istore 15
start local 15 29: aload 0
getfield com.sun.prism.impl.BaseMesh.vertexBuffer:[F
iload 15
aload 1
iload 10
faload
fastore
30: aload 0
getfield com.sun.prism.impl.BaseMesh.vertexBuffer:[F
iload 15
iconst_1
iadd
aload 1
iload 10
iconst_1
iadd
faload
fastore
31: aload 0
getfield com.sun.prism.impl.BaseMesh.vertexBuffer:[F
iload 15
iconst_2
iadd
aload 1
iload 10
iconst_2
iadd
faload
fastore
32: aload 0
getfield com.sun.prism.impl.BaseMesh.dirtyVertices:[Z
iload 14
iconst_1
bastore
end local 15 end local 14 end local 13 end local 12 end local 11 end local 10 33: StackMap locals: com.sun.prism.impl.BaseMesh float[] int[] float[] int[] float[] int[] int int int
StackMap stack:
iinc 9 1
StackMap locals:
StackMap stack:
34: iload 9
iload 8
if_icmplt 10
end local 9 35: StackMap locals:
StackMap stack:
aload 6
iconst_0
iaload
iconst_2
idiv
istore 9
start local 9 36: aload 6
iconst_1
iaload
iconst_2
idiv
istore 10
start local 10 37: aload 6
iconst_1
iaload
iconst_2
irem
ifle 39
38: iinc 10 1
39: StackMap locals: int int
StackMap stack:
iload 10
ifle 65
40: iconst_0
istore 11
start local 11 41: goto 64
42: StackMap locals: int
StackMap stack:
iload 9
iload 11
iadd
iconst_2
imul
istore 12
start local 12 43: aload 0
getfield com.sun.prism.impl.BaseMesh.texCoord2vbMap:Ljava/util/HashMap;
iload 12
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.sun.prism.impl.BaseMesh$MeshGeomComp2VB
astore 13
start local 13 44: getstatic com.sun.prism.impl.BaseMesh.$assertionsDisabled:Z
ifne 45
aload 13
ifnonnull 45
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
45: StackMap locals: int com.sun.prism.impl.BaseMesh$MeshGeomComp2VB
StackMap stack:
aload 13
ifnull 63
46: aload 13
invokevirtual com.sun.prism.impl.BaseMesh$MeshGeomComp2VB.getLocs:()[I
astore 14
start local 14 47: aload 13
invokevirtual com.sun.prism.impl.BaseMesh$MeshGeomComp2VB.getValidLocs:()I
istore 15
start local 15 48: aload 14
ifnull 58
49: iconst_0
istore 16
start local 16 50: goto 56
51: StackMap locals: int[] int int
StackMap stack:
aload 14
iload 16
iaload
bipush 9
imul
iconst_3
iadd
istore 17
start local 17 52: aload 0
getfield com.sun.prism.impl.BaseMesh.vertexBuffer:[F
iload 17
aload 5
iload 12
faload
fastore
53: aload 0
getfield com.sun.prism.impl.BaseMesh.vertexBuffer:[F
iload 17
iconst_1
iadd
aload 5
iload 12
iconst_1
iadd
faload
fastore
54: aload 0
getfield com.sun.prism.impl.BaseMesh.dirtyVertices:[Z
aload 14
iload 16
iaload
iconst_1
bastore
end local 17 55: iinc 16 1
StackMap locals:
StackMap stack:
56: iload 16
iload 15
if_icmplt 51
end local 16 57: goto 63
58: StackMap locals:
StackMap stack:
aload 13
invokevirtual com.sun.prism.impl.BaseMesh$MeshGeomComp2VB.getLoc:()I
istore 16
start local 16 59: iload 16
bipush 9
imul
iconst_3
iadd
istore 17
start local 17 60: aload 0
getfield com.sun.prism.impl.BaseMesh.vertexBuffer:[F
iload 17
aload 5
iload 12
faload
fastore
61: aload 0
getfield com.sun.prism.impl.BaseMesh.vertexBuffer:[F
iload 17
iconst_1
iadd
aload 5
iload 12
iconst_1
iadd
faload
fastore
62: aload 0
getfield com.sun.prism.impl.BaseMesh.dirtyVertices:[Z
iload 16
iconst_1
bastore
end local 17 end local 16 end local 15 end local 14 end local 13 end local 12 63: StackMap locals: com.sun.prism.impl.BaseMesh float[] int[] float[] int[] float[] int[] int int int int int
StackMap stack:
iinc 11 1
StackMap locals:
StackMap stack:
64: iload 11
iload 10
if_icmplt 42
end local 11 65: StackMap locals:
StackMap stack:
aload 4
iconst_0
iaload
iconst_3
idiv
istore 11
start local 11 66: aload 4
iconst_1
iaload
iconst_3
idiv
istore 12
start local 12 67: aload 4
iconst_1
iaload
iconst_3
irem
ifle 69
68: iinc 12 1
69: StackMap locals: int int
StackMap stack:
iload 12
ifle 98
70: invokestatic com.sun.prism.impl.MeshTempState.getInstance:()Lcom/sun/prism/impl/MeshTempState;
pop
71: iconst_0
istore 13
start local 13 72: goto 97
73: StackMap locals: int
StackMap stack:
iload 11
iload 13
iadd
iconst_3
imul
istore 14
start local 14 74: aload 0
getfield com.sun.prism.impl.BaseMesh.normal2vbMap:Ljava/util/HashMap;
iload 14
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.sun.prism.impl.BaseMesh$MeshGeomComp2VB
astore 15
start local 15 75: getstatic com.sun.prism.impl.BaseMesh.$assertionsDisabled:Z
ifne 76
aload 15
ifnonnull 76
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
76: StackMap locals: int com.sun.prism.impl.BaseMesh$MeshGeomComp2VB
StackMap stack:
aload 15
ifnull 96
77: aload 15
invokevirtual com.sun.prism.impl.BaseMesh$MeshGeomComp2VB.getLocs:()[I
astore 16
start local 16 78: aload 15
invokevirtual com.sun.prism.impl.BaseMesh$MeshGeomComp2VB.getValidLocs:()I
istore 17
start local 17 79: aload 16
ifnull 90
80: iconst_0
istore 18
start local 18 81: goto 88
82: StackMap locals: int[] int int
StackMap stack:
aload 16
iload 18
iaload
iconst_3
imul
istore 19
start local 19 83: aload 0
getfield com.sun.prism.impl.BaseMesh.cachedNormals:[F
iload 19
aload 3
iload 14
faload
fastore
84: aload 0
getfield com.sun.prism.impl.BaseMesh.cachedNormals:[F
iload 19
iconst_1
iadd
aload 3
iload 14
iconst_1
iadd
faload
fastore
85: aload 0
getfield com.sun.prism.impl.BaseMesh.cachedNormals:[F
iload 19
iconst_2
iadd
aload 3
iload 14
iconst_2
iadd
faload
fastore
86: aload 0
getfield com.sun.prism.impl.BaseMesh.dirtyVertices:[Z
aload 16
iload 18
iaload
iconst_1
bastore
end local 19 87: iinc 18 1
StackMap locals:
StackMap stack:
88: iload 18
iload 17
if_icmplt 82
end local 18 89: goto 96
90: StackMap locals:
StackMap stack:
aload 15
invokevirtual com.sun.prism.impl.BaseMesh$MeshGeomComp2VB.getLoc:()I
istore 18
start local 18 91: iload 18
iconst_3
imul
istore 19
start local 19 92: aload 0
getfield com.sun.prism.impl.BaseMesh.cachedNormals:[F
iload 19
aload 3
iload 14
faload
fastore
93: aload 0
getfield com.sun.prism.impl.BaseMesh.cachedNormals:[F
iload 19
iconst_1
iadd
aload 3
iload 14
iconst_1
iadd
faload
fastore
94: aload 0
getfield com.sun.prism.impl.BaseMesh.cachedNormals:[F
iload 19
iconst_2
iadd
aload 3
iload 14
iconst_2
iadd
faload
fastore
95: aload 0
getfield com.sun.prism.impl.BaseMesh.dirtyVertices:[Z
iload 18
iconst_1
bastore
end local 19 end local 18 end local 17 end local 16 end local 15 end local 14 96: StackMap locals: com.sun.prism.impl.BaseMesh float[] int[] float[] int[] float[] int[] int int int int int int int
StackMap stack:
iinc 13 1
StackMap locals:
StackMap stack:
97: iload 13
iload 12
if_icmplt 73
end local 13 98: StackMap locals:
StackMap stack:
invokestatic com.sun.prism.impl.MeshTempState.getInstance:()Lcom/sun/prism/impl/MeshTempState;
astore 13
start local 13 99: iconst_0
istore 14
start local 14 100: goto 106
101: StackMap locals: com.sun.prism.impl.MeshTempState int
StackMap stack:
aload 13
getfield com.sun.prism.impl.MeshTempState.triPoints:[Lcom/sun/javafx/geom/Vec3f;
iload 14
aaload
ifnonnull 103
102: aload 13
getfield com.sun.prism.impl.MeshTempState.triPoints:[Lcom/sun/javafx/geom/Vec3f;
iload 14
new com.sun.javafx.geom.Vec3f
dup
invokespecial com.sun.javafx.geom.Vec3f.<init>:()V
aastore
103: StackMap locals:
StackMap stack:
aload 13
getfield com.sun.prism.impl.MeshTempState.triTexCoords:[Lcom/sun/javafx/geom/Vec2f;
iload 14
aaload
ifnonnull 105
104: aload 13
getfield com.sun.prism.impl.MeshTempState.triTexCoords:[Lcom/sun/javafx/geom/Vec2f;
iload 14
new com.sun.javafx.geom.Vec2f
dup
invokespecial com.sun.javafx.geom.Vec2f.<init>:()V
aastore
105: StackMap locals:
StackMap stack:
iinc 14 1
StackMap locals:
StackMap stack:
106: iload 14
iconst_3
if_icmplt 101
end local 14 107: iconst_0
istore 14
start local 14 108: goto 139
109: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.prism.impl.BaseMesh.dirtyVertices:[Z
iload 14
baload
ifne 110
aload 0
getfield com.sun.prism.impl.BaseMesh.dirtyVertices:[Z
iload 14
iconst_1
iadd
baload
ifne 110
aload 0
getfield com.sun.prism.impl.BaseMesh.dirtyVertices:[Z
iload 14
iconst_2
iadd
baload
ifeq 138
110: StackMap locals:
StackMap stack:
iload 14
bipush 9
imul
istore 15
start local 15 111: iconst_0
istore 16
start local 16 112: goto 120
113: StackMap locals: int int
StackMap stack:
aload 13
getfield com.sun.prism.impl.MeshTempState.triPoints:[Lcom/sun/javafx/geom/Vec3f;
iload 16
aaload
aload 0
getfield com.sun.prism.impl.BaseMesh.vertexBuffer:[F
iload 15
faload
putfield com.sun.javafx.geom.Vec3f.x:F
114: aload 13
getfield com.sun.prism.impl.MeshTempState.triPoints:[Lcom/sun/javafx/geom/Vec3f;
iload 16
aaload
aload 0
getfield com.sun.prism.impl.BaseMesh.vertexBuffer:[F
iload 15
iconst_1
iadd
faload
putfield com.sun.javafx.geom.Vec3f.y:F
115: aload 13
getfield com.sun.prism.impl.MeshTempState.triPoints:[Lcom/sun/javafx/geom/Vec3f;
iload 16
aaload
aload 0
getfield com.sun.prism.impl.BaseMesh.vertexBuffer:[F
iload 15
iconst_2
iadd
faload
putfield com.sun.javafx.geom.Vec3f.z:F
116: aload 13
getfield com.sun.prism.impl.MeshTempState.triTexCoords:[Lcom/sun/javafx/geom/Vec2f;
iload 16
aaload
aload 0
getfield com.sun.prism.impl.BaseMesh.vertexBuffer:[F
iload 15
iconst_3
iadd
faload
putfield com.sun.javafx.geom.Vec2f.x:F
117: aload 13
getfield com.sun.prism.impl.MeshTempState.triTexCoords:[Lcom/sun/javafx/geom/Vec2f;
iload 16
aaload
aload 0
getfield com.sun.prism.impl.BaseMesh.vertexBuffer:[F
iload 15
iconst_3
iadd
iconst_1
iadd
faload
putfield com.sun.javafx.geom.Vec2f.y:F
118: iinc 15 9
119: iinc 16 1
StackMap locals:
StackMap stack:
120: iload 16
iconst_3
if_icmplt 113
end local 16 121: aload 13
getfield com.sun.prism.impl.MeshTempState.triPoints:[Lcom/sun/javafx/geom/Vec3f;
iconst_0
aaload
aload 13
getfield com.sun.prism.impl.MeshTempState.triPoints:[Lcom/sun/javafx/geom/Vec3f;
iconst_1
aaload
122: aload 13
getfield com.sun.prism.impl.MeshTempState.triPoints:[Lcom/sun/javafx/geom/Vec3f;
iconst_2
aaload
aload 13
getfield com.sun.prism.impl.MeshTempState.triTexCoords:[Lcom/sun/javafx/geom/Vec2f;
iconst_0
aaload
123: aload 13
getfield com.sun.prism.impl.MeshTempState.triTexCoords:[Lcom/sun/javafx/geom/Vec2f;
iconst_1
aaload
aload 13
getfield com.sun.prism.impl.MeshTempState.triTexCoords:[Lcom/sun/javafx/geom/Vec2f;
iconst_2
aaload
124: aload 13
getfield com.sun.prism.impl.MeshTempState.triNormals:[Lcom/sun/javafx/geom/Vec3f;
125: invokestatic com.sun.prism.impl.MeshUtil.computeTBNNormalized:(Lcom/sun/javafx/geom/Vec3f;Lcom/sun/javafx/geom/Vec3f;Lcom/sun/javafx/geom/Vec3f;Lcom/sun/javafx/geom/Vec2f;Lcom/sun/javafx/geom/Vec2f;Lcom/sun/javafx/geom/Vec2f;[Lcom/sun/javafx/geom/Vec3f;)V
126: iload 14
iconst_3
imul
istore 16
start local 16 127: iconst_0
istore 17
start local 17 128: goto 137
129: StackMap locals: int
StackMap stack:
aload 0
getfield com.sun.prism.impl.BaseMesh.cachedTangents:[F
iload 16
aload 13
getfield com.sun.prism.impl.MeshTempState.triNormals:[Lcom/sun/javafx/geom/Vec3f;
iconst_1
aaload
getfield com.sun.javafx.geom.Vec3f.x:F
fastore
130: aload 0
getfield com.sun.prism.impl.BaseMesh.cachedTangents:[F
iload 16
iconst_1
iadd
aload 13
getfield com.sun.prism.impl.MeshTempState.triNormals:[Lcom/sun/javafx/geom/Vec3f;
iconst_1
aaload
getfield com.sun.javafx.geom.Vec3f.y:F
fastore
131: aload 0
getfield com.sun.prism.impl.BaseMesh.cachedTangents:[F
iload 16
iconst_2
iadd
aload 13
getfield com.sun.prism.impl.MeshTempState.triNormals:[Lcom/sun/javafx/geom/Vec3f;
iconst_1
aaload
getfield com.sun.javafx.geom.Vec3f.z:F
fastore
132: aload 0
getfield com.sun.prism.impl.BaseMesh.cachedBitangents:[F
iload 16
aload 13
getfield com.sun.prism.impl.MeshTempState.triNormals:[Lcom/sun/javafx/geom/Vec3f;
iconst_2
aaload
getfield com.sun.javafx.geom.Vec3f.x:F
fastore
133: aload 0
getfield com.sun.prism.impl.BaseMesh.cachedBitangents:[F
iload 16
iconst_1
iadd
aload 13
getfield com.sun.prism.impl.MeshTempState.triNormals:[Lcom/sun/javafx/geom/Vec3f;
iconst_2
aaload
getfield com.sun.javafx.geom.Vec3f.y:F
fastore
134: aload 0
getfield com.sun.prism.impl.BaseMesh.cachedBitangents:[F
iload 16
iconst_2
iadd
aload 13
getfield com.sun.prism.impl.MeshTempState.triNormals:[Lcom/sun/javafx/geom/Vec3f;
iconst_2
aaload
getfield com.sun.javafx.geom.Vec3f.z:F
fastore
135: iinc 16 3
136: iinc 17 1
StackMap locals:
StackMap stack:
137: iload 17
iconst_3
if_icmplt 129
end local 17 end local 16 end local 15 138: StackMap locals:
StackMap stack:
iinc 14 3
StackMap locals:
StackMap stack:
139: iload 14
aload 0
getfield com.sun.prism.impl.BaseMesh.numberOfVertices:I
if_icmplt 109
end local 14 140: aload 0
aload 13
aload 0
getfield com.sun.prism.impl.BaseMesh.numberOfVertices:I
141: aload 0
getfield com.sun.prism.impl.BaseMesh.cachedNormals:[F
aload 0
getfield com.sun.prism.impl.BaseMesh.cachedTangents:[F
aload 0
getfield com.sun.prism.impl.BaseMesh.cachedBitangents:[F
aload 0
getfield com.sun.prism.impl.BaseMesh.vertexBuffer:[F
aload 0
getfield com.sun.prism.impl.BaseMesh.dirtyVertices:[Z
142: invokevirtual com.sun.prism.impl.BaseMesh.convertNormalsToQuats:(Lcom/sun/prism/impl/MeshTempState;I[F[F[F[F[Z)V
143: aload 0
getfield com.sun.prism.impl.BaseMesh.indexBuffer:[I
ifnull 147
144: aload 0
aload 0
getfield com.sun.prism.impl.BaseMesh.vertexBuffer:[F
145: aload 0
getfield com.sun.prism.impl.BaseMesh.numberOfVertices:I
bipush 9
imul
aload 0
getfield com.sun.prism.impl.BaseMesh.indexBuffer:[I
aload 0
getfield com.sun.prism.impl.BaseMesh.indexBufferSize:I
146: invokevirtual com.sun.prism.impl.BaseMesh.buildNativeGeometry:([FI[II)Z
ireturn
147: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield com.sun.prism.impl.BaseMesh.vertexBuffer:[F
148: aload 0
getfield com.sun.prism.impl.BaseMesh.numberOfVertices:I
bipush 9
imul
aload 0
getfield com.sun.prism.impl.BaseMesh.indexBufferShort:[S
aload 0
getfield com.sun.prism.impl.BaseMesh.indexBufferSize:I
149: invokevirtual com.sun.prism.impl.BaseMesh.buildNativeGeometry:([FI[SI)Z
ireturn
end local 13 end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 150 0 this Lcom/sun/prism/impl/BaseMesh;
0 150 1 points [F
0 150 2 pointsFromAndLengthIndices [I
0 150 3 normals [F
0 150 4 normalsFromAndLengthIndices [I
0 150 5 texCoords [F
0 150 6 texCoordsFromAndLengthIndices [I
4 150 7 startPoint I
5 150 8 numPoints I
9 35 9 i I
11 33 10 pointOffset I
12 33 11 mp2vb Lcom/sun/prism/impl/BaseMesh$MeshGeomComp2VB;
15 33 12 locs [I
16 33 13 validLocs I
18 26 14 j I
20 24 15 vbIndex I
28 33 14 loc I
29 33 15 vbIndex I
36 150 9 startTexCoord I
37 150 10 numTexCoords I
41 65 11 i I
43 63 12 texCoordOffset I
44 63 13 mt2vb Lcom/sun/prism/impl/BaseMesh$MeshGeomComp2VB;
47 63 14 locs [I
48 63 15 validLocs I
50 57 16 j I
52 55 17 vbIndex I
59 63 16 loc I
60 63 17 vbIndex I
66 150 11 startNormal I
67 150 12 numNormals I
72 98 13 i I
74 96 14 normalOffset I
75 96 15 mn2vb Lcom/sun/prism/impl/BaseMesh$MeshGeomComp2VB;
78 96 16 locs [I
79 96 17 validLocs I
81 89 18 j I
83 87 19 index I
91 96 18 loc I
92 96 19 index I
99 150 13 instance Lcom/sun/prism/impl/MeshTempState;
100 107 14 i I
108 140 14 j I
111 138 15 vbIndex I
112 121 16 i I
127 138 16 index I
128 138 17 i I
MethodParameters:
Name Flags
points
pointsFromAndLengthIndices
normals
normalsFromAndLengthIndices
texCoords
texCoordsFromAndLengthIndices
public boolean buildGeometry(boolean, float[], int[], float[], int[], float[], int[], int[], int[], int[], int[]);
descriptor: (Z[F[I[F[I[F[I[I[I[I[I)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=9, locals=12, args_size=12
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 start local 8 start local 9 start local 10 start local 11 0: iload 1
ifeq 6
1: aload 0
aload 2
aload 3
2: aload 4
aload 5
3: aload 6
aload 7
4: aload 8
aload 9
5: invokevirtual com.sun.prism.impl.BaseMesh.buildPNTGeometry:([F[I[F[I[F[I[I[I)Z
ireturn
6: StackMap locals:
StackMap stack:
aload 0
aload 2
aload 6
aload 8
aload 10
invokevirtual com.sun.prism.impl.BaseMesh.buildPTGeometry:([F[F[I[I)Z
ireturn
end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/sun/prism/impl/BaseMesh;
0 7 1 userDefinedNormals Z
0 7 2 points [F
0 7 3 pointsFromAndLengthIndices [I
0 7 4 normals [F
0 7 5 normalsFromAndLengthIndices [I
0 7 6 texCoords [F
0 7 7 texCoordsFromAndLengthIndices [I
0 7 8 faces [I
0 7 9 facesFromAndLengthIndices [I
0 7 10 faceSmoothingGroups [I
0 7 11 faceSmoothingGroupsFromAndLengthIndices [I
MethodParameters:
Name Flags
userDefinedNormals
points
pointsFromAndLengthIndices
normals
normalsFromAndLengthIndices
texCoords
texCoordsFromAndLengthIndices
faces
facesFromAndLengthIndices
faceSmoothingGroups
faceSmoothingGroupsFromAndLengthIndices
private boolean buildPNTGeometry(float[], int[], float[], int[], float[], int[], int[], int[]);
descriptor: ([F[I[F[I[F[I[I[I)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=14, args_size=9
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 start local 8 0: aload 2
iconst_1
iaload
ifle 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: istore 9
start local 9 3: aload 4
iconst_1
iaload
ifle 4
iconst_1
goto 5
StackMap locals: int
StackMap stack:
4: iconst_0
StackMap locals:
StackMap stack: int
5: istore 10
start local 10 6: aload 6
iconst_1
iaload
ifle 7
iconst_1
goto 8
StackMap locals: int
StackMap stack:
7: iconst_0
StackMap locals:
StackMap stack: int
8: istore 11
start local 11 9: aload 8
iconst_1
iaload
ifle 10
iconst_1
goto 11
StackMap locals: int
StackMap stack:
10: iconst_0
StackMap locals:
StackMap stack: int
11: istore 12
start local 12 12: iload 9
ifne 13
iload 10
ifne 13
iload 11
ifne 13
iload 12
ifeq 14
StackMap locals: int
StackMap stack:
13: iconst_0
goto 15
StackMap locals:
StackMap stack:
14: iconst_1
StackMap locals:
StackMap stack: int
15: istore 13
start local 13 16: iload 12
ifeq 18
17: iconst_1
istore 13
18: StackMap locals: int
StackMap stack:
iload 13
ifne 24
aload 0
getfield com.sun.prism.impl.BaseMesh.vertexBuffer:[F
ifnull 24
19: aload 0
getfield com.sun.prism.impl.BaseMesh.indexBuffer:[I
ifnonnull 20
aload 0
getfield com.sun.prism.impl.BaseMesh.indexBufferShort:[S
ifnull 24
20: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
21: aload 3
aload 4
22: aload 5
aload 6
23: invokevirtual com.sun.prism.impl.BaseMesh.updatePNTGeometry:([F[I[F[I[F[I)Z
ireturn
24: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 3
aload 5
aload 7
invokevirtual com.sun.prism.impl.BaseMesh.doBuildPNTGeometry:([F[F[F[I)Z
ireturn
end local 13 end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 25 0 this Lcom/sun/prism/impl/BaseMesh;
0 25 1 points [F
0 25 2 pointsFromAndLengthIndices [I
0 25 3 normals [F
0 25 4 normalsFromAndLengthIndices [I
0 25 5 texCoords [F
0 25 6 texCoordsFromAndLengthIndices [I
0 25 7 faces [I
0 25 8 facesFromAndLengthIndices [I
3 25 9 updatePoints Z
6 25 10 updateNormals Z
9 25 11 updateTexCoords Z
12 25 12 updateFaces Z
16 25 13 buildGeom Z
MethodParameters:
Name Flags
points
pointsFromAndLengthIndices
normals
normalsFromAndLengthIndices
texCoords
texCoordsFromAndLengthIndices
faces
facesFromAndLengthIndices
private boolean buildPTGeometry(float[], float[], int[], int[]);
descriptor: ([F[F[I[I)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=7, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 1
arraylength
iconst_3
idiv
putfield com.sun.prism.impl.BaseMesh.nVerts:I
1: aload 0
aload 2
arraylength
iconst_2
idiv
putfield com.sun.prism.impl.BaseMesh.nTVerts:I
2: aload 0
aload 3
arraylength
getstatic javafx.scene.shape.VertexFormat.POINT_TEXCOORD:Ljavafx/scene/shape/VertexFormat;
invokevirtual javafx.scene.shape.VertexFormat.getVertexIndexSize:()I
iconst_3
imul
idiv
putfield com.sun.prism.impl.BaseMesh.nFaces:I
3: getstatic com.sun.prism.impl.BaseMesh.$assertionsDisabled:Z
ifne 5
aload 0
getfield com.sun.prism.impl.BaseMesh.nVerts:I
ifle 4
aload 0
getfield com.sun.prism.impl.BaseMesh.nFaces:I
ifle 4
aload 0
getfield com.sun.prism.impl.BaseMesh.nTVerts:I
ifgt 5
StackMap locals:
StackMap stack:
4: new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
5: StackMap locals:
StackMap stack:
aload 0
aload 1
putfield com.sun.prism.impl.BaseMesh.pos:[F
6: aload 0
aload 2
putfield com.sun.prism.impl.BaseMesh.uv:[F
7: aload 0
aload 3
putfield com.sun.prism.impl.BaseMesh.faces:[I
8: aload 0
aload 4
arraylength
aload 0
getfield com.sun.prism.impl.BaseMesh.nFaces:I
if_icmpne 9
aload 4
goto 10
StackMap locals:
StackMap stack: com.sun.prism.impl.BaseMesh
9: aconst_null
StackMap locals: com.sun.prism.impl.BaseMesh float[] float[] int[] int[]
StackMap stack: com.sun.prism.impl.BaseMesh int[]
10: putfield com.sun.prism.impl.BaseMesh.smoothing:[I
11: invokestatic com.sun.prism.impl.MeshTempState.getInstance:()Lcom/sun/prism/impl/MeshTempState;
astore 5
start local 5 12: aload 5
getfield com.sun.prism.impl.MeshTempState.pool:[Lcom/sun/prism/impl/MeshVertex;
ifnull 13
aload 5
getfield com.sun.prism.impl.MeshTempState.pool:[Lcom/sun/prism/impl/MeshVertex;
arraylength
aload 0
getfield com.sun.prism.impl.BaseMesh.nFaces:I
iconst_3
imul
if_icmpge 14
13: StackMap locals: com.sun.prism.impl.MeshTempState
StackMap stack:
aload 5
aload 0
getfield com.sun.prism.impl.BaseMesh.nFaces:I
iconst_3
imul
anewarray com.sun.prism.impl.MeshVertex
putfield com.sun.prism.impl.MeshTempState.pool:[Lcom/sun/prism/impl/MeshVertex;
14: StackMap locals:
StackMap stack:
aload 5
getfield com.sun.prism.impl.MeshTempState.indexBuffer:[I
ifnull 15
aload 5
getfield com.sun.prism.impl.MeshTempState.indexBuffer:[I
arraylength
aload 0
getfield com.sun.prism.impl.BaseMesh.nFaces:I
iconst_3
imul
if_icmpge 16
15: StackMap locals:
StackMap stack:
aload 5
aload 0
getfield com.sun.prism.impl.BaseMesh.nFaces:I
iconst_3
imul
newarray 10
putfield com.sun.prism.impl.MeshTempState.indexBuffer:[I
16: StackMap locals:
StackMap stack:
aload 5
getfield com.sun.prism.impl.MeshTempState.pVertex:[Lcom/sun/prism/impl/MeshVertex;
ifnull 17
aload 5
getfield com.sun.prism.impl.MeshTempState.pVertex:[Lcom/sun/prism/impl/MeshVertex;
arraylength
aload 0
getfield com.sun.prism.impl.BaseMesh.nVerts:I
if_icmpge 19
17: StackMap locals:
StackMap stack:
aload 5
aload 0
getfield com.sun.prism.impl.BaseMesh.nVerts:I
anewarray com.sun.prism.impl.MeshVertex
putfield com.sun.prism.impl.MeshTempState.pVertex:[Lcom/sun/prism/impl/MeshVertex;
18: goto 20
19: StackMap locals:
StackMap stack:
aload 5
getfield com.sun.prism.impl.MeshTempState.pVertex:[Lcom/sun/prism/impl/MeshVertex;
iconst_0
aload 5
getfield com.sun.prism.impl.MeshTempState.pVertex:[Lcom/sun/prism/impl/MeshVertex;
arraylength
aconst_null
invokestatic java.util.Arrays.fill:([Ljava/lang/Object;IILjava/lang/Object;)V
20: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.prism.impl.BaseMesh.checkSmoothingGroup:()V
21: aload 0
aload 5
getfield com.sun.prism.impl.MeshTempState.pool:[Lcom/sun/prism/impl/MeshVertex;
aload 5
getfield com.sun.prism.impl.MeshTempState.pVertex:[Lcom/sun/prism/impl/MeshVertex;
aload 5
getfield com.sun.prism.impl.MeshTempState.indexBuffer:[I
invokevirtual com.sun.prism.impl.BaseMesh.computeTBNormal:([Lcom/sun/prism/impl/MeshVertex;[Lcom/sun/prism/impl/MeshVertex;[I)V
22: aload 5
getfield com.sun.prism.impl.MeshTempState.pVertex:[Lcom/sun/prism/impl/MeshVertex;
aload 0
getfield com.sun.prism.impl.BaseMesh.nVerts:I
23: aload 0
getfield com.sun.prism.impl.BaseMesh.allHardEdges:Z
aload 0
getfield com.sun.prism.impl.BaseMesh.allSameSmoothing:Z
24: invokestatic com.sun.prism.impl.MeshVertex.processVertices:([Lcom/sun/prism/impl/MeshVertex;IZZ)I
istore 6
start local 6 25: aload 5
getfield com.sun.prism.impl.MeshTempState.vertexBuffer:[F
ifnull 27
26: aload 5
getfield com.sun.prism.impl.MeshTempState.vertexBuffer:[F
arraylength
iload 6
bipush 9
imul
if_icmpge 28
27: StackMap locals: int
StackMap stack:
aload 5
iload 6
bipush 9
imul
newarray 6
putfield com.sun.prism.impl.MeshTempState.vertexBuffer:[F
28: StackMap locals:
StackMap stack:
aload 0
aload 5
getfield com.sun.prism.impl.MeshTempState.pVertex:[Lcom/sun/prism/impl/MeshVertex;
aload 5
getfield com.sun.prism.impl.MeshTempState.vertexBuffer:[F
invokevirtual com.sun.prism.impl.BaseMesh.buildVertexBuffer:([Lcom/sun/prism/impl/MeshVertex;[F)V
29: iload 6
ldc 65536
if_icmple 34
30: aload 0
aload 5
getfield com.sun.prism.impl.MeshTempState.pool:[Lcom/sun/prism/impl/MeshVertex;
aload 5
getfield com.sun.prism.impl.MeshTempState.indexBuffer:[I
aconst_null
invokevirtual com.sun.prism.impl.BaseMesh.buildIndexBuffer:([Lcom/sun/prism/impl/MeshVertex;[I[S)V
31: aload 0
aload 5
getfield com.sun.prism.impl.MeshTempState.vertexBuffer:[F
32: iload 6
bipush 9
imul
aload 5
getfield com.sun.prism.impl.MeshTempState.indexBuffer:[I
aload 0
getfield com.sun.prism.impl.BaseMesh.nFaces:I
iconst_3
imul
33: invokevirtual com.sun.prism.impl.BaseMesh.buildNativeGeometry:([FI[II)Z
ireturn
34: StackMap locals:
StackMap stack:
aload 5
getfield com.sun.prism.impl.MeshTempState.indexBufferShort:[S
ifnull 35
aload 5
getfield com.sun.prism.impl.MeshTempState.indexBufferShort:[S
arraylength
aload 0
getfield com.sun.prism.impl.BaseMesh.nFaces:I
iconst_3
imul
if_icmpge 36
35: StackMap locals:
StackMap stack:
aload 5
aload 0
getfield com.sun.prism.impl.BaseMesh.nFaces:I
iconst_3
imul
newarray 9
putfield com.sun.prism.impl.MeshTempState.indexBufferShort:[S
36: StackMap locals:
StackMap stack:
aload 0
aload 5
getfield com.sun.prism.impl.MeshTempState.pool:[Lcom/sun/prism/impl/MeshVertex;
aload 5
getfield com.sun.prism.impl.MeshTempState.indexBuffer:[I
aload 5
getfield com.sun.prism.impl.MeshTempState.indexBufferShort:[S
invokevirtual com.sun.prism.impl.BaseMesh.buildIndexBuffer:([Lcom/sun/prism/impl/MeshVertex;[I[S)V
37: aload 0
aload 5
getfield com.sun.prism.impl.MeshTempState.vertexBuffer:[F
38: iload 6
bipush 9
imul
aload 5
getfield com.sun.prism.impl.MeshTempState.indexBufferShort:[S
aload 0
getfield com.sun.prism.impl.BaseMesh.nFaces:I
iconst_3
imul
39: invokevirtual com.sun.prism.impl.BaseMesh.buildNativeGeometry:([FI[SI)Z
ireturn
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 40 0 this Lcom/sun/prism/impl/BaseMesh;
0 40 1 pos [F
0 40 2 uv [F
0 40 3 faces [I
0 40 4 smoothing [I
12 40 5 instance Lcom/sun/prism/impl/MeshTempState;
25 40 6 nNewVerts I
MethodParameters:
Name Flags
pos
uv
faces
smoothing
private void computeTBNormal(com.sun.prism.impl.MeshVertex[], com.sun.prism.impl.MeshVertex[], int[]);
descriptor: ([Lcom/sun/prism/impl/MeshVertex;[Lcom/sun/prism/impl/MeshVertex;[I)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=18, args_size=4
start local 0 start local 1 start local 2 start local 3 0: invokestatic com.sun.prism.impl.MeshTempState.getInstance:()Lcom/sun/prism/impl/MeshTempState;
astore 4
start local 4 1: aload 4
getfield com.sun.prism.impl.MeshTempState.smFace:[I
astore 5
start local 5 2: aload 4
getfield com.sun.prism.impl.MeshTempState.triVerts:[I
astore 6
start local 6 3: aload 4
getfield com.sun.prism.impl.MeshTempState.triPoints:[Lcom/sun/javafx/geom/Vec3f;
astore 7
start local 7 4: aload 4
getfield com.sun.prism.impl.MeshTempState.triTexCoords:[Lcom/sun/javafx/geom/Vec2f;
astore 8
start local 8 5: aload 4
getfield com.sun.prism.impl.MeshTempState.triNormals:[Lcom/sun/javafx/geom/Vec3f;
astore 9
start local 9 6: ldc Lcom/sun/prism/impl/BaseMesh;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
astore 10
start local 10 7: iconst_0
istore 11
start local 11 8: iconst_0
istore 12
start local 12 9: iconst_0
istore 13
start local 13 10: goto 67
11: StackMap locals: com.sun.prism.impl.BaseMesh com.sun.prism.impl.MeshVertex[] com.sun.prism.impl.MeshVertex[] int[] com.sun.prism.impl.MeshTempState int[] int[] com.sun.javafx.geom.Vec3f[] com.sun.javafx.geom.Vec2f[] com.sun.javafx.geom.Vec3f[] java.lang.String int int int
StackMap stack:
iload 11
iconst_3
imul
istore 14
start local 14 12: aload 0
iload 11
aload 5
invokevirtual com.sun.prism.impl.BaseMesh.getFace:(I[I)[I
astore 5
13: aload 6
iconst_0
aload 5
getstatic com.sun.prism.impl.BaseMesh$FaceMembers.POINT0:Lcom/sun/prism/impl/BaseMesh$FaceMembers;
invokevirtual com.sun.prism.impl.BaseMesh$FaceMembers.ordinal:()I
iaload
iastore
14: aload 6
iconst_1
aload 5
getstatic com.sun.prism.impl.BaseMesh$FaceMembers.POINT1:Lcom/sun/prism/impl/BaseMesh$FaceMembers;
invokevirtual com.sun.prism.impl.BaseMesh$FaceMembers.ordinal:()I
iaload
iastore
15: aload 6
iconst_2
aload 5
getstatic com.sun.prism.impl.BaseMesh$FaceMembers.POINT2:Lcom/sun/prism/impl/BaseMesh$FaceMembers;
invokevirtual com.sun.prism.impl.BaseMesh$FaceMembers.ordinal:()I
iaload
iastore
16: aload 6
invokestatic com.sun.prism.impl.MeshUtil.isDeadFace:([I)Z
ifeq 23
17: aload 10
invokestatic com.sun.javafx.logging.PlatformLogger.getLogger:(Ljava/lang/String;)Lcom/sun/javafx/logging/PlatformLogger;
getstatic com.sun.javafx.logging.PlatformLogger$Level.FINE:Lcom/sun/javafx/logging/PlatformLogger$Level;
invokevirtual com.sun.javafx.logging.PlatformLogger.isLoggable:(Lcom/sun/javafx/logging/PlatformLogger$Level;)Z
ifeq 23
18: iinc 12 1
19: aload 10
invokestatic com.sun.javafx.logging.PlatformLogger.getLogger:(Ljava/lang/String;)Lcom/sun/javafx/logging/PlatformLogger;
new java.lang.StringBuilder
dup
ldc "Dead face ["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
20: aload 6
iconst_0
iaload
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ", "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 6
iconst_1
iaload
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ", "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 6
iconst_2
iaload
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
21: ldc "] @ face group "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 11
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc "; nEmptyFaces = "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 12
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
22: invokevirtual com.sun.javafx.logging.PlatformLogger.fine:(Ljava/lang/String;)V
23: StackMap locals: int
StackMap stack:
iconst_0
istore 15
start local 15 24: goto 27
25: StackMap locals: int
StackMap stack:
aload 7
iload 15
aload 0
aload 6
iload 15
iaload
aload 7
iload 15
aaload
invokevirtual com.sun.prism.impl.BaseMesh.getVertex:(ILcom/sun/javafx/geom/Vec3f;)Lcom/sun/javafx/geom/Vec3f;
aastore
26: iinc 15 1
StackMap locals:
StackMap stack:
27: iload 15
iconst_3
if_icmplt 25
end local 15 28: aload 6
iconst_0
aload 5
getstatic com.sun.prism.impl.BaseMesh$FaceMembers.TEXCOORD0:Lcom/sun/prism/impl/BaseMesh$FaceMembers;
invokevirtual com.sun.prism.impl.BaseMesh$FaceMembers.ordinal:()I
iaload
iastore
29: aload 6
iconst_1
aload 5
getstatic com.sun.prism.impl.BaseMesh$FaceMembers.TEXCOORD1:Lcom/sun/prism/impl/BaseMesh$FaceMembers;
invokevirtual com.sun.prism.impl.BaseMesh$FaceMembers.ordinal:()I
iaload
iastore
30: aload 6
iconst_2
aload 5
getstatic com.sun.prism.impl.BaseMesh$FaceMembers.TEXCOORD2:Lcom/sun/prism/impl/BaseMesh$FaceMembers;
invokevirtual com.sun.prism.impl.BaseMesh$FaceMembers.ordinal:()I
iaload
iastore
31: iconst_0
istore 15
start local 15 32: goto 35
33: StackMap locals:
StackMap stack:
aload 8
iload 15
aload 0
aload 6
iload 15
iaload
aload 8
iload 15
aaload
invokevirtual com.sun.prism.impl.BaseMesh.getTVertex:(ILcom/sun/javafx/geom/Vec2f;)Lcom/sun/javafx/geom/Vec2f;
aastore
34: iinc 15 1
StackMap locals:
StackMap stack:
35: iload 15
iconst_3
if_icmplt 33
end local 15 36: aload 7
iconst_0
aaload
aload 7
iconst_1
aaload
aload 7
iconst_2
aaload
37: aload 8
iconst_0
aaload
aload 8
iconst_1
aaload
aload 8
iconst_2
aaload
38: aload 9
39: invokestatic com.sun.prism.impl.MeshUtil.computeTBNNormalized:(Lcom/sun/javafx/geom/Vec3f;Lcom/sun/javafx/geom/Vec3f;Lcom/sun/javafx/geom/Vec3f;Lcom/sun/javafx/geom/Vec2f;Lcom/sun/javafx/geom/Vec2f;Lcom/sun/javafx/geom/Vec2f;[Lcom/sun/javafx/geom/Vec3f;)V
40: iconst_0
istore 15
start local 15 41: goto 65
42: StackMap locals:
StackMap stack:
aload 1
iload 13
aload 1
iload 13
aaload
ifnonnull 43
new com.sun.prism.impl.MeshVertex
dup
invokespecial com.sun.prism.impl.MeshVertex.<init>:()V
goto 44
StackMap locals: com.sun.prism.impl.BaseMesh com.sun.prism.impl.MeshVertex[] com.sun.prism.impl.MeshVertex[] int[] com.sun.prism.impl.MeshTempState int[] int[] com.sun.javafx.geom.Vec3f[] com.sun.javafx.geom.Vec2f[] com.sun.javafx.geom.Vec3f[] java.lang.String int int int int int
StackMap stack: com.sun.prism.impl.MeshVertex[] int
43: aload 1
iload 13
aaload
StackMap locals: com.sun.prism.impl.BaseMesh com.sun.prism.impl.MeshVertex[] com.sun.prism.impl.MeshVertex[] int[] com.sun.prism.impl.MeshTempState int[] int[] com.sun.javafx.geom.Vec3f[] com.sun.javafx.geom.Vec2f[] com.sun.javafx.geom.Vec3f[] java.lang.String int int int int int
StackMap stack: com.sun.prism.impl.MeshVertex[] int com.sun.prism.impl.MeshVertex
44: aastore
45: iconst_0
istore 16
start local 16 46: goto 49
47: StackMap locals: int
StackMap stack:
aload 1
iload 13
aaload
getfield com.sun.prism.impl.MeshVertex.norm:[Lcom/sun/javafx/geom/Vec3f;
iload 16
aaload
aload 9
iload 16
aaload
invokevirtual com.sun.javafx.geom.Vec3f.set:(Lcom/sun/javafx/geom/Vec3f;)V
48: iinc 16 1
StackMap locals:
StackMap stack:
49: iload 16
iconst_3
if_icmplt 47
end local 16 50: aload 1
iload 13
aaload
aload 5
getstatic com.sun.prism.impl.BaseMesh$FaceMembers.SMOOTHING_GROUP:Lcom/sun/prism/impl/BaseMesh$FaceMembers;
invokevirtual com.sun.prism.impl.BaseMesh$FaceMembers.ordinal:()I
iaload
putfield com.sun.prism.impl.MeshVertex.smGroup:I
51: aload 1
iload 13
aaload
iload 11
putfield com.sun.prism.impl.MeshVertex.fIdx:I
52: aload 1
iload 13
aaload
aload 6
iload 15
iaload
putfield com.sun.prism.impl.MeshVertex.tVert:I
53: aload 1
iload 13
aaload
iconst_m1
putfield com.sun.prism.impl.MeshVertex.index:I
54: iload 15
ifne 55
getstatic com.sun.prism.impl.BaseMesh$FaceMembers.POINT0:Lcom/sun/prism/impl/BaseMesh$FaceMembers;
invokevirtual com.sun.prism.impl.BaseMesh$FaceMembers.ordinal:()I
goto 57
55: StackMap locals:
StackMap stack:
iload 15
iconst_1
if_icmpne 56
getstatic com.sun.prism.impl.BaseMesh$FaceMembers.POINT1:Lcom/sun/prism/impl/BaseMesh$FaceMembers;
invokevirtual com.sun.prism.impl.BaseMesh$FaceMembers.ordinal:()I
goto 57
56: StackMap locals:
StackMap stack:
getstatic com.sun.prism.impl.BaseMesh$FaceMembers.POINT2:Lcom/sun/prism/impl/BaseMesh$FaceMembers;
invokevirtual com.sun.prism.impl.BaseMesh$FaceMembers.ordinal:()I
57: StackMap locals:
StackMap stack: int
istore 16
start local 16 58: aload 5
iload 16
iaload
istore 17
start local 17 59: aload 1
iload 13
aaload
iload 17
putfield com.sun.prism.impl.MeshVertex.pVert:I
60: aload 3
iload 14
iload 15
iadd
iload 17
iastore
61: aload 1
iload 13
aaload
aload 2
iload 17
aaload
putfield com.sun.prism.impl.MeshVertex.next:Lcom/sun/prism/impl/MeshVertex;
62: aload 2
iload 17
aload 1
iload 13
aaload
aastore
63: iinc 13 1
end local 17 end local 16 64: iinc 15 1
StackMap locals:
StackMap stack:
65: iload 15
iconst_3
if_icmplt 42
end local 15 end local 14 66: iinc 11 1
StackMap locals:
StackMap stack:
67: iload 11
aload 0
getfield com.sun.prism.impl.BaseMesh.nFaces:I
if_icmplt 11
end local 13 end local 12 end local 11 68: return
end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 69 0 this Lcom/sun/prism/impl/BaseMesh;
0 69 1 pool [Lcom/sun/prism/impl/MeshVertex;
0 69 2 pVertex [Lcom/sun/prism/impl/MeshVertex;
0 69 3 indexBuffer [I
1 69 4 instance Lcom/sun/prism/impl/MeshTempState;
2 69 5 smFace [I
3 69 6 triVerts [I
4 69 7 triPoints [Lcom/sun/javafx/geom/Vec3f;
5 69 8 triTexCoords [Lcom/sun/javafx/geom/Vec2f;
6 69 9 triNormals [Lcom/sun/javafx/geom/Vec3f;
7 69 10 logname Ljava/lang/String;
8 68 11 f I
9 68 12 nDeadFaces I
10 68 13 poolIndex I
12 66 14 index I
24 28 15 i I
32 36 15 i I
41 66 15 j I
46 50 16 i I
58 64 16 ii I
59 64 17 pIdx I
MethodParameters:
Name Flags
pool
pVertex
indexBuffer
private void buildVSQuat(com.sun.javafx.geom.Vec3f[], com.sun.javafx.geom.Quat4f);
descriptor: ([Lcom/sun/javafx/geom/Vec3f;Lcom/sun/javafx/geom/Quat4f;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=5, args_size=3
start local 0 start local 1 start local 2 0: invokestatic com.sun.prism.impl.MeshTempState.getInstance:()Lcom/sun/prism/impl/MeshTempState;
getfield com.sun.prism.impl.MeshTempState.vec3f1:Lcom/sun/javafx/geom/Vec3f;
astore 3
start local 3 1: aload 3
aload 1
iconst_1
aaload
aload 1
iconst_2
aaload
invokevirtual com.sun.javafx.geom.Vec3f.cross:(Lcom/sun/javafx/geom/Vec3f;Lcom/sun/javafx/geom/Vec3f;)V
2: aload 1
iconst_0
aaload
aload 3
invokevirtual com.sun.javafx.geom.Vec3f.dot:(Lcom/sun/javafx/geom/Vec3f;)F
fstore 4
start local 4 3: fload 4
fconst_0
fcmpg
ifge 5
4: aload 1
iconst_2
aaload
ldc -1.0
invokevirtual com.sun.javafx.geom.Vec3f.mul:(F)V
5: StackMap locals: com.sun.javafx.geom.Vec3f float
StackMap stack:
aload 1
aload 2
invokestatic com.sun.prism.impl.MeshUtil.buildQuat:([Lcom/sun/javafx/geom/Vec3f;Lcom/sun/javafx/geom/Quat4f;)V
6: fload 4
fconst_0
fcmpg
ifge 10
7: aload 2
getfield com.sun.javafx.geom.Quat4f.w:F
fconst_0
fcmpl
ifne 9
8: aload 2
ldc 1.0E-10
putfield com.sun.javafx.geom.Quat4f.w:F
9: StackMap locals:
StackMap stack:
aload 2
ldc -1.0
invokevirtual com.sun.javafx.geom.Quat4f.scale:(F)V
10: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lcom/sun/prism/impl/BaseMesh;
0 11 1 tm [Lcom/sun/javafx/geom/Vec3f;
0 11 2 quat Lcom/sun/javafx/geom/Quat4f;
1 11 3 v Lcom/sun/javafx/geom/Vec3f;
3 11 4 d F
MethodParameters:
Name Flags
tm
quat
private void buildVertexBuffer(com.sun.prism.impl.MeshVertex[], float[]);
descriptor: ([Lcom/sun/prism/impl/MeshVertex;[F)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=9, args_size=3
start local 0 start local 1 start local 2 0: invokestatic com.sun.prism.impl.MeshTempState.getInstance:()Lcom/sun/prism/impl/MeshTempState;
getfield com.sun.prism.impl.MeshTempState.quat:Lcom/sun/javafx/geom/Quat4f;
astore 3
start local 3 1: iconst_0
istore 4
start local 4 2: iconst_0
istore 5
start local 5 3: iconst_0
istore 6
start local 6 4: goto 24
5: StackMap locals: com.sun.prism.impl.BaseMesh com.sun.prism.impl.MeshVertex[] float[] com.sun.javafx.geom.Quat4f int int int
StackMap stack:
aload 1
iload 5
aaload
astore 7
start local 7 6: goto 22
7: StackMap locals: com.sun.prism.impl.MeshVertex
StackMap stack:
aload 7
getfield com.sun.prism.impl.MeshVertex.index:I
iload 4
if_icmpne 21
8: aload 7
getfield com.sun.prism.impl.MeshVertex.pVert:I
iconst_3
imul
istore 8
start local 8 9: aload 2
iload 6
iinc 6 1
aload 0
getfield com.sun.prism.impl.BaseMesh.pos:[F
iload 8
faload
fastore
10: aload 2
iload 6
iinc 6 1
aload 0
getfield com.sun.prism.impl.BaseMesh.pos:[F
iload 8
iconst_1
iadd
faload
fastore
11: aload 2
iload 6
iinc 6 1
aload 0
getfield com.sun.prism.impl.BaseMesh.pos:[F
iload 8
iconst_2
iadd
faload
fastore
12: aload 7
getfield com.sun.prism.impl.MeshVertex.tVert:I
iconst_2
imul
istore 8
13: aload 2
iload 6
iinc 6 1
aload 0
getfield com.sun.prism.impl.BaseMesh.uv:[F
iload 8
faload
fastore
14: aload 2
iload 6
iinc 6 1
aload 0
getfield com.sun.prism.impl.BaseMesh.uv:[F
iload 8
iconst_1
iadd
faload
fastore
15: aload 0
aload 7
getfield com.sun.prism.impl.MeshVertex.norm:[Lcom/sun/javafx/geom/Vec3f;
aload 3
invokevirtual com.sun.prism.impl.BaseMesh.buildVSQuat:([Lcom/sun/javafx/geom/Vec3f;Lcom/sun/javafx/geom/Quat4f;)V
16: aload 2
iload 6
iinc 6 1
aload 3
getfield com.sun.javafx.geom.Quat4f.x:F
fastore
17: aload 2
iload 6
iinc 6 1
aload 3
getfield com.sun.javafx.geom.Quat4f.y:F
fastore
18: aload 2
iload 6
iinc 6 1
aload 3
getfield com.sun.javafx.geom.Quat4f.z:F
fastore
19: aload 2
iload 6
iinc 6 1
aload 3
getfield com.sun.javafx.geom.Quat4f.w:F
fastore
20: iinc 4 1
end local 8 21: StackMap locals:
StackMap stack:
aload 7
getfield com.sun.prism.impl.MeshVertex.next:Lcom/sun/prism/impl/MeshVertex;
astore 7
StackMap locals:
StackMap stack:
22: aload 7
ifnonnull 7
end local 7 23: iinc 5 1
StackMap locals:
StackMap stack:
24: iload 5
aload 0
getfield com.sun.prism.impl.BaseMesh.nVerts:I
if_icmplt 5
end local 6 end local 5 25: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 26 0 this Lcom/sun/prism/impl/BaseMesh;
0 26 1 pVerts [Lcom/sun/prism/impl/MeshVertex;
0 26 2 vertexBuffer [F
1 26 3 quat Lcom/sun/javafx/geom/Quat4f;
2 26 4 idLast I
3 25 5 i I
4 25 6 index I
6 23 7 v Lcom/sun/prism/impl/MeshVertex;
9 21 8 ind I
MethodParameters:
Name Flags
pVerts
vertexBuffer
private void buildIndexBuffer(com.sun.prism.impl.MeshVertex[], int[], short[]);
descriptor: ([Lcom/sun/prism/impl/MeshVertex;[I[S)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iconst_0
istore 4
start local 4 1: goto 24
2: StackMap locals: int
StackMap stack:
iload 4
iconst_3
imul
istore 5
start local 5 3: aload 2
iload 5
iaload
iconst_m1
if_icmpeq 15
4: iconst_0
istore 6
start local 6 5: goto 13
6: StackMap locals: int int
StackMap stack:
getstatic com.sun.prism.impl.BaseMesh.$assertionsDisabled:Z
ifne 7
aload 1
iload 5
aaload
getfield com.sun.prism.impl.MeshVertex.fIdx:I
iload 4
if_icmpeq 7
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
7: StackMap locals:
StackMap stack:
aload 3
ifnull 10
8: aload 3
iload 5
iload 6
iadd
aload 1
iload 5
iload 6
iadd
aaload
getfield com.sun.prism.impl.MeshVertex.index:I
i2s
sastore
9: goto 11
10: StackMap locals:
StackMap stack:
aload 2
iload 5
iload 6
iadd
aload 1
iload 5
iload 6
iadd
aaload
getfield com.sun.prism.impl.MeshVertex.index:I
iastore
11: StackMap locals:
StackMap stack:
aload 1
iload 5
iload 6
iadd
aaload
aconst_null
putfield com.sun.prism.impl.MeshVertex.next:Lcom/sun/prism/impl/MeshVertex;
12: iinc 6 1
StackMap locals:
StackMap stack:
13: iload 6
iconst_3
if_icmplt 6
end local 6 14: goto 23
15: StackMap locals:
StackMap stack:
iconst_0
istore 6
start local 6 16: goto 22
17: StackMap locals: int
StackMap stack:
aload 3
ifnull 20
18: aload 3
iload 5
iload 6
iadd
iconst_0
sastore
19: goto 21
20: StackMap locals:
StackMap stack:
aload 2
iload 5
iload 6
iadd
iconst_0
iastore
21: StackMap locals:
StackMap stack:
iinc 6 1
StackMap locals:
StackMap stack:
22: iload 6
iconst_3
if_icmplt 17
end local 6 end local 5 23: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
24: iload 4
aload 0
getfield com.sun.prism.impl.BaseMesh.nFaces:I
if_icmplt 2
end local 4 25: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 26 0 this Lcom/sun/prism/impl/BaseMesh;
0 26 1 pool [Lcom/sun/prism/impl/MeshVertex;
0 26 2 indexBuffer [I
0 26 3 indexBufferShort [S
1 25 4 i I
3 23 5 index I
5 14 6 j I
16 23 6 j I
MethodParameters:
Name Flags
pool
indexBuffer
indexBufferShort
public int getNumVerts();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.prism.impl.BaseMesh.nVerts:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/prism/impl/BaseMesh;
public int getNumTVerts();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.prism.impl.BaseMesh.nTVerts:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/prism/impl/BaseMesh;
public int getNumFaces();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.prism.impl.BaseMesh.nFaces:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/prism/impl/BaseMesh;
public com.sun.javafx.geom.Vec3f getVertex(int, com.sun.javafx.geom.Vec3f);
descriptor: (ILcom/sun/javafx/geom/Vec3f;)Lcom/sun/javafx/geom/Vec3f;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 2
ifnonnull 2
1: new com.sun.javafx.geom.Vec3f
dup
invokespecial com.sun.javafx.geom.Vec3f.<init>:()V
astore 2
2: StackMap locals:
StackMap stack:
iload 1
iconst_3
imul
istore 3
start local 3 3: aload 2
aload 0
getfield com.sun.prism.impl.BaseMesh.pos:[F
iload 3
faload
aload 0
getfield com.sun.prism.impl.BaseMesh.pos:[F
iload 3
iconst_1
iadd
faload
aload 0
getfield com.sun.prism.impl.BaseMesh.pos:[F
iload 3
iconst_2
iadd
faload
invokevirtual com.sun.javafx.geom.Vec3f.set:(FFF)V
4: aload 2
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/sun/prism/impl/BaseMesh;
0 5 1 pIdx I
0 5 2 vertex Lcom/sun/javafx/geom/Vec3f;
3 5 3 index I
MethodParameters:
Name Flags
pIdx
vertex
public com.sun.javafx.geom.Vec2f getTVertex(int, com.sun.javafx.geom.Vec2f);
descriptor: (ILcom/sun/javafx/geom/Vec2f;)Lcom/sun/javafx/geom/Vec2f;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 2
ifnonnull 2
1: new com.sun.javafx.geom.Vec2f
dup
invokespecial com.sun.javafx.geom.Vec2f.<init>:()V
astore 2
2: StackMap locals:
StackMap stack:
iload 1
iconst_2
imul
istore 3
start local 3 3: aload 2
aload 0
getfield com.sun.prism.impl.BaseMesh.uv:[F
iload 3
faload
aload 0
getfield com.sun.prism.impl.BaseMesh.uv:[F
iload 3
iconst_1
iadd
faload
invokevirtual com.sun.javafx.geom.Vec2f.set:(FF)V
4: aload 2
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/sun/prism/impl/BaseMesh;
0 5 1 tIdx I
0 5 2 texCoord Lcom/sun/javafx/geom/Vec2f;
3 5 3 index I
MethodParameters:
Name Flags
tIdx
texCoord
private void checkSmoothingGroup();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=2, args_size=1
start local 0 0: aload 0
getfield com.sun.prism.impl.BaseMesh.smoothing:[I
ifnull 1
aload 0
getfield com.sun.prism.impl.BaseMesh.smoothing:[I
arraylength
ifne 4
1: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield com.sun.prism.impl.BaseMesh.allSameSmoothing:Z
2: aload 0
iconst_0
putfield com.sun.prism.impl.BaseMesh.allHardEdges:Z
3: return
4: StackMap locals:
StackMap stack:
iconst_0
istore 1
start local 1 5: goto 11
6: StackMap locals: int
StackMap stack:
aload 0
getfield com.sun.prism.impl.BaseMesh.smoothing:[I
iload 1
iaload
aload 0
getfield com.sun.prism.impl.BaseMesh.smoothing:[I
iload 1
iconst_1
iadd
iaload
if_icmpeq 10
7: aload 0
iconst_0
putfield com.sun.prism.impl.BaseMesh.allSameSmoothing:Z
8: aload 0
iconst_0
putfield com.sun.prism.impl.BaseMesh.allHardEdges:Z
9: return
10: StackMap locals:
StackMap stack:
iinc 1 1
StackMap locals:
StackMap stack:
11: iload 1
iconst_1
iadd
aload 0
getfield com.sun.prism.impl.BaseMesh.smoothing:[I
arraylength
if_icmplt 6
end local 1 12: aload 0
getfield com.sun.prism.impl.BaseMesh.smoothing:[I
iconst_0
iaload
ifne 16
13: aload 0
iconst_0
putfield com.sun.prism.impl.BaseMesh.allSameSmoothing:Z
14: aload 0
iconst_1
putfield com.sun.prism.impl.BaseMesh.allHardEdges:Z
15: goto 18
16: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield com.sun.prism.impl.BaseMesh.allSameSmoothing:Z
17: aload 0
iconst_0
putfield com.sun.prism.impl.BaseMesh.allHardEdges:Z
18: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lcom/sun/prism/impl/BaseMesh;
5 12 1 i I
public int[] getFace(int, int[]);
descriptor: (I[I)[I
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=3
start local 0 start local 1 start local 2 0: iload 1
bipush 6
imul
istore 3
start local 3 1: aload 2
ifnull 2
aload 2
arraylength
bipush 7
if_icmpge 3
2: StackMap locals: int
StackMap stack:
bipush 7
newarray 10
astore 2
3: StackMap locals:
StackMap stack:
iconst_0
istore 4
start local 4 4: goto 7
5: StackMap locals: int
StackMap stack:
aload 2
iload 4
aload 0
getfield com.sun.prism.impl.BaseMesh.faces:[I
iload 3
iload 4
iadd
iaload
iastore
6: iinc 4 1
StackMap locals:
StackMap stack:
7: iload 4
bipush 6
if_icmplt 5
end local 4 8: aload 2
bipush 6
aload 0
getfield com.sun.prism.impl.BaseMesh.smoothing:[I
ifnull 9
aload 0
getfield com.sun.prism.impl.BaseMesh.smoothing:[I
iload 1
iaload
goto 10
StackMap locals: com.sun.prism.impl.BaseMesh int int[] int
StackMap stack: int[] int
9: iconst_1
StackMap locals: com.sun.prism.impl.BaseMesh int int[] int
StackMap stack: int[] int int
10: iastore
11: aload 2
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lcom/sun/prism/impl/BaseMesh;
0 12 1 fIdx I
0 12 2 face [I
1 12 3 index I
4 8 4 i I
MethodParameters:
Name Flags
fIdx
face
boolean test_isVertexBufferNull();
descriptor: ()Z
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.prism.impl.BaseMesh.vertexBuffer:[F
ifnonnull 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/prism/impl/BaseMesh;
int test_getVertexBufferLength();
descriptor: ()I
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.prism.impl.BaseMesh.vertexBuffer:[F
arraylength
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/prism/impl/BaseMesh;
int test_getNumberOfVertices();
descriptor: ()I
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.prism.impl.BaseMesh.numberOfVertices:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/prism/impl/BaseMesh;
}
SourceFile: "BaseMesh.java"
NestMembers:
com.sun.prism.impl.BaseMesh$FaceMembers com.sun.prism.impl.BaseMesh$MeshGeomComp2VB
InnerClasses:
public final Level = com.sun.javafx.logging.PlatformLogger$Level of com.sun.javafx.logging.PlatformLogger
public final FaceMembers = com.sun.prism.impl.BaseMesh$FaceMembers of com.sun.prism.impl.BaseMesh
MeshGeomComp2VB = com.sun.prism.impl.BaseMesh$MeshGeomComp2VB of com.sun.prism.impl.BaseMesh
public abstract Record = com.sun.prism.impl.Disposer$Record of com.sun.prism.impl.Disposer