![]() |
Open CASCADE Technology Reference Manual 8.0.0
|
Provides tools to store and retrieve attributes (Layers) of TopoDS_Shape in and from TDocStd_Document A Document is intended to hold different attributes of ONE shape and it's sub-shapes Provide tools for management of Layers section of document. More...
#include <XCAFDoc_LayerTool.hxx>

Public Member Functions | |
| XCAFDoc_LayerTool () | |
| TDF_Label | BaseLabel () const |
| returns the label under which Layers are stored | |
| const occ::handle< XCAFDoc_ShapeTool > & | ShapeTool () |
| Returns internal XCAFDoc_ShapeTool tool. | |
| bool | IsLayer (const TDF_Label &lab) const |
| Returns True if label belongs to a Layertable and is a Layer definition. | |
| bool | GetLayer (const TDF_Label &lab, TCollection_ExtendedString &aLayer) const |
| Returns Layer defined by label lab Returns False if the label is not in Layertable or does not define a Layer. | |
| bool | FindLayer (const TCollection_ExtendedString &aLayer, TDF_Label &lab) const |
| Finds a Layer definition in a Layertable and returns its label if found Returns False if Layer is not found in Layertable. | |
| TDF_Label | FindLayer (const TCollection_ExtendedString &aLayer, const bool theToFindWithProperty=false, const bool theToFindVisible=true) const |
| Finds a Layer definition in a Layertable by name Returns first founded label with the same name if <theToFindWithProperty> is false If <theToFindWithProperty> is true returns first label that contains or not contains visible attr, according to the <theToFindVisible> parameter. | |
| TDF_Label | AddLayer (const TCollection_ExtendedString &theLayer) const |
| Adds a Layer definition to a Layertable and returns its label (returns existing label if the same Layer is already defined) | |
| TDF_Label | AddLayer (const TCollection_ExtendedString &theLayer, const bool theToFindVisible) const |
| Adds a Layer definition to a Layertable and returns its label Returns existing label (if it is already defined) of visible or invisible layer, according to <theToFindVisible> parameter. | |
| void | RemoveLayer (const TDF_Label &lab) const |
| Removes Layer from the Layertable. | |
| void | GetLayerLabels (NCollection_Sequence< TDF_Label > &Labels) const |
| Returns a sequence of Layers currently stored in the Layertable. | |
| void | SetLayer (const TDF_Label &L, const TDF_Label &LayerL, const bool shapeInOneLayer=false) const |
| Sets a link from label <L> to Layer defined by <LayerL> optional parameter <shapeInOneLayer> show could shape be in number of layers or only in one. | |
| void | SetLayer (const TDF_Label &L, const TCollection_ExtendedString &aLayer, const bool shapeInOneLayer=false) const |
| Sets a link from label <L> to Layer <aLayer> in the Layertable Adds a Layer as necessary optional parameter <shapeInOneLayer> show could shape be in number of layers or only in one. | |
| void | UnSetLayers (const TDF_Label &L) const |
| Removes a link from label <L> to all layers. | |
| bool | UnSetOneLayer (const TDF_Label &L, const TCollection_ExtendedString &aLayer) const |
| Remove link from label <L> and Layer <aLayer>. returns FALSE if no such layer. | |
| bool | UnSetOneLayer (const TDF_Label &L, const TDF_Label &aLayerL) const |
| Remove link from label <L> and Layer <aLayerL>. returns FALSE if <aLayerL> is not a layer label. | |
| bool | IsSet (const TDF_Label &L, const TCollection_ExtendedString &aLayer) const |
| Returns True if label <L> has a Layer associated with the <aLayer>. | |
| bool | IsSet (const TDF_Label &L, const TDF_Label &aLayerL) const |
| Returns True if label <L> has a Layer associated with the <aLayerL> label. | |
| bool | GetLayers (const TDF_Label &L, occ::handle< NCollection_HSequence< TCollection_ExtendedString > > &aLayerS) |
| Return sequence of strings <aLayerS> that associated with label <L>. | |
| bool | GetLayers (const TDF_Label &L, NCollection_Sequence< TDF_Label > &aLayerLS) |
| Return sequence of labels <aLayerSL> that associated with label <L>. | |
| occ::handle< NCollection_HSequence< TCollection_ExtendedString > > | GetLayers (const TDF_Label &L) |
| Return sequence of strings that associated with label <L>. | |
| bool | IsVisible (const TDF_Label &layerL) const |
| Return TRUE if layer is visible, FALSE if invisible. | |
| void | SetVisibility (const TDF_Label &layerL, const bool isvisible=true) const |
| Set the visibility of layer. If layer is invisible when on it's layer will set UAttribute with corresponding GUID. | |
| bool | SetLayer (const TopoDS_Shape &Sh, const TDF_Label &LayerL, const bool shapeInOneLayer=false) |
| Sets a link from label that containing shape <Sh> with layer that situated at label <LayerL>. optional parameter <shapeInOneLayer> show could shape be in number of layers or only in one. return FALSE if no such shape <Sh> or label <LayerL> | |
| bool | SetLayer (const TopoDS_Shape &Sh, const TCollection_ExtendedString &aLayer, const bool shapeInOneLayer=false) |
| Sets a link from label that containing shape <Sh> with layer <aLayer>. Add <aLayer> to LayerTable if nessesery. optional parameter <shapeInOneLayer> show could shape be in number of layers or only in one. return FALSE if no such shape <Sh>. | |
| bool | UnSetLayers (const TopoDS_Shape &Sh) |
| Remove link between shape <Sh> and all Layers at LayerTable. return FALSE if no such shape <Sh> in XCAF Document. | |
| bool | UnSetOneLayer (const TopoDS_Shape &Sh, const TCollection_ExtendedString &aLayer) |
| Remove link between shape <Sh> and layer <aLayer>. returns FALSE if no such layer <aLayer> or shape <Sh>. | |
| bool | UnSetOneLayer (const TopoDS_Shape &Sh, const TDF_Label &aLayerL) |
| Remove link between shape <Sh> and layer <aLayerL>. returns FALSE if no such layer <aLayerL> or shape <Sh>. | |
| bool | IsSet (const TopoDS_Shape &Sh, const TCollection_ExtendedString &aLayer) |
| Returns True if shape <Sh> has a Layer associated with the <aLayer>. | |
| bool | IsSet (const TopoDS_Shape &Sh, const TDF_Label &aLayerL) |
| Returns True if shape <Sh> has a Layer associated with the <aLayerL>. | |
| bool | GetLayers (const TopoDS_Shape &Sh, occ::handle< NCollection_HSequence< TCollection_ExtendedString > > &aLayerS) |
| Return sequence of strings <aLayerS> that associated with shape <Sh>. | |
| bool | GetLayers (const TopoDS_Shape &Sh, NCollection_Sequence< TDF_Label > &aLayerLS) |
| Return sequence of labels <aLayerLS> that associated with shape <Sh>. | |
| occ::handle< NCollection_HSequence< TCollection_ExtendedString > > | GetLayers (const TopoDS_Shape &Sh) |
| Return sequence of strings that associated with shape <Sh>. | |
| const Standard_GUID & | ID () const override |
| Returns the ID of the attribute. | |
| void | DumpJson (Standard_OStream &theOStream, int theDepth=-1) const override |
| Dumps the content of me into the stream. | |
Public Member Functions inherited from TDataStd_GenericEmpty | |
| void | Restore (const occ::handle< TDF_Attribute > &) override |
| Restores the backuped contents from <anAttribute> into this one. It is used when aborting a transaction. | |
| void | Paste (const occ::handle< TDF_Attribute > &, const occ::handle< TDF_RelocationTable > &) const override |
| This method is different from the "Copy" one, because it is used when copying an attribute from a source structure into a target structure. This method may paste the contents of <me> into <intoAttribute>. | |
Public Member Functions inherited from TDF_Attribute | |
| 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. | |
| int | Transaction () const |
| Returns the transaction index in which the attribute has been created or modified. | |
| int | 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. | |
| bool | IsValid () const |
| Returns true if the attribute is valid; i.e. not a backuped or removed one. | |
| bool | IsNew () const |
| Returns true if the attribute has no backup. | |
| bool | IsForgotten () const |
| Returns true if the attribute forgotten status is set. | |
| bool | IsAttribute (const Standard_GUID &anID) const |
| Returns true if it exists an associated attribute of <me> with <anID> as ID. | |
| bool | FindAttribute (const Standard_GUID &anID, occ::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 > | |
| bool | FindAttribute (const Standard_GUID &theID, occ::handle< T > &theAttr) const |
| Safe variant for arbitrary type of argument. | |
| void | AddAttribute (const occ::handle< TDF_Attribute > &other) const |
| Adds an Attribute <other> to the label of <me>. Raises if there is already one of the same GUID than <other>. | |
| bool | 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 bool clearChildren=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 bool | AfterRetrieval (const bool forceIt=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 bool | BeforeUndo (const occ::handle< TDF_AttributeDelta > &anAttDelta, const bool forceIt=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 bool | AfterUndo (const occ::handle< TDF_AttributeDelta > &anAttDelta, const bool forceIt=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". | |
| bool | IsBackuped () const |
| Returns true if the attribute backup status is set. This status is set/unset by the Backup() method. | |
| virtual occ::handle< TDF_Attribute > | BackupCopy () const |
| Copies the attribute contents into a new other attribute. It is used by Backup(). | |
| virtual occ::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 occ::handle< TDF_DeltaOnForget > | DeltaOnForget () const |
| Makes an AttributeDelta because <me> has been forgotten. | |
| virtual occ::handle< TDF_DeltaOnResume > | DeltaOnResume () const |
| Makes an AttributeDelta because <me> has been resumed. | |
| virtual occ::handle< TDF_DeltaOnModification > | DeltaOnModification (const occ::handle< TDF_Attribute > &anOldAttribute) const |
| Makes a DeltaOnModification between <me> and. | |
| virtual void | DeltaOnModification (const occ::handle< TDF_DeltaOnModification > &aDelta) |
| Applies a DeltaOnModification to <me>. | |
| virtual occ::handle< TDF_DeltaOnRemoval > | DeltaOnRemoval () const |
| Makes a DeltaOnRemoval on <me> because <me> has disappeared from the DS. | |
| virtual occ::handle< TDF_Attribute > | NewEmpty () const =0 |
| Returns an new empty attribute from the good end type. It is used by the copy algorithm. | |
| virtual void | References (const occ::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, NCollection_IndexedMap< occ::handle< TDF_Attribute > > &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 int 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 ()=default |
| Destructor must be virtual. | |
| virtual const opencascade::handle< Standard_Type > & | DynamicType () const |
| Returns a type descriptor about this object. | |
| bool | IsInstance (const opencascade::handle< Standard_Type > &theType) const |
| Returns a true value if this is an instance of Type. | |
| bool | IsInstance (const char *const theTypeName) const |
| Returns a true value if this is an instance of TypeName. | |
| bool | 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. | |
| bool | IsKind (const char *const 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. | |
| int | GetRefCount () const noexcept |
| Get the reference counter of this object. | |
| void | IncrementRefCounter () noexcept |
| Increments the reference counter of this object. Uses relaxed memory ordering since incrementing only requires atomicity, not synchronization with other memory operations. | |
| int | DecrementRefCounter () noexcept |
| Decrements the reference counter of this object; returns the decremented value. Uses release ordering for the decrement to ensure all writes to the object are visible before the count reaches zero. An acquire fence is added only when the count reaches zero, ensuring proper synchronization before deletion. This is more efficient than using acq_rel for every decrement. | |
| virtual void | Delete () const |
| Memory deallocator for transient classes. | |
Static Public Member Functions | |
| static occ::handle< XCAFDoc_LayerTool > | Set (const TDF_Label &L) |
| Creates (if not exist) LayerTool. | |
| static const Standard_GUID & | GetID () |
| static void | GetShapesOfLayer (const TDF_Label &theLayerL, NCollection_Sequence< TDF_Label > &theShLabels) |
| Return sequanese of shape labels that assigned with layers to <ShLabels>. | |
Static Public Member Functions inherited from Standard_Transient | |
| 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. | |
Additional Inherited Members | |
Public Types inherited from Standard_Transient | |
| typedef void | base_type |
| Returns a type descriptor about this object. | |
Protected Member Functions inherited from TDF_Attribute | |
| TDF_Attribute () | |
| Initializes fields. | |
Provides tools to store and retrieve attributes (Layers) of TopoDS_Shape in and from TDocStd_Document A Document is intended to hold different attributes of ONE shape and it's sub-shapes Provide tools for management of Layers section of document.
| XCAFDoc_LayerTool::XCAFDoc_LayerTool | ( | ) |
| TDF_Label XCAFDoc_LayerTool::AddLayer | ( | const TCollection_ExtendedString & | theLayer | ) | const |
Adds a Layer definition to a Layertable and returns its label (returns existing label if the same Layer is already defined)
| TDF_Label XCAFDoc_LayerTool::AddLayer | ( | const TCollection_ExtendedString & | theLayer, |
| const bool | theToFindVisible ) const |
Adds a Layer definition to a Layertable and returns its label Returns existing label (if it is already defined) of visible or invisible layer, according to <theToFindVisible> parameter.
| TDF_Label XCAFDoc_LayerTool::BaseLabel | ( | ) | const |
returns the label under which Layers are stored
|
overridevirtual |
Dumps the content of me into the stream.
Reimplemented from TDataStd_GenericEmpty.
| TDF_Label XCAFDoc_LayerTool::FindLayer | ( | const TCollection_ExtendedString & | aLayer, |
| const bool | theToFindWithProperty = false, | ||
| const bool | theToFindVisible = true ) const |
Finds a Layer definition in a Layertable by name Returns first founded label with the same name if <theToFindWithProperty> is false If <theToFindWithProperty> is true returns first label that contains or not contains visible attr, according to the <theToFindVisible> parameter.
| bool XCAFDoc_LayerTool::FindLayer | ( | const TCollection_ExtendedString & | aLayer, |
| TDF_Label & | lab ) const |
Finds a Layer definition in a Layertable and returns its label if found Returns False if Layer is not found in Layertable.
|
static |
| bool XCAFDoc_LayerTool::GetLayer | ( | const TDF_Label & | lab, |
| TCollection_ExtendedString & | aLayer ) const |
Returns Layer defined by label lab Returns False if the label is not in Layertable or does not define a Layer.
| void XCAFDoc_LayerTool::GetLayerLabels | ( | NCollection_Sequence< TDF_Label > & | Labels | ) | const |
Returns a sequence of Layers currently stored in the Layertable.
| occ::handle< NCollection_HSequence< TCollection_ExtendedString > > XCAFDoc_LayerTool::GetLayers | ( | const TDF_Label & | L | ) |
Return sequence of strings that associated with label <L>.
| bool XCAFDoc_LayerTool::GetLayers | ( | const TDF_Label & | L, |
| NCollection_Sequence< TDF_Label > & | aLayerLS ) |
Return sequence of labels <aLayerSL> that associated with label <L>.
| bool XCAFDoc_LayerTool::GetLayers | ( | const TDF_Label & | L, |
| occ::handle< NCollection_HSequence< TCollection_ExtendedString > > & | aLayerS ) |
Return sequence of strings <aLayerS> that associated with label <L>.
| occ::handle< NCollection_HSequence< TCollection_ExtendedString > > XCAFDoc_LayerTool::GetLayers | ( | const TopoDS_Shape & | Sh | ) |
Return sequence of strings that associated with shape <Sh>.
| bool XCAFDoc_LayerTool::GetLayers | ( | const TopoDS_Shape & | Sh, |
| NCollection_Sequence< TDF_Label > & | aLayerLS ) |
Return sequence of labels <aLayerLS> that associated with shape <Sh>.
| bool XCAFDoc_LayerTool::GetLayers | ( | const TopoDS_Shape & | Sh, |
| occ::handle< NCollection_HSequence< TCollection_ExtendedString > > & | aLayerS ) |
Return sequence of strings <aLayerS> that associated with shape <Sh>.
|
static |
Return sequanese of shape labels that assigned with layers to <ShLabels>.
|
overridevirtual |
Returns the ID of the attribute.
Implements TDF_Attribute.
Returns True if label belongs to a Layertable and is a Layer definition.
| bool XCAFDoc_LayerTool::IsSet | ( | const TDF_Label & | L, |
| const TCollection_ExtendedString & | aLayer ) const |
Returns True if label <L> has a Layer associated with the <aLayer>.
Returns True if label <L> has a Layer associated with the <aLayerL> label.
| bool XCAFDoc_LayerTool::IsSet | ( | const TopoDS_Shape & | Sh, |
| const TCollection_ExtendedString & | aLayer ) |
Returns True if shape <Sh> has a Layer associated with the <aLayer>.
| bool XCAFDoc_LayerTool::IsSet | ( | const TopoDS_Shape & | Sh, |
| const TDF_Label & | aLayerL ) |
Returns True if shape <Sh> has a Layer associated with the <aLayerL>.
Return TRUE if layer is visible, FALSE if invisible.
Removes Layer from the Layertable.
|
static |
Creates (if not exist) LayerTool.
| void XCAFDoc_LayerTool::SetLayer | ( | const TDF_Label & | L, |
| const TCollection_ExtendedString & | aLayer, | ||
| const bool | shapeInOneLayer = false ) const |
Sets a link from label <L> to Layer <aLayer> in the Layertable Adds a Layer as necessary optional parameter <shapeInOneLayer> show could shape be in number of layers or only in one.
| void XCAFDoc_LayerTool::SetLayer | ( | const TDF_Label & | L, |
| const TDF_Label & | LayerL, | ||
| const bool | shapeInOneLayer = false ) const |
Sets a link from label <L> to Layer defined by <LayerL> optional parameter <shapeInOneLayer> show could shape be in number of layers or only in one.
| bool XCAFDoc_LayerTool::SetLayer | ( | const TopoDS_Shape & | Sh, |
| const TCollection_ExtendedString & | aLayer, | ||
| const bool | shapeInOneLayer = false ) |
Sets a link from label that containing shape <Sh> with layer <aLayer>. Add <aLayer> to LayerTable if nessesery. optional parameter <shapeInOneLayer> show could shape be in number of layers or only in one. return FALSE if no such shape <Sh>.
| bool XCAFDoc_LayerTool::SetLayer | ( | const TopoDS_Shape & | Sh, |
| const TDF_Label & | LayerL, | ||
| const bool | shapeInOneLayer = false ) |
Sets a link from label that containing shape <Sh> with layer that situated at label <LayerL>. optional parameter <shapeInOneLayer> show could shape be in number of layers or only in one. return FALSE if no such shape <Sh> or label <LayerL>
| void XCAFDoc_LayerTool::SetVisibility | ( | const TDF_Label & | layerL, |
| const bool | isvisible = true ) const |
Set the visibility of layer. If layer is invisible when on it's layer will set UAttribute with corresponding GUID.
| const occ::handle< XCAFDoc_ShapeTool > & XCAFDoc_LayerTool::ShapeTool | ( | ) |
Returns internal XCAFDoc_ShapeTool tool.
Removes a link from label <L> to all layers.
| bool XCAFDoc_LayerTool::UnSetLayers | ( | const TopoDS_Shape & | Sh | ) |
Remove link between shape <Sh> and all Layers at LayerTable. return FALSE if no such shape <Sh> in XCAF Document.
| bool XCAFDoc_LayerTool::UnSetOneLayer | ( | const TDF_Label & | L, |
| const TCollection_ExtendedString & | aLayer ) const |
Remove link from label <L> and Layer <aLayer>. returns FALSE if no such layer.
Remove link from label <L> and Layer <aLayerL>. returns FALSE if <aLayerL> is not a layer label.
| bool XCAFDoc_LayerTool::UnSetOneLayer | ( | const TopoDS_Shape & | Sh, |
| const TCollection_ExtendedString & | aLayer ) |
Remove link between shape <Sh> and layer <aLayer>. returns FALSE if no such layer <aLayer> or shape <Sh>.
| bool XCAFDoc_LayerTool::UnSetOneLayer | ( | const TopoDS_Shape & | Sh, |
| const TDF_Label & | aLayerL ) |
Remove link between shape <Sh> and layer <aLayerL>. returns FALSE if no such layer <aLayerL> or shape <Sh>.