This reference page is linked to from the following overview topics: Meshes, Materials and Textures, Meshes, Layered Textures, List of Python Fbx classes.
Base class for elements of layers (FbxLayer).
A layer element type is identified by EType. A FbxLayerElement describes how the layer element is mapped to a geometry surface and how the mapping information is arranged in memory. A FbxLayerElement contains Normals, UVs or other kind of information.
Definition at line 38 of file fbxlayer.h.
#include <fbxlayer.h>

Public Types | |
| enum | EType { eUnknown, eNormal, eBiNormal, eTangent, eMaterial, ePolygonGroup, eUV, eVertexColor, eSmoothing, eVertexCrease, eEdgeCrease, eHole, eUserData, eVisibility, eTextureDiffuse, eTextureDiffuseFactor, eTextureEmissive, eTextureEmissiveFactor, eTextureAmbient, eTextureAmbientFactor, eTextureSpecular, eTextureSpecularFactor, eTextureShininess, eTextureNormalMap, eTextureBump, eTextureTransparency, eTextureTransparencyFactor, eTextureReflection, eTextureReflectionFactor, eTextureDisplacement, eTextureDisplacementVector, eTypeCount } |
Layer Element type identifier. More... | |
| enum | EMappingMode { eNone, eByControlPoint, eByPolygonVertex, eByPolygon, eByEdge, eAllSame } |
Determines how the element is mapped to a surface. More... | |
| enum | EReferenceMode { eDirect, eIndex, eIndexToDirect } |
Determines how the mapping information is stored in the array of coordinates. More... | |
Public Member Functions | |
| void | SetMappingMode (EMappingMode pMappingMode) |
| Sets the Mapping Mode. | |
| void | SetReferenceMode (EReferenceMode pReferenceMode) |
| Sets the Reference Mode. | |
| EMappingMode | GetMappingMode () const |
| Returns the Mapping Mode. | |
| EReferenceMode | GetReferenceMode () const |
| Returns the Reference Mode. | |
| void | SetName (const char *pName) |
| Sets the name of this object. | |
| const char * | GetName () const |
| Returns the name of this object. | |
| bool | operator== (const FbxLayerElement &pOther) const |
| Equivalence operator. | |
| FbxLayerElement & | operator= (FbxLayerElement const &pOther) |
| Assignment operator. | |
| void | Destroy () |
| Removes this layer element from its owner and delete it. | |
| virtual bool | Clear () |
| Clears all the data from this layer element. | |
| void | SetType (const FbxDataType *pType) |
| const FbxLayerContainer * | GetOwner () const |
| virtual int | MemorySize () const |
| virtual bool | ContentWriteTo (FbxStream &pStream) const |
| virtual bool | ContentReadFrom (const FbxStream &pStream) |
Static Public Attributes | |
| static const int | sTypeTextureStartIndex = int(eTextureDiffuse) |
| The start index of texture type layer elements. | |
| static const int | sTypeTextureEndIndex = int(eTypeCount) - 1 |
| The end index of texture type layer elements. | |
| static const int | sTypeTextureCount = sTypeTextureEndIndex - sTypeTextureStartIndex + 1 |
| The count of texture type layer elements. | |
| static const int | sTypeNonTextureStartIndex = int(eNormal) |
| The start index of non-texture type layer elements. | |
| static const int | sTypeNonTextureEndIndex = int(eVisibility) |
| The end index of non-texture type layer elements. | |
| static const int | sTypeNonTextureCount = sTypeNonTextureEndIndex - sTypeNonTextureStartIndex + 1 |
| The count of non-texture type layer elements. | |
| static const char *const | sTextureNames [] |
| Array of names of texture type layer elements. | |
| static const char *const | sTextureUVNames [] |
| Array of names of UV layer elements. | |
| static const char *const | sNonTextureNames [] |
| Array of names of non-texture type layer elements. | |
| static const FbxDataType | sTextureDataTypes [] |
| Array of texture types. | |
| static const char *const | sTextureChannelNames [] |
| Array of texture channels. | |
Protected Member Functions | |
| FbxLayerElement () | |
| virtual | ~FbxLayerElement () |
| void | Destruct () |
| virtual void | SetOwner (FbxLayerContainer *pOwner) |
| FBXSDK_FRIEND_NEW () | |
Protected Attributes | |
| EMappingMode | mMappingMode |
| EReferenceMode | mReferenceMode |
| FbxString | mName |
| const FbxDataType * | mType |
| FbxLayerContainer * | mOwner |
Friends | |
| class | FbxLayerContainer |
| enum EType |
Layer Element type identifier.
Definition at line 75 of file fbxlayer.h.
{
eUnknown,
//Non-Texture layer element types
//Note: Make sure to update static index below if you change this enum!
eNormal,
eBiNormal,
eTangent,
eMaterial,
ePolygonGroup,
eUV,
eVertexColor,
eSmoothing,
eVertexCrease,
eEdgeCrease,
eHole,
eUserData,
eVisibility,
//Texture layer element types
//Note: Make sure to update static index below if you change this enum!
eTextureDiffuse,
eTextureDiffuseFactor,
eTextureEmissive,
eTextureEmissiveFactor,
eTextureAmbient,
eTextureAmbientFactor,
eTextureSpecular,
eTextureSpecularFactor,
eTextureShininess,
eTextureNormalMap,
eTextureBump,
eTextureTransparency,
eTextureTransparencyFactor,
eTextureReflection,
eTextureReflectionFactor,
eTextureDisplacement,
eTextureDisplacementVector,
eTypeCount
};
| enum EMappingMode |
Determines how the element is mapped to a surface.
Definition at line 140 of file fbxlayer.h.
| enum EReferenceMode |
Determines how the mapping information is stored in the array of coordinates.
Definition at line 163 of file fbxlayer.h.
{
eDirect,
eIndex,
eIndexToDirect
};
| FbxLayerElement | ( | ) | [inline, protected] |
Definition at line 242 of file fbxlayer.h.
: mMappingMode(eNone) , mReferenceMode(eDirect) , mName("") , mOwner(NULL) { }
| virtual ~FbxLayerElement | ( | ) | [inline, protected, virtual] |
Definition at line 250 of file fbxlayer.h.
{
}
| void SetMappingMode | ( | EMappingMode | pMappingMode | ) | [inline] |
Sets the Mapping Mode.
| pMappingMode | Specifies the way that layer element is mapped to a surface. |
Definition at line 174 of file fbxlayer.h.
{ mMappingMode = pMappingMode; }
| void SetReferenceMode | ( | EReferenceMode | pReferenceMode | ) | [inline] |
Sets the Reference Mode.
| pReferenceMode | Specifies the reference mode. |
Reimplemented in FbxLayerElementSmoothing, FbxLayerElementCrease, and FbxLayerElementHole.
Definition at line 179 of file fbxlayer.h.
{ mReferenceMode = pReferenceMode; }
| EMappingMode GetMappingMode | ( | ) | const [inline] |
Returns the Mapping Mode.
Definition at line 184 of file fbxlayer.h.
{ return mMappingMode; }
| EReferenceMode GetReferenceMode | ( | ) | const [inline] |
Returns the Reference Mode.
Definition at line 189 of file fbxlayer.h.
{ return mReferenceMode; }
| void SetName | ( | const char * | pName | ) | [inline] |
Sets the name of this object.
| pName | Specifies the name of this LayerElement object. |
Definition at line 194 of file fbxlayer.h.
| const char* GetName | ( | ) | const [inline] |
Returns the name of this object.
Definition at line 199 of file fbxlayer.h.
{ return ((FbxLayerElement*)this)->mName.Buffer(); }
| bool operator== | ( | const FbxLayerElement & | pOther | ) | const [inline] |
Equivalence operator.
| pOther | Layer element to be compared. |
True if equal, false otherwise. Definition at line 205 of file fbxlayer.h.
{
return (mName == pOther.mName) &&
(mMappingMode == pOther.mMappingMode) &&
(mReferenceMode == pOther.mReferenceMode);
}
| FbxLayerElement& operator= | ( | FbxLayerElement const & | pOther | ) | [inline] |
Assignment operator.
| pOther | Layer element assigned to this one. |
Definition at line 216 of file fbxlayer.h.
{
mMappingMode = pOther.mMappingMode;
mReferenceMode = pOther.mReferenceMode;
// name, type and owner should not be copied because they are
// initialized when this object is created
return *this;
}
| void Destroy | ( | ) |
Removes this layer element from its owner and delete it.
| virtual bool Clear | ( | ) | [inline, virtual] |
Clears all the data from this layer element.
Reimplemented in FbxLayerElementTemplate< Type >, FbxLayerElementUserData, FbxLayerElementTemplate< double >, FbxLayerElementTemplate< int >, FbxLayerElementTemplate< FbxSurfaceMaterial * >, FbxLayerElementTemplate< FbxColor >, FbxLayerElementTemplate< void * >, FbxLayerElementTemplate< bool >, FbxLayerElementTemplate< FbxTexture * >, FbxLayerElementTemplate< FbxVector4 >, and FbxLayerElementTemplate< FbxVector2 >.
Definition at line 229 of file fbxlayer.h.
{
return true;
}
| void SetType | ( | const FbxDataType * | pType | ) | [inline] |
| const FbxLayerContainer* GetOwner | ( | ) | const [inline] |
| void Destruct | ( | ) | [inline, protected] |
| virtual void SetOwner | ( | FbxLayerContainer * | pOwner | ) | [protected, virtual] |
| FBXSDK_FRIEND_NEW | ( | ) | [protected] |
Reimplemented in FbxLayerElementUserData, FbxLayerElementSmoothing, FbxLayerElementCrease, and FbxLayerElementHole.
| virtual int MemorySize | ( | ) | const [inline, virtual] |
Reimplemented in FbxLayerElementTemplate< Type >, FbxLayerElementUserData, FbxLayerElementTexture, FbxLayerElementTemplate< double >, FbxLayerElementTemplate< int >, FbxLayerElementTemplate< FbxSurfaceMaterial * >, FbxLayerElementTemplate< FbxColor >, FbxLayerElementTemplate< void * >, FbxLayerElementTemplate< bool >, FbxLayerElementTemplate< FbxTexture * >, FbxLayerElementTemplate< FbxVector4 >, and FbxLayerElementTemplate< FbxVector2 >.
Definition at line 267 of file fbxlayer.h.
{ return 0; }
| virtual bool ContentWriteTo | ( | FbxStream & | pStream | ) | const [virtual] |
Reimplemented in FbxLayerElementTemplate< Type >, FbxLayerElementTemplate< double >, FbxLayerElementTemplate< int >, FbxLayerElementTemplate< FbxSurfaceMaterial * >, FbxLayerElementTemplate< FbxColor >, FbxLayerElementTemplate< void * >, FbxLayerElementTemplate< bool >, FbxLayerElementTemplate< FbxTexture * >, FbxLayerElementTemplate< FbxVector4 >, and FbxLayerElementTemplate< FbxVector2 >.
| virtual bool ContentReadFrom | ( | const FbxStream & | pStream | ) | [virtual] |
Reimplemented in FbxLayerElementTemplate< Type >, FbxLayerElementTemplate< double >, FbxLayerElementTemplate< int >, FbxLayerElementTemplate< FbxSurfaceMaterial * >, FbxLayerElementTemplate< FbxColor >, FbxLayerElementTemplate< void * >, FbxLayerElementTemplate< bool >, FbxLayerElementTemplate< FbxTexture * >, FbxLayerElementTemplate< FbxVector4 >, and FbxLayerElementTemplate< FbxVector2 >.
friend class FbxLayerContainer [friend] |
Reimplemented in FbxLayerElementMaterial.
Definition at line 271 of file fbxlayer.h.
const int sTypeTextureStartIndex = int(eTextureDiffuse) [static] |
The start index of texture type layer elements.
Definition at line 118 of file fbxlayer.h.
const int sTypeTextureEndIndex = int(eTypeCount) - 1 [static] |
The end index of texture type layer elements.
Definition at line 119 of file fbxlayer.h.
const int sTypeTextureCount = sTypeTextureEndIndex - sTypeTextureStartIndex + 1 [static] |
The count of texture type layer elements.
Definition at line 120 of file fbxlayer.h.
const int sTypeNonTextureStartIndex = int(eNormal) [static] |
The start index of non-texture type layer elements.
Definition at line 121 of file fbxlayer.h.
const int sTypeNonTextureEndIndex = int(eVisibility) [static] |
The end index of non-texture type layer elements.
Definition at line 122 of file fbxlayer.h.
const int sTypeNonTextureCount = sTypeNonTextureEndIndex - sTypeNonTextureStartIndex + 1 [static] |
The count of non-texture type layer elements.
Definition at line 123 of file fbxlayer.h.
const char* const sTextureNames[] [static] |
Array of names of texture type layer elements.
Definition at line 124 of file fbxlayer.h.
const char* const sTextureUVNames[] [static] |
Array of names of UV layer elements.
Definition at line 125 of file fbxlayer.h.
const char* const sNonTextureNames[] [static] |
Array of names of non-texture type layer elements.
Definition at line 126 of file fbxlayer.h.
const FbxDataType sTextureDataTypes[] [static] |
const char* const sTextureChannelNames[] [static] |
EMappingMode mMappingMode [protected] |
Definition at line 254 of file fbxlayer.h.
EReferenceMode mReferenceMode [protected] |
Definition at line 255 of file fbxlayer.h.
Definition at line 257 of file fbxlayer.h.
const FbxDataType* mType [protected] |
Definition at line 258 of file fbxlayer.h.
FbxLayerContainer* mOwner [protected] |
Definition at line 259 of file fbxlayer.h.