Material manager. Provides an interface for collecting all materials within the document before writing it into file, and for copying associated image files (textures) into sub-folder near by exported model. More...
#include <RWMesh_MaterialMap.hxx>

Public Member Functions | |
| RWMesh_MaterialMap (const TCollection_AsciiString &theFile) | |
| Main constructor. | |
| virtual | ~RWMesh_MaterialMap () |
| Destructor. | |
| const XCAFPrs_Style & | DefaultStyle () const |
| Return default material definition to be used for nodes with only color defined. | |
| void | SetDefaultStyle (const XCAFPrs_Style &theStyle) |
| Set default material definition to be used for nodes with only color defined. | |
| TCollection_AsciiString | FindMaterial (const XCAFPrs_Style &theStyle) const |
| Find already registered material. | |
| virtual TCollection_AsciiString | AddMaterial (const XCAFPrs_Style &theStyle) |
| Register material and return its name identifier. | |
| virtual bool | CreateTextureFolder () |
| Create texture folder "modelName/textures"; for example: MODEL: Path/ModelName.gltf IMAGES: Path/ModelName/textures/ Warning! Output folder is NOT cleared. | |
| virtual bool | CopyTexture (TCollection_AsciiString &theResTexture, const Handle< Image_Texture > &theTexture, const TCollection_AsciiString &theKey) |
| Copy and rename texture file to the new location. | |
| virtual void | DefineMaterial (const XCAFPrs_Style &theStyle, const TCollection_AsciiString &theKey, const TCollection_AsciiString &theName)=0 |
| Virtual method actually defining the material (e.g. export to the file). | |
| bool | IsFailed () const |
| Return failed flag. | |
Public Member Functions inherited from Standard_Transient | |
| Standard_Transient () | |
| Empty constructor. | |
| Standard_Transient (const Standard_Transient &) | |
| Copy constructor – does nothing. | |
| Standard_Transient & | operator= (const Standard_Transient &) |
| Assignment operator, needed to avoid copying reference counter. | |
| virtual | ~Standard_Transient () |
| Destructor must be virtual. | |
| virtual const opencascade::handle< Standard_Type > & | DynamicType () const |
| Returns a type descriptor about this object. | |
| Standard_Boolean | IsInstance (const opencascade::handle< Standard_Type > &theType) const |
| Returns a true value if this is an instance of Type. | |
| Standard_Boolean | IsInstance (const Standard_CString theTypeName) const |
| Returns a true value if this is an instance of TypeName. | |
| Standard_Boolean | IsKind (const opencascade::handle< Standard_Type > &theType) const |
| Returns true if this is an instance of Type or an instance of any class that inherits from Type. Note that multiple inheritance is not supported by OCCT RTTI mechanism. | |
| Standard_Boolean | IsKind (const Standard_CString theTypeName) const |
| Returns true if this is an instance of TypeName or an instance of any class that inherits from TypeName. Note that multiple inheritance is not supported by OCCT RTTI mechanism. | |
| Standard_Transient * | This () const |
| Returns non-const pointer to this object (like const_cast). For protection against creating handle to objects allocated in stack or call from constructor, it will raise exception Standard_ProgramError if reference counter is zero. | |
| Standard_Integer | GetRefCount () const noexcept |
| Get the reference counter of this object. | |
| void | IncrementRefCounter () noexcept |
| Increments the reference counter of this object. | |
| Standard_Integer | DecrementRefCounter () noexcept |
| Decrements the reference counter of this object; returns the decremented value. | |
| virtual void | Delete () const |
| Memory deallocator for transient classes. | |
Static Protected Member Functions | |
| static bool | copyFileTo (const TCollection_AsciiString &theFileSrc, const TCollection_AsciiString &theFileDst) |
| Copy file to another place. | |
Protected Attributes | |
| TCollection_AsciiString | myFolder |
| output folder for glTF file | |
| TCollection_AsciiString | myTexFolder |
| output folder for images (full path) | |
| TCollection_AsciiString | myTexFolderShort |
| output folder for images (short path) | |
| TCollection_AsciiString | myFileName |
| output glTF file path | |
| TCollection_AsciiString | myShortFileNameBase |
| output glTF file name without extension | |
| TCollection_AsciiString | myKeyPrefix |
| prefix for generated keys | |
| NCollection_DoubleMap< XCAFPrs_Style, TCollection_AsciiString > | myStyles |
| map of processed styles | |
| NCollection_Map< Handle< Image_Texture > > | myImageFailMap |
| map of images failed to be copied | |
| XCAFPrs_Style | myDefaultStyle |
| default material definition to be used for nodes with only color defined | |
| Standard_Integer | myNbMaterials |
| number of registered materials | |
| Standard_Boolean | myIsFailed |
| flag indicating failure | |
| Standard_Boolean | myMatNameAsKey |
| flag indicating usage of material name as key | |
Additional Inherited Members | |
| typedef void | base_type |
| Returns a type descriptor about this object. | |
| static constexpr const char * | get_type_name () |
| Returns a type descriptor about this object. | |
| static const opencascade::handle< Standard_Type > & | get_type_descriptor () |
| Returns type descriptor of Standard_Transient class. | |
Material manager. Provides an interface for collecting all materials within the document before writing it into file, and for copying associated image files (textures) into sub-folder near by exported model.
| RWMesh_MaterialMap::RWMesh_MaterialMap | ( | const TCollection_AsciiString & | theFile | ) |
Main constructor.
|
virtual |
Destructor.
|
virtual |
Register material and return its name identifier.
Reimplemented in RWGltf_GltfMaterialMap, and RWObj_ObjMaterialMap.
|
staticprotected |
Copy file to another place.
|
virtual |
Copy and rename texture file to the new location.
| [out] | theResTexture | result texture file path (relative to the model) |
| [in] | theTexture | original texture |
| [in] | theKey | material key |
|
virtual |
Create texture folder "modelName/textures"; for example: MODEL: Path/ModelName.gltf IMAGES: Path/ModelName/textures/ Warning! Output folder is NOT cleared.
|
inline |
Return default material definition to be used for nodes with only color defined.
|
pure virtual |
Virtual method actually defining the material (e.g. export to the file).
Implemented in RWGltf_GltfMaterialMap, and RWObj_ObjMaterialMap.
|
inline |
Find already registered material.
|
inline |
Return failed flag.
|
inline |
Set default material definition to be used for nodes with only color defined.
|
protected |
default material definition to be used for nodes with only color defined
|
protected |
output glTF file path
|
protected |
output folder for glTF file
|
protected |
map of images failed to be copied
|
protected |
flag indicating failure
|
protected |
prefix for generated keys
|
protected |
flag indicating usage of material name as key
|
protected |
number of registered materials
|
protected |
output glTF file name without extension
|
protected |
map of processed styles
|
protected |
output folder for images (full path)
|
protected |
output folder for images (short path)