|
| XCAFDoc_VisMaterial () |
| Empty constructor.
|
|
bool | IsEmpty () const |
| Return TRUE if material definition is empty.
|
|
void | FillMaterialAspect (Graphic3d_MaterialAspect &theAspect) const |
| Fill in material aspect.
|
|
void | FillAspect (const Handle< Graphic3d_Aspects > &theAspect) const |
| Fill in graphic aspects.
|
|
Standard_Boolean | HasPbrMaterial () const |
| Return TRUE if metal-roughness PBR material is defined; FALSE by default.
|
|
const XCAFDoc_VisMaterialPBR & | PbrMaterial () const |
| Return metal-roughness PBR material. Note that default constructor creates an empty material (.
|
|
void | SetPbrMaterial (const XCAFDoc_VisMaterialPBR &theMaterial) |
| Setup metal-roughness PBR material.
|
|
void | UnsetPbrMaterial () |
| Setup undefined metal-roughness PBR material.
|
|
Standard_Boolean | HasCommonMaterial () const |
| Return TRUE if common material is defined; FALSE by default.
|
|
const XCAFDoc_VisMaterialCommon & | CommonMaterial () const |
| Return common material. Note that default constructor creates an empty material (.
|
|
void | SetCommonMaterial (const XCAFDoc_VisMaterialCommon &theMaterial) |
| Setup common material.
|
|
void | UnsetCommonMaterial () |
| Setup undefined common material.
|
|
Quantity_ColorRGBA | BaseColor () const |
| Return base color.
|
|
Graphic3d_AlphaMode | AlphaMode () const |
| Return alpha mode; Graphic3d_AlphaMode_BlendAuto by default.
|
|
Standard_ShortReal | AlphaCutOff () const |
| Return alpha cutoff value; 0.5 by default.
|
|
void | SetAlphaMode (Graphic3d_AlphaMode theMode, Standard_ShortReal theCutOff=0.5f) |
| Set alpha mode.
|
|
Graphic3d_TypeOfBackfacingModel | FaceCulling () const |
| Returns if the material is double or single sided; Graphic3d_TypeOfBackfacingModel_Auto by default.
|
|
void | SetFaceCulling (Graphic3d_TypeOfBackfacingModel theFaceCulling) |
| Specifies whether the material is double or single sided.
|
|
Standard_Boolean | IsDoubleSided () const |
|
void | SetDoubleSided (Standard_Boolean theIsDoubleSided) |
|
const Handle< TCollection_HAsciiString > & | RawName () const |
| Return material name / tag (transient data, not stored in the document).
|
|
void | SetRawName (const Handle< TCollection_HAsciiString > &theName) |
| Set material name / tag (transient data, not stored in the document).
|
|
Standard_Boolean | IsEqual (const Handle< XCAFDoc_VisMaterial > &theOther) const |
| Compare two materials. Performs deep comparison by actual values - e.g. can be useful for merging materials.
|
|
XCAFDoc_VisMaterialCommon | ConvertToCommonMaterial () |
| Return Common material or convert PBR into Common material.
|
|
XCAFDoc_VisMaterialPBR | ConvertToPbrMaterial () |
| Return PBR material or convert Common into PBR material.
|
|
virtual void | SetID (const Standard_GUID &) |
| Sets specific ID of the attribute (supports several attributes of one type at the same label feature).
|
|
virtual void | SetID () |
| Sets default ID defined in nested class (to be used for attributes having User ID feature).
|
|
const TDF_Label | Label () const |
| Returns the label to which the attribute is attached. If the label is not included in a DF, the label is null. See Label. Warning If the label is not included in a data framework, it is null. This function should not be redefined inline.
|
|
Standard_Integer | Transaction () const |
| Returns the transaction index in which the attribute has been created or modified.
|
|
Standard_Integer | UntilTransaction () const |
| Returns the upper transaction index until which the attribute is/was valid. This number may vary. A removed attribute validity range is reduced to its transaction index.
|
|
Standard_Boolean | IsValid () const |
| Returns true if the attribute is valid; i.e. not a backuped or removed one.
|
|
Standard_Boolean | IsNew () const |
| Returns true if the attribute has no backup.
|
|
Standard_Boolean | IsForgotten () const |
| Returns true if the attribute forgotten status is set.
|
|
Standard_Boolean | IsAttribute (const Standard_GUID &anID) const |
| Returns true if it exists an associated attribute of <me> with <anID> as ID.
|
|
Standard_Boolean | FindAttribute (const Standard_GUID &anID, Handle< TDF_Attribute > &anAttribute) const |
| Finds an associated attribute of <me>, according to <anID>. the returned <anAttribute> is a valid one. The method returns True if found, False otherwise. A removed attribute cannot be found using this method.
|
|
template<class T > |
Standard_Boolean | FindAttribute (const Standard_GUID &theID, Handle< T > &theAttr) const |
| Safe variant for arbitrary type of argument.
|
|
void | AddAttribute (const Handle< TDF_Attribute > &other) const |
| Adds an Attribute <other> to the label of <me>.Raises if there is already one of the same GUID fhan <other>.
|
|
Standard_Boolean | ForgetAttribute (const Standard_GUID &aguid) const |
| Forgets the Attribute of GUID <aguid> associated to the label of <me>. Be careful that if <me> is the attribute of <guid>, <me> will have a null label after this call. If the attribute doesn't exist returns False. Otherwise returns True.
|
|
void | ForgetAllAttributes (const Standard_Boolean clearChildren=Standard_True) const |
| Forgets all the attributes attached to the label of <me>. Does it on the sub-labels if <clearChildren> is set to true. Of course, this method is compatible with Transaction & Delta mechanisms. Be careful that if <me> will have a null label after this call.
|
|
virtual void | AfterAddition () |
| Something to do after adding an Attribute to a label.
|
|
virtual void | BeforeRemoval () |
| Something to do before removing an Attribute from a label.
|
|
virtual void | BeforeForget () |
| Something to do before forgetting an Attribute to a label.
|
|
virtual void | AfterResume () |
| Something to do after resuming an Attribute from a label.
|
|
virtual Standard_Boolean | AfterRetrieval (const Standard_Boolean forceIt=Standard_False) |
| Something to do AFTER creation of an attribute by persistent-transient translation. The returned status says if AfterUndo has been performed (true) or if this callback must be called once again further (false). If <forceIt> is set to true, the method MUST perform and return true. Does nothing by default and returns true.
|
|
virtual Standard_Boolean | BeforeUndo (const Handle< TDF_AttributeDelta > &anAttDelta, const Standard_Boolean forceIt=Standard_False) |
| Something to do before applying <anAttDelta>. The returned status says if AfterUndo has been performed (true) or if this callback must be called once again further (false). If <forceIt> is set to true, the method MUST perform and return true. Does nothing by default and returns true.
|
|
virtual Standard_Boolean | AfterUndo (const Handle< TDF_AttributeDelta > &anAttDelta, const Standard_Boolean forceIt=Standard_False) |
| Something to do after applying <anAttDelta>. The returned status says if AfterUndo has been performed (true) or if this callback must be called once again further (false). If <forceIt> is set to true, the method MUST perform and return true. Does nothing by default and returns true.
|
|
virtual void | BeforeCommitTransaction () |
| A callback. By default does nothing. It is called by TDF_Data::CommitTransaction() method.
|
|
void | Backup () |
| Backups the attribute. The backuped attribute is flagged "Backuped" and not "Valid".
|
|
Standard_Boolean | IsBackuped () const |
| Returns true if the attribute backup status is set. This status is set/unset by the Backup() method.
|
|
virtual Handle< TDF_Attribute > | BackupCopy () const |
| Copies the attribute contents into a new other attribute. It is used by Backup().
|
|
virtual Handle< TDF_DeltaOnAddition > | DeltaOnAddition () const |
| Makes an AttributeDelta because <me> appeared. The only known use of a redefinition of this method is to return a null handle (no delta).
|
|
virtual Handle< TDF_DeltaOnForget > | DeltaOnForget () const |
| Makes an AttributeDelta because <me> has been forgotten.
|
|
virtual Handle< TDF_DeltaOnResume > | DeltaOnResume () const |
| Makes an AttributeDelta because <me> has been resumed.
|
|
virtual Handle< TDF_DeltaOnModification > | DeltaOnModification (const Handle< TDF_Attribute > &anOldAttribute) const |
| Makes a DeltaOnModification between <me> and.
|
|
virtual void | DeltaOnModification (const Handle< TDF_DeltaOnModification > &aDelta) |
| Applies a DeltaOnModification to <me>.
|
|
virtual Handle< TDF_DeltaOnRemoval > | DeltaOnRemoval () const |
| Makes a DeltaOnRemoval on <me> because <me> has disappeared from the DS.
|
|
virtual void | References (const Handle< TDF_DataSet > &aDataSet) const |
| Adds the first level referenced attributes and labels to <aDataSet>.
|
|
virtual Standard_OStream & | Dump (Standard_OStream &anOS) const |
| Dumps the minimum information about <me> on <aStream>.
|
|
Standard_OStream & | operator<< (Standard_OStream &anOS) const |
|
virtual void | ExtendedDump (Standard_OStream &anOS, const TDF_IDFilter &aFilter, TDF_AttributeIndexedMap &aMap) const |
| Dumps the attribute content on <aStream>, using <aMap> like this: if an attribute is not in the map, first put add it to the map and then dump it. Use the map rank instead of dumping each attribute field.
|
|
void | Forget (const Standard_Integer aTransaction) |
| Forgets the attribute. <aTransaction> is the current transaction in which the forget is done. A forgotten attribute is also flagged not "Valid".
|
|
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.
|
|
Attribute storing Material definition for visualization purposes.
Visualization material provides extended information about how object should be displayed on the screen (albedo, metalness, roughness - not just a single color as in case of XCAFDoc_Color). It is expected to correlate with physical material properties (XCAFDoc_Material), but not necessarily (like painted/polished/rusty object).
The document defines the list of visualization materials via global attribute XCAFDoc_VisMaterialTool, while particular material assignment to the shape is done through tree-nodes links. Therefore, XCAFDoc_VisMaterialTool methods should be used for managing XCAFDoc_VisMaterial attributes.
Visualization material definition consists of two options: Common and PBR (for Physically Based Rendering). Common material definition is an obsolete model defined by very first version of OpenGL graphics API and having specific hardware-accelerated implementation in past (like T&L). PBR metallic-roughness model is closer to physical material properties, and intended to be used within physically-based renderer.
For compatibility reasons, this attribute allows defining both material models, so that it is up-to Data Exchange and Application deciding which one to define and use for rendering (depending on viewer capabilities). Automatic conversion from one model to another is possible, but lossy (converted material will not look the same).
Within Data Exchange, different file formats have different capabilities for storing visualization material properties from simple color (STEP, IGES), to common (OBJ, glTF 1.0) and PBR (glTF 2.0). This should be taken into account while defining or converting document into one or another format - material definition might be lost or disturbed.
- See also
- XCAFDoc_VisMaterialTool