Open CASCADE Technology Reference Manual 8.0.0
Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions
TDataXtd_Geometry Class Reference

This class is used to model construction geometry. The specific geometric construction of the attribute is defined by an element of the enumeration TDataXtd_GeometryEnum. This attribute may also be used to qualify underlying geometry of the associated NamedShape. for Constructuion element by example. More...

#include <TDataXtd_Geometry.hxx>

Inheritance diagram for TDataXtd_Geometry:
Inheritance graph
[legend]

Public Member Functions

 TDataXtd_Geometry ()
 This and the next methods are used to retrieve underlying geometry of the NamedShape, even if no Geometry Attribute is associated. if not found or not compliant geometry return False.
 
void SetType (const TDataXtd_GeometryEnum T)
 Returns the type of geometric construction T of this attribute. T will be a value of the enumeration TDataXtd_GeometryEnum.
 
TDataXtd_GeometryEnum GetType () const
 Returns the type of geometric construction.
 
const Standard_GUIDID () const override
 Returns the ID of the attribute.
 
void Restore (const occ::handle< TDF_Attribute > &with) override
 Restores the backuped contents from <anAttribute> into this one. It is used when aborting a transaction.
 
occ::handle< TDF_AttributeNewEmpty () const override
 Returns an new empty attribute from the good end type. It is used by the copy algorithm.
 
void Paste (const occ::handle< TDF_Attribute > &into, const occ::handle< TDF_RelocationTable > &RT) 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>.
 
Standard_OStreamDump (Standard_OStream &anOS) const override
 Dumps the minimum information about <me> on <aStream>.
 
- 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_AttributeBackupCopy () const
 Copies the attribute contents into a new other attribute. It is used by Backup().
 
virtual occ::handle< TDF_DeltaOnAdditionDeltaOnAddition () 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_DeltaOnForgetDeltaOnForget () const
 Makes an AttributeDelta because <me> has been forgotten.
 
virtual occ::handle< TDF_DeltaOnResumeDeltaOnResume () const
 Makes an AttributeDelta because <me> has been resumed.
 
