public static FbxLayer fromElement(FbxElement element) { FbxLayer layer = new FbxLayer(); layer.layer = (Integer)element.properties.get(0); next_element: for (FbxElement child : element.children) { if (!child.id.equals("LayerElement")) { continue; } FbxLayerElementRef ref = new FbxLayerElementRef(); for (FbxElement child2 : child.children) { if (child2.id.equals("Type")) { String layerElementTypeStr = (String) child2.properties.get(0); layerElementTypeStr = layerElementTypeStr.substring("LayerElement".length()); try { ref.layerElementType = FbxLayerElement.Type.valueOf(layerElementTypeStr); } catch (IllegalArgumentException ex) { logger.log(Level.WARNING, "Unsupported layer type: {0}. Ignoring.", layerElementTypeStr); continue next_element; } } else if (child2.id.equals("TypedIndex")) { ref.layerElementIndex = (Integer) child2.properties.get(0); } } layer.references.put(ref.layerElementType, ref); } return layer; } }
layerElementsList.add(FbxLayerElement.fromElement(e)); } else if (e.id.equals("Layer")) { layersList.add(FbxLayer.fromElement(e)); layer.setLayerElements(layerElementsList);
irVertex.norm = (Vector3f) layer0.getVertexData(FbxLayerElement.Type.Normal, i, polygonVertexIndex, positionIndex, 0); irVertex.tang = (Vector3f) layer0.getVertexData(FbxLayerElement.Type.Tangent, i, polygonVertexIndex, positionIndex, 0); irVertex.bitang = (Vector3f) layer0.getVertexData(FbxLayerElement.Type.Binormal, i, polygonVertexIndex, positionIndex, 0); irVertex.uv0 = (Vector2f) layer0.getVertexData(FbxLayerElement.Type.UV, i, polygonVertexIndex, positionIndex, 0); irVertex.color = (ColorRGBA) layer0.getVertexData(FbxLayerElement.Type.Color, i, polygonVertexIndex, positionIndex, 0); irVertex.material = (Integer) layer0.getVertexData(FbxLayerElement.Type.Material, i, polygonVertexIndex, positionIndex, 0); irVertex.smoothing = (Integer) layer0.getVertexData(FbxLayerElement.Type.Smoothing, i, polygonVertexIndex, positionIndex, 0); irVertex.uv1 = (Vector2f) layer1.getVertexData(FbxLayerElement.Type.UV, i, polygonVertexIndex, positionIndex, 0);
layerElementsList.add(FbxLayerElement.fromElement(e)); } else if (e.id.equals("Layer")) { layersList.add(FbxLayer.fromElement(e)); layer.setLayerElements(layerElementsList);
public static FbxLayer fromElement(FbxElement element) { FbxLayer layer = new FbxLayer(); layer.layer = (Integer)element.properties.get(0); next_element: for (FbxElement child : element.children) { if (!child.id.equals("LayerElement")) { continue; } FbxLayerElementRef ref = new FbxLayerElementRef(); for (FbxElement child2 : child.children) { if (child2.id.equals("Type")) { String layerElementTypeStr = (String) child2.properties.get(0); layerElementTypeStr = layerElementTypeStr.substring("LayerElement".length()); try { ref.layerElementType = FbxLayerElement.Type.valueOf(layerElementTypeStr); } catch (IllegalArgumentException ex) { logger.log(Level.WARNING, "Unsupported layer type: {0}. Ignoring.", layerElementTypeStr); continue next_element; } } else if (child2.id.equals("TypedIndex")) { ref.layerElementIndex = (Integer) child2.properties.get(0); } } layer.references.put(ref.layerElementType, ref); } return layer; } }
irVertex.norm = (Vector3f) layer0.getVertexData(FbxLayerElement.Type.Normal, i, polygonVertexIndex, positionIndex, 0); irVertex.tang = (Vector3f) layer0.getVertexData(FbxLayerElement.Type.Tangent, i, polygonVertexIndex, positionIndex, 0); irVertex.bitang = (Vector3f) layer0.getVertexData(FbxLayerElement.Type.Binormal, i, polygonVertexIndex, positionIndex, 0); irVertex.uv0 = (Vector2f) layer0.getVertexData(FbxLayerElement.Type.UV, i, polygonVertexIndex, positionIndex, 0); irVertex.color = (ColorRGBA) layer0.getVertexData(FbxLayerElement.Type.Color, i, polygonVertexIndex, positionIndex, 0); irVertex.material = (Integer) layer0.getVertexData(FbxLayerElement.Type.Material, i, polygonVertexIndex, positionIndex, 0); irVertex.smoothing = (Integer) layer0.getVertexData(FbxLayerElement.Type.Smoothing, i, polygonVertexIndex, positionIndex, 0); irVertex.uv1 = (Vector2f) layer1.getVertexData(FbxLayerElement.Type.UV, i, polygonVertexIndex, positionIndex, 0);