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
    IFGraph_SubPartsIterator Class Reference

    defines general form for graph classes of which result is not a single iteration on Entities, but a nested one : External iteration works on sub-parts, identified by each class (according to its algorithm) Internal Iteration concerns Entities of a sub-part Sub-Parts are assumed to be disjoined; if they are not, the first one has priority More...

    #include <IFGraph_SubPartsIterator.hxx>

    Inheritance diagram for IFGraph_SubPartsIterator:

    Public Member Functions

     IFGraph_SubPartsIterator (const Interface_Graph &agraph, const bool whole)
     Creates with a Graph, whole or parts of it whole True : works on the entire Model whole False : empty, ready to be filled SubPartIterator is set to load entities.
     IFGraph_SubPartsIterator (IFGraph_SubPartsIterator &other)
     Creates a SubPartIterator from another one and gets its Data Note that only non-empty sub-parts are taken into account PartNum is set to the last one.
    void GetParts (IFGraph_SubPartsIterator &other)
     Gets Parts from another SubPartsIterator (in addition to the ones already recorded) Error if both SubPartsIterators are not based on the same Model.
    occ::handle< Interface_InterfaceModelModel () const
     Returns the Model with which this Iterator was created.
    void AddPart ()
     Adds an empty part and sets it to receive entities.
    int NbParts () const
     Returns count of registered parts.
    int PartNum () const
     Returns numero of part which currently receives entities (0 at load time).
    void SetLoad ()
     Sets SubPartIterator to get Entities (by GetFromEntity & GetFromIter) into load status, to be analysed later.
    void SetPartNum (const int numnum)
     Sets numero of receiving part to a new value Error if not in range (1-NbParts).
    void GetFromEntity (const occ::handle< Standard_Transient > &ent, const bool shared)
     Adds an Entity : into load status if in Load mode, to the current part if there is one. If shared is True, adds also its shared ones (shared at all levels).
    void GetFromIter (const Interface_EntityIterator &iter)
     Adds a list of Entities (into Load mode or to a Part), given as an Iterator.
    void Reset ()
     Erases data (parts, entities) : "me" becomes empty and in load status.
    virtual void Evaluate ()
     Called by Clear, this method allows evaluation just before iteration; its default is doing nothing, it is designed to be redefined.
    Interface_GraphContent Loaded () const
     Returns entities which where loaded (not set into a sub-part).
    Interface_Graph LoadedGraph () const
     Same as above, but under the form of a Graph.
    bool IsLoaded (const occ::handle< Standard_Transient > &ent) const
     Returns True if an Entity is loaded (either set into a sub-part or not).
    bool IsInPart (const occ::handle< Standard_Transient > &ent) const
     Returns True if an Entity is Present in a sub-part.
    int EntityPartNum (const occ::handle< Standard_Transient > &ent) const
     Returns number of the sub-part in which an Entity has been set if it is not in a sub-part (or not loaded at all), Returns 0.
    void Start ()
     Sets iteration to its beginning; calls Evaluate.
    bool More ()
     Returns True if there are more sub-parts to iterate on Note : an empty sub-part is not taken in account by Iteration.
    void Next ()
     Sets iteration to the next sub-part if there is not, IsSingle-Entities will raises an exception.
    bool IsSingle () const
     Returns True if current sub-part is single (has only one Entity) Error if there is no sub-part to iterate now.
    occ::handle< Standard_TransientFirstEntity () const
     Returns the first entity of current sub-part, that is for a Single one, the only one it contains Error : same as above (end of iteration).
    Interface_EntityIterator Entities () const
     Returns current sub-part, not as a "Value", but as an Iterator on Entities it contains Error : same as above (end of iteration).
    virtual ~IFGraph_SubPartsIterator ()

    Protected Attributes

    Interface_Graph thegraph

    Detailed Description

    defines general form for graph classes of which result is not a single iteration on Entities, but a nested one : External iteration works on sub-parts, identified by each class (according to its algorithm) Internal Iteration concerns Entities of a sub-part Sub-Parts are assumed to be disjoined; if they are not, the first one has priority

    A SubPartsIterator can work in two steps : first, load entities which have to be processed then, analyse to set those entities into sub-parts

    Constructor & Destructor Documentation

    ◆ IFGraph_SubPartsIterator() [1/2]

    IFGraph_SubPartsIterator::IFGraph_SubPartsIterator ( const Interface_Graph & agraph,
    const bool whole )

    Creates with a Graph, whole or parts of it whole True : works on the entire Model whole False : empty, ready to be filled SubPartIterator is set to load entities.

    ◆ IFGraph_SubPartsIterator() [2/2]

    IFGraph_SubPartsIterator::IFGraph_SubPartsIterator ( IFGraph_SubPartsIterator & other)

    Creates a SubPartIterator from another one and gets its Data Note that only non-empty sub-parts are taken into account PartNum is set to the last one.

    ◆ ~IFGraph_SubPartsIterator()

    virtual IFGraph_SubPartsIterator::~IFGraph_SubPartsIterator ( )
    virtual

    Member Function Documentation

    ◆ AddPart()

    void IFGraph_SubPartsIterator::AddPart ( )

    Adds an empty part and sets it to receive entities.

    ◆ Entities()

    Interface_EntityIterator IFGraph_SubPartsIterator::Entities ( ) const

    Returns current sub-part, not as a "Value", but as an Iterator on Entities it contains Error : same as above (end of iteration).

    ◆ EntityPartNum()

    int IFGraph_SubPartsIterator::EntityPartNum ( const occ::handle< Standard_Transient > & ent) const

    Returns number of the sub-part in which an Entity has been set if it is not in a sub-part (or not loaded at all), Returns 0.

    ◆ Evaluate()

    virtual void IFGraph_SubPartsIterator::Evaluate ( )
    virtual

    Called by Clear, this method allows evaluation just before iteration; its default is doing nothing, it is designed to be redefined.

    Reimplemented in IFGraph_ConnectedComponants, IFGraph_Cycles, IFGraph_SCRoots, and IFGraph_StrongComponants.

    ◆ FirstEntity()

    occ::handle< Standard_Transient > IFGraph_SubPartsIterator::FirstEntity ( ) const

    Returns the first entity of current sub-part, that is for a Single one, the only one it contains Error : same as above (end of iteration).

    ◆ GetFromEntity()

    void IFGraph_SubPartsIterator::GetFromEntity ( const occ::handle< Standard_Transient > & ent,
    const bool shared )

    Adds an Entity : into load status if in Load mode, to the current part if there is one. If shared is True, adds also its shared ones (shared at all levels).

    ◆ GetFromIter()

    void IFGraph_SubPartsIterator::GetFromIter ( const Interface_EntityIterator & iter)

    Adds a list of Entities (into Load mode or to a Part), given as an Iterator.

    ◆ GetParts()

    void IFGraph_SubPartsIterator::GetParts ( IFGraph_SubPartsIterator & other)

    Gets Parts from another SubPartsIterator (in addition to the ones already recorded) Error if both SubPartsIterators are not based on the same Model.

    ◆ IsInPart()

    bool IFGraph_SubPartsIterator::IsInPart ( const occ::handle< Standard_Transient > & ent) const

    Returns True if an Entity is Present in a sub-part.

    ◆ IsLoaded()

    bool IFGraph_SubPartsIterator::IsLoaded ( const occ::handle< Standard_Transient > & ent) const

    Returns True if an Entity is loaded (either set into a sub-part or not).

    ◆ IsSingle()

    bool IFGraph_SubPartsIterator::IsSingle ( ) const

    Returns True if current sub-part is single (has only one Entity) Error if there is no sub-part to iterate now.

    ◆ Loaded()

    Interface_GraphContent IFGraph_SubPartsIterator::Loaded ( ) const

    Returns entities which where loaded (not set into a sub-part).

    ◆ LoadedGraph()

    Interface_Graph IFGraph_SubPartsIterator::LoadedGraph ( ) const

    Same as above, but under the form of a Graph.

    ◆ Model()

    occ::handle< Interface_InterfaceModel > IFGraph_SubPartsIterator::Model ( ) const

    Returns the Model with which this Iterator was created.

    ◆ More()

    bool IFGraph_SubPartsIterator::More ( )

    Returns True if there are more sub-parts to iterate on Note : an empty sub-part is not taken in account by Iteration.

    ◆ NbParts()

    int IFGraph_SubPartsIterator::NbParts ( ) const

    Returns count of registered parts.

    ◆ Next()

    void IFGraph_SubPartsIterator::Next ( )

    Sets iteration to the next sub-part if there is not, IsSingle-Entities will raises an exception.

    ◆ PartNum()

    int IFGraph_SubPartsIterator::PartNum ( ) const

    Returns numero of part which currently receives entities (0 at load time).

    ◆ Reset()

    void IFGraph_SubPartsIterator::Reset ( )

    Erases data (parts, entities) : "me" becomes empty and in load status.

    ◆ SetLoad()

    void IFGraph_SubPartsIterator::SetLoad ( )

    Sets SubPartIterator to get Entities (by GetFromEntity & GetFromIter) into load status, to be analysed later.

    ◆ SetPartNum()

    void IFGraph_SubPartsIterator::SetPartNum ( const int num)

    Sets numero of receiving part to a new value Error if not in range (1-NbParts).

    ◆ Start()

    void IFGraph_SubPartsIterator::Start ( )

    Sets iteration to its beginning; calls Evaluate.

    Field Documentation

    ◆ thegraph

    Interface_Graph IFGraph_SubPartsIterator::thegraph
    protected

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