virtual occ::handle< TDF_DeltaOnModificationDeltaOnModification (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_DeltaOnRemovalDeltaOnRemoval () const
 Makes a DeltaOnRemoval on <me> because <me> has disappeared from the DS.
 
virtual void References (const occ::handle< TDF_DataSet > &aDataSet) const
 Adds the first level referenced attributes and labels to <aDataSet>.
 
Standard_OStreamoperator<< (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".
 
virtual void DumpJson (Standard_OStream &theOStream, int theDepth=-1) const
 Dumps the content of me into the stream.
 
- Public Member Functions inherited from Standard_Transient
 Standard_Transient ()
 Empty constructor.
 
 Standard_Transient (const Standard_Transient &)
 Copy constructor – does nothing.
 
Standard_Transientoperator= (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_TransientThis () 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< TDataXtd_GeometrySet (const TDF_Label &label)
 
static TDataXtd_GeometryEnum Type (const TDF_Label &L)
 Returns the label L used to define the type of geometric construction for the geometry attribute.
 
static TDataXtd_GeometryEnum Type (const occ::handle< TNaming_NamedShape > &S)
 Returns the topological attribute S used to define the type of geometric construction for the geometry attribute.
 
static bool Point (const TDF_Label &L, gp_Pnt &G)
 Returns the point attribute defined by the label L and the point G.
 
static bool Point (const occ::handle< TNaming_NamedShape > &S, gp_Pnt &G)
 Returns the point attribute defined by the topological attribute S and the point G.
 
static bool Axis (const TDF_Label &L, gp_Ax1 &G)
 Returns the axis attribute defined by the label L and the axis G.
 
static bool Axis (const occ::handle< TNaming_NamedShape > &S, gp_Ax1 &G)
 Returns the axis attribute defined by the topological attribute S and the axis G.
 
static bool Line (const TDF_Label &L, gp_Lin &G)
 Returns the line attribute defined by the label L and the line G.
 
static bool Line (const occ::handle< TNaming_NamedShape > &S, gp_Lin &G)
 Returns the line attribute defined by the topological attribute S and the line G.
 
static bool Circle (const TDF_Label &L, gp_Circ &G)
 Returns the circle attribute defined by the label L and the circle G.
 
static bool Circle (const occ::handle< TNaming_NamedShape > &S, gp_Circ &G)
 Returns the circle attribute defined by the topological attribute S and the circle G.
 
static bool Ellipse (const TDF_Label &L, gp_Elips &G)
 Returns the ellipse attribute defined by the label L and the ellipse G.
 
static bool Ellipse (const occ::handle< TNaming_NamedShape > &S, gp_Elips &G)
 Returns the ellipse attribute defined by the topological attribute S and the ellipse G.
 
static bool Plane (const TDF_Label &L, gp_Pln &G)
 Returns the plane attribute defined by the label L and the plane G.
 
static bool Plane (const occ::handle< TNaming_NamedShape > &S, gp_Pln &G)
 Returns the plane attribute defined by the topological attribute S and the plane G.
 
static bool Cylinder (const TDF_Label &L, gp_Cylinder &G)
 Returns the cylinder attribute defined by the label L and the cylinder G.
 
static bool Cylinder (const occ::handle< TNaming_NamedShape > &S, gp_Cylinder &G)
 Returns the cylinder attribute defined by the topological attribute S and the cylinder G.
 
static const Standard_GUIDGetID ()
 Returns the GUID for geometry attributes.
 
- Static Public Member Functions inherited from Standard_Transient
static constexpr const charget_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.
 

Detailed Description

This class is used to model construction geometry. The specific geometric construction of the attribute is defined by an element of the enumeration TDataXtd_GeometryEnum. This attribute may also be used to qualify underlying geometry of the associated NamedShape. for Constructuion element by example.

Constructor & Destructor Documentation

◆ TDataXtd_Geometry()

TDataXtd_Geometry::TDataXtd_Geometry ( )

This and the next methods are used to retrieve underlying geometry of the NamedShape, even if no Geometry Attribute is associated. if not found or not compliant geometry return False.

Member Function Documentation

◆ Axis() [1/2]

static bool TDataXtd_Geometry::Axis ( const occ::handle< TNaming_NamedShape > & S,
gp_Ax1 & G )
static

Returns the axis attribute defined by the topological attribute S and the axis G.

◆ Axis() [2/2]

static bool TDataXtd_Geometry::Axis ( const TDF_Label & L,
gp_Ax1 & G )
static

Returns the axis attribute defined by the label L and the axis G.

◆ Circle() [1/2]

static bool TDataXtd_Geometry::Circle ( const occ::handle< TNaming_NamedShape > & S,
gp_Circ & G )
static

Returns the circle attribute defined by the topological attribute S and the circle G.

◆ Circle() [2/2]

static bool TDataXtd_Geometry::Circle ( const TDF_Label & L,
gp_Circ & G )
static

Returns the circle attribute defined by the label L and the circle G.

◆ Cylinder() [1/2]

static bool TDataXtd_Geometry::Cylinder ( const occ::handle< TNaming_NamedShape > & S,
gp_Cylinder & G )
static

Returns the cylinder attribute defined by the topological attribute S and the cylinder G.

◆ Cylinder() [2/2]

static bool TDataXtd_Geometry::Cylinder ( const TDF_Label & L,
gp_Cylinder & G )
static

Returns the cylinder attribute defined by the label L and the cylinder G.

◆ Dump()

Standard_OStream & TDataXtd_Geometry::Dump ( Standard_OStream & anOS) const
overridevirtual

Dumps the minimum information about <me> on <aStream>.

Reimplemented from TDF_Attribute.

◆ Ellipse() [1/2]

static bool TDataXtd_Geometry::Ellipse ( const occ::handle< TNaming_NamedShape > & S,
gp_Elips & G )
static

Returns the ellipse attribute defined by the topological attribute S and the ellipse G.

◆ Ellipse() [2/2]

static bool TDataXtd_Geometry::Ellipse ( const TDF_Label & L,
gp_Elips & G )
static

Returns the ellipse attribute defined by the label L and the ellipse G.

◆ GetID()

static const Standard_GUID & TDataXtd_Geometry::GetID ( )
static

Returns the GUID for geometry attributes.

◆ GetType()

TDataXtd_GeometryEnum TDataXtd_Geometry::GetType ( ) const

Returns the type of geometric construction.

◆ ID()

const Standard_GUID & TDataXtd_Geometry::ID ( ) const
overridevirtual

Returns the ID of the attribute.

Implements TDF_Attribute.

◆ Line() [1/2]

static bool TDataXtd_Geometry::Line ( const occ::handle< TNaming_NamedShape > & S,
gp_Lin & G )
static

Returns the line attribute defined by the topological attribute S and the line G.

◆ Line() [2/2]

static bool TDataXtd_Geometry::Line ( const TDF_Label & L,
gp_Lin & G )
static

Returns the line attribute defined by the label L and the line G.

◆ NewEmpty()

occ::handle< TDF_Attribute > TDataXtd_Geometry::NewEmpty ( ) const
overridevirtual

Returns an new empty attribute from the good end type. It is used by the copy algorithm.

Implements TDF_Attribute.

◆ Paste()

void TDataXtd_Geometry::Paste ( const occ::handle< TDF_Attribute > & intoAttribute,
const occ::handle< TDF_RelocationTable > & aRelocationTable ) const
overridevirtual

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>.

The given pasted attribute can be full or empty of its contents. But don't make a NEW! Just set the contents!

It is possible to use <aRelocationTable> to get/set the relocation value of a source attribute.

Implements TDF_Attribute.

◆ Plane() [1/2]

static bool TDataXtd_Geometry::Plane ( const occ::handle< TNaming_NamedShape > & S,
gp_Pln & G )
static

Returns the plane attribute defined by the topological attribute S and the plane G.

◆ Plane() [2/2]

static bool TDataXtd_Geometry::Plane ( const TDF_Label & L,
gp_Pln & G )
static

Returns the plane attribute defined by the label L and the plane G.

◆ Point() [1/2]

static bool TDataXtd_Geometry::Point ( const occ::handle< TNaming_NamedShape > & S,
gp_Pnt & G )
static

Returns the point attribute defined by the topological attribute S and the point G.

◆ Point() [2/2]

static bool TDataXtd_Geometry::Point ( const TDF_Label & L,
gp_Pnt & G )
static

Returns the point attribute defined by the label L and the point G.

◆ Restore()

void TDataXtd_Geometry::Restore ( const occ::handle< TDF_Attribute > & anAttribute)
overridevirtual

Restores the backuped contents from <anAttribute> into this one. It is used when aborting a transaction.

Implements TDF_Attribute.

◆ Set()

static occ::handle< TDataXtd_Geometry > TDataXtd_Geometry::Set ( const TDF_Label & label)
static

API class methods

Finds, or creates, a Geometry attribute defined by the label label. The default type of geometry is the value ANY_GEOM of the enumeration TDataXtd_GeometryEnum. To specify another value of this enumeration, use the function SetType.

◆ SetType()

void TDataXtd_Geometry::SetType ( const TDataXtd_GeometryEnum T)

Returns the type of geometric construction T of this attribute. T will be a value of the enumeration TDataXtd_GeometryEnum.

◆ Type() [1/2]

static TDataXtd_GeometryEnum TDataXtd_Geometry::Type ( const occ::handle< TNaming_NamedShape > & S)
static

Returns the topological attribute S used to define the type of geometric construction for the geometry attribute.

◆ Type() [2/2]

static TDataXtd_GeometryEnum TDataXtd_Geometry::Type ( const TDF_Label & L)
static

Returns the label L used to define the type of geometric construction for the geometry attribute.


The documentation for this class was generated from the following file: