Open CASCADE Technology 7.8.2.dev
IFGraph_Cumulate Class Reference

this class evaluates effect of cumulated sub-parts : overlapping, forgotten entities Results are kept in a Graph, several question can be set Basic Iteration gives entities which are part of Cumulation More...

#include <IFGraph_Cumulate.hxx>

Inheritance diagram for IFGraph_Cumulate:

Public Member Functions

 IFGraph_Cumulate (const Interface_Graph &agraph)
 creates empty Cumulate, ready to work
 
void GetFromEntity (const Handle< Standard_Transient > &ent)
 adds an entity and its shared ones to the list
 
void GetFromIter (const Interface_EntityIterator &iter)
 adds a list of entities (as an iterator) as such, that is, without their shared entities (use AllShared to have them)
 
void ResetData ()
 Allows to restart on a new data set.
 
virtual void Evaluate () override
 Evaluates the result of cumulation.
 
Interface_EntityIterator Overlapped () const
 returns entities which are taken several times
 
Interface_EntityIterator Forgotten () const
 returns entities which are not taken
 
Interface_EntityIterator PerCount (const Standard_Integer count=1) const
 Returns entities taken a given count of times (0 : same as Forgotten, 1 : same as no Overlap : default)
 
Standard_Integer NbTimes (const Handle< Standard_Transient > &ent) const
 returns number of times an Entity has been counted (0 means forgotten, more than 1 means overlap, 1 is normal)
 
Standard_Integer HighestNbTimes () const
 Returns the highest number of times recorded for every Entity (0 means empty, 1 means no overlap)
 
- Public Member Functions inherited from Interface_GraphContent
 Interface_GraphContent ()
 Creates an empty GraphContent, ready to be filled.
 
 Interface_GraphContent (const Interface_Graph &agraph)
 Creates with all entities designated by a Graph.
 
 Interface_GraphContent (const Interface_Graph &agraph, const Standard_Integer stat)
 Creates with entities having specific Status value in a Graph.
 
 Interface_GraphContent (const Interface_Graph &agraph, const Handle< Standard_Transient > &ent)
 Creates an Iterator with Shared entities of an entity (equivalente to EntityIterator but with a Graph)
 
void GetFromGraph (const Interface_Graph &agraph)
 Gets all Entities designated by a Graph (once created), adds them to those already recorded.
 
void GetFromGraph (const Interface_Graph &agraph, const Standard_Integer stat)
 Gets entities from a graph which have a specific Status value (one created), adds them to those already recorded.
 
Interface_EntityIterator Result ()
 Returns Result under the exact form of an EntityIterator : Can be used when EntityIterator itself is required (as a returned value for instance), without way for a sub-class.
 
void Begin ()
 Does the Evaluation before starting the iteration itself (in out)
 
- Public Member Functions inherited from Interface_EntityIterator
 Interface_EntityIterator ()
 Defines an empty iterator (see AddList & AddItem)
 
 Interface_EntityIterator (const Handle< TColStd_HSequenceOfTransient > &list)
 Defines an iterator on a list, directly i.e. without copying it.
 
void AddList (const Handle< TColStd_HSequenceOfTransient > &list)
 Gets a list of entities and adds its to the iteration list.
 
void AddItem (const Handle< Standard_Transient > &anentity)
 Adds to the iteration list a defined entity.
 
void GetOneItem (const Handle< Standard_Transient > &anentity)
 same as AddItem (kept for compatibility)
 
void SelectType (const Handle< Standard_Type > &atype, const Standard_Boolean keep)
 Selects entities with are Kind of a given type, keep only them (is keep is True) or reject only them (if keep is False)
 
Standard_Integer NbEntities () const
 Returns count of entities which will be iterated on Calls Start if not yet done.
 
Standard_Integer NbTyped (const Handle< Standard_Type > &type) const
 Returns count of entities of a given type (kind of)
 
Interface_EntityIterator Typed (const Handle< Standard_Type > &type) const
 Returns the list of entities of a given type (kind of)
 
virtual void Start () const
 Allows re-iteration (useless for the first iteration)
 
Standard_Boolean More () const
 Says if there are other entities (vertices) to iterate the first time, calls Start.
 
void Next () const
 Sets iteration to the next entity (vertex) to give.
 
const Handle< Standard_Transient > & Value () const
 Returns the current Entity iterated, to be used by Interface tools.
 
Handle< TColStd_HSequenceOfTransient > Content () const
 Returns the content of the Iterator, accessed through a Handle to be used by a frontal-engine logic Returns an empty Sequence if the Iterator is empty Calls Start if not yet done.
 
void Destroy ()
 Clears data of iteration.
 
virtual ~Interface_EntityIterator ()
 Destructor.
 

Additional Inherited Members

- Protected Member Functions inherited from Interface_EntityIterator
void Reset ()
 Allows subclasses of EntityIterator to reevaluate an iteration.
 

Detailed Description

this class evaluates effect of cumulated sub-parts : overlapping, forgotten entities Results are kept in a Graph, several question can be set Basic Iteration gives entities which are part of Cumulation

Constructor & Destructor Documentation

◆ IFGraph_Cumulate()

IFGraph_Cumulate::IFGraph_Cumulate ( const Interface_Graph & agraph)

creates empty Cumulate, ready to work

Member Function Documentation

◆ Evaluate()

virtual void IFGraph_Cumulate::Evaluate ( )
overridevirtual

Evaluates the result of cumulation.

Reimplemented from Interface_GraphContent.

◆ Forgotten()

Interface_EntityIterator IFGraph_Cumulate::Forgotten ( ) const

returns entities which are not taken

◆ GetFromEntity()

void IFGraph_Cumulate::GetFromEntity ( const Handle< Standard_Transient > & ent)

adds an entity and its shared ones to the list

◆ GetFromIter()

void IFGraph_Cumulate::GetFromIter ( const Interface_EntityIterator & iter)

adds a list of entities (as an iterator) as such, that is, without their shared entities (use AllShared to have them)

◆ HighestNbTimes()

Standard_Integer IFGraph_Cumulate::HighestNbTimes ( ) const

Returns the highest number of times recorded for every Entity (0 means empty, 1 means no overlap)

◆ NbTimes()

Standard_Integer IFGraph_Cumulate::NbTimes ( const Handle< Standard_Transient > & ent) const

returns number of times an Entity has been counted (0 means forgotten, more than 1 means overlap, 1 is normal)

◆ Overlapped()

Interface_EntityIterator IFGraph_Cumulate::Overlapped ( ) const

returns entities which are taken several times

◆ PerCount()

Interface_EntityIterator IFGraph_Cumulate::PerCount ( const Standard_Integer count = 1) const

Returns entities taken a given count of times (0 : same as Forgotten, 1 : same as no Overlap : default)

◆ ResetData()

void IFGraph_Cumulate::ResetData ( )

Allows to restart on a new data set.


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