OCCT3D OCCT 8.0.1
OCCT documentation

Search guides and API reference

Enter at least two characters.

    Open CASCADE Technology Reference Manual 8.0.1
    IGESToBRep_IGESBoundary Class Reference

    This class is intended to translate IGES boundary entity (142-CurveOnSurface, 141-Boundary or 508-Loop) into the wire. Methods Transfer are virtual and are redefined in Advanced Data Exchange to optimize the translation and take into account advanced parameters. More...

    #include <IGESToBRep_IGESBoundary.hxx>

    Inheritance diagram for IGESToBRep_IGESBoundary:

    Public Member Functions

     IGESToBRep_IGESBoundary ()
     Empty constructor.
     IGESToBRep_IGESBoundary (const IGESToBRep_CurveAndSurface &CS)
     Empty constructor.
    void Init (const IGESToBRep_CurveAndSurface &CS, const occ::handle< IGESData_IGESEntity > &entity, const TopoDS_Face &faceface, const gp_Trsf2d &trans, const double uFact, const int filepreference)
     Inits the object with parameters common for all types of IGES boundaries. <CS>: object to be used for retrieving translation parameters and sending messages, <entity>: boundary entity to be processed, <face>, <trans>, <uFact>: as for IGESToBRep_TopoCurve <filepreference>: preferred representation (2 or 3) given in the IGES file.
    occ::handle< ShapeExtend_WireDataWireData () const
     Returns the resulting wire.
    occ::handle< ShapeExtend_WireDataWireData3d () const
     Returns the wire from 3D curves (edges contain 3D curves and may contain pcurves).
    occ::handle< ShapeExtend_WireDataWireData2d () const
     Returns the wire from 2D curves (edges contain pcurves only).
    bool Transfer (bool &okCurve, bool &okCurve3d, bool &okCurve2d, const occ::handle< IGESData_IGESEntity > &curve3d, const bool toreverse3d, const occ::handle< NCollection_HArray1< occ::handle< IGESData_IGESEntity > > > &curves2d, const int number)
     Translates 141 and 142 entities. Returns True if the curve has been successfully translated, otherwise returns False. <okCurve..>: flags that indicate whether corresponding representation has been successfully translated (must be set to True before first call), <curve3d>: model space curve for 142 and current model space curve for 141, <toreverse3d>: False for 142 and current orientation flag for 141, <curves2d>: 1 parameter space curve for 142 or list of them for current model space curves for 141, <number>: 1 for 142 and rank number of model space curve for 141.
    bool Transfer (bool &okCurve, bool &okCurve3d, bool &okCurve2d, const occ::handle< ShapeExtend_WireData > &curve3d, const occ::handle< NCollection_HArray1< occ::handle< IGESData_IGESEntity > > > &curves2d, const bool toreverse2d, const int number, occ::handle< ShapeExtend_WireData > &lsewd)
     Translates 508 entity. Returns True if the curve has been successfully translated, otherwise returns False. Input object IGESBoundary must be created and initialized before. <okCurve..>: flags that indicate whether corresponding representation has been successfully translated (must be set to True before first call), <curve3d>: result of translation of current edge, <curves2d>: list of parameter space curves for edge, <toreverse2d>: orientation flag of current edge in respect to its model space curve, <number>: rank number of edge, <lsewd>: returns the result of translation of current edge.
    virtual void Check (const bool resultresult, const bool checkclosure, const bool okCurve3d, const bool okCurve2d)
     Checks result of translation of IGES boundary entities (types 141, 142 or 508). Checks consistency of 2D and 3D representations and keeps only one if they are inconsistent. <result>: result of translation (returned by Transfer), <checkclosure>: False for 142 without parent 144 entity, otherwise True, <okCurve3d>, <okCurve2d>: those returned by Transfer.
    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.

    Protected Member Functions

    virtual bool Transfer (bool &okCurve, bool &okCurve3d, bool &okCurve2d, const occ::handle< IGESData_IGESEntity > &icurve3d, const occ::handle< ShapeExtend_WireData > &scurve3d, const bool usescurve, const bool toreverse3d, const occ::handle< NCollection_HArray1< occ::handle< IGESData_IGESEntity > > > &curves2d, const bool toreverse2d, const int number, occ::handle< ShapeExtend_WireData > &lsewd)
     Methods called by both Transfer methods.

    Static Protected Member Functions

    static void ReverseCurves3d (const occ::handle< ShapeExtend_WireData > &sewd)
    static void ReverseCurves2d (const occ::handle< ShapeExtend_WireData > &sewd, const TopoDS_Face &faceface)

    Protected Attributes

    IGESToBRep_CurveAndSurface myCS
    occ::handle< IGESData_IGESEntitymyentity
    occ::handle< ShapeExtend_WireDatamysewd
    occ::handle< ShapeExtend_WireDatamysewd3d
    occ::handle< ShapeExtend_WireDatamysewd2d
    TopoDS_Face myface
    gp_Trsf2d mytrsf
    double myuFact
    int myfilepreference

    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.

    Detailed Description

    This class is intended to translate IGES boundary entity (142-CurveOnSurface, 141-Boundary or 508-Loop) into the wire. Methods Transfer are virtual and are redefined in Advanced Data Exchange to optimize the translation and take into account advanced parameters.

    Constructor & Destructor Documentation

    ◆ IGESToBRep_IGESBoundary() [1/2]

    IGESToBRep_IGESBoundary::IGESToBRep_IGESBoundary ( )

    Empty constructor.

    ◆ IGESToBRep_IGESBoundary() [2/2]

    IGESToBRep_IGESBoundary::IGESToBRep_IGESBoundary ( const IGESToBRep_CurveAndSurface & CS)

    Empty constructor.

    Member Function Documentation

    ◆ Check()

    virtual void IGESToBRep_IGESBoundary::Check ( const bool result,
    const bool checkclosure,
    const bool okCurve3d,
    const bool okCurve2d )
    virtual

    Checks result of translation of IGES boundary entities (types 141, 142 or 508). Checks consistency of 2D and 3D representations and keeps only one if they are inconsistent. <result>: result of translation (returned by Transfer), <checkclosure>: False for 142 without parent 144 entity, otherwise True, <okCurve3d>, <okCurve2d>: those returned by Transfer.

    Reimplemented in IGESControl_IGESBoundary.

    ◆ Init()

    void IGESToBRep_IGESBoundary::Init ( const IGESToBRep_CurveAndSurface & CS,
    const occ::handle< IGESData_IGESEntity > & entity,
    const TopoDS_Face & face,
    const gp_Trsf2d & trans,
    const double uFact,
    const int filepreference )

    Inits the object with parameters common for all types of IGES boundaries. <CS>: object to be used for retrieving translation parameters and sending messages, <entity>: boundary entity to be processed, <face>, <trans>, <uFact>: as for IGESToBRep_TopoCurve <filepreference>: preferred representation (2 or 3) given in the IGES file.

    ◆ ReverseCurves2d()

    void IGESToBRep_IGESBoundary::ReverseCurves2d ( const occ::handle< ShapeExtend_WireData > & sewd,
    const TopoDS_Face & face )
    staticprotected

    ◆ ReverseCurves3d()

    void IGESToBRep_IGESBoundary::ReverseCurves3d ( const occ::handle< ShapeExtend_WireData > & sewd)
    staticprotected

    ◆ Transfer() [1/3]

    bool IGESToBRep_IGESBoundary::Transfer ( bool & okCurve,
    bool & okCurve3d,
    bool & okCurve2d,
    const occ::handle< IGESData_IGESEntity > & curve3d,
    const bool toreverse3d,
    const occ::handle< NCollection_HArray1< occ::handle< IGESData_IGESEntity > > > & curves2d,
    const int number )

    Translates 141 and 142 entities. Returns True if the curve has been successfully translated, otherwise returns False. <okCurve..>: flags that indicate whether corresponding representation has been successfully translated (must be set to True before first call), <curve3d>: model space curve for 142 and current model space curve for 141, <toreverse3d>: False for 142 and current orientation flag for 141, <curves2d>: 1 parameter space curve for 142 or list of them for current model space curves for 141, <number>: 1 for 142 and rank number of model space curve for 141.

    ◆ Transfer() [2/3]

    virtual bool IGESToBRep_IGESBoundary::Transfer ( bool & okCurve,
    bool & okCurve3d,
    bool & okCurve2d,
    const occ::handle< IGESData_IGESEntity > & icurve3d,
    const occ::handle< ShapeExtend_WireData > & scurve3d,
    const bool usescurve,
    const bool toreverse3d,
    const occ::handle< NCollection_HArray1< occ::handle< IGESData_IGESEntity > > > & curves2d,
    const bool toreverse2d,
    const int number,
    occ::handle< ShapeExtend_WireData > & lsewd )
    protectedvirtual

    Methods called by both Transfer methods.

    Reimplemented in IGESControl_IGESBoundary.

    ◆ Transfer() [3/3]

    bool IGESToBRep_IGESBoundary::Transfer ( bool & okCurve,
    bool & okCurve3d,
    bool & okCurve2d,
    const occ::handle< ShapeExtend_WireData > & curve3d,
    const occ::handle< NCollection_HArray1< occ::handle< IGESData_IGESEntity > > > & curves2d,
    const bool toreverse2d,
    const int number,
    occ::handle< ShapeExtend_WireData > & lsewd )

    Translates 508 entity. Returns True if the curve has been successfully translated, otherwise returns False. Input object IGESBoundary must be created and initialized before. <okCurve..>: flags that indicate whether corresponding representation has been successfully translated (must be set to True before first call), <curve3d>: result of translation of current edge, <curves2d>: list of parameter space curves for edge, <toreverse2d>: orientation flag of current edge in respect to its model space curve, <number>: rank number of edge, <lsewd>: returns the result of translation of current edge.

    ◆ WireData()

    occ::handle< ShapeExtend_WireData > IGESToBRep_IGESBoundary::WireData ( ) const

    Returns the resulting wire.

    ◆ WireData2d()

    occ::handle< ShapeExtend_WireData > IGESToBRep_IGESBoundary::WireData2d ( ) const

    Returns the wire from 2D curves (edges contain pcurves only).

    ◆ WireData3d()

    occ::handle< ShapeExtend_WireData > IGESToBRep_IGESBoundary::WireData3d ( ) const

    Returns the wire from 3D curves (edges contain 3D curves and may contain pcurves).

    Field Documentation

    ◆ myCS

    IGESToBRep_CurveAndSurface IGESToBRep_IGESBoundary::myCS
    protected

    ◆ myentity

    occ::handle<IGESData_IGESEntity> IGESToBRep_IGESBoundary::myentity
    protected

    ◆ myface

    TopoDS_Face IGESToBRep_IGESBoundary::myface
    protected

    ◆ myfilepreference

    int IGESToBRep_IGESBoundary::myfilepreference
    protected

    ◆ mysewd

    occ::handle<ShapeExtend_WireData> IGESToBRep_IGESBoundary::mysewd
    protected

    ◆ mysewd2d

    occ::handle<ShapeExtend_WireData> IGESToBRep_IGESBoundary::mysewd2d
    protected

    ◆ mysewd3d

    occ::handle<ShapeExtend_WireData> IGESToBRep_IGESBoundary::mysewd3d
    protected

    ◆ mytrsf

    gp_Trsf2d IGESToBRep_IGESBoundary::mytrsf
    protected

    ◆ myuFact

    double IGESToBRep_IGESBoundary::myuFact
    protected

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