Open CASCADE Technology  6.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions
IFGraph_Compare Class Reference

this class evaluates effect of two compared sub-parts :
cumulation (union), common part (intersection-overlapping)
part specific to first sub-part or to the second one
Results are kept in a Graph, several question can be set
Basic Iteration gives Cumulation (union)
More...

#include <IFGraph_Compare.hxx>

Inheritance diagram for IFGraph_Compare:
Inheritance graph
[legend]

Public Member Functions

 IFGraph_Compare (const Interface_Graph &agraph)
 creates empty Compare, ready to work
More...
 
void GetFromEntity (const Handle< Standard_Transient > &ent, const Standard_Boolean first)
 adds an entity and its shared ones to the list :
first True means adds to the first sub-list, else to the 2nd
More...
 
void GetFromIter (const Interface_EntityIterator &iter, const Standard_Boolean first)
 adds a list of entities (as an iterator) as such, that is,
their shared entities are not considered (use AllShared to
have them)
first True means adds to the first sub-list, else to the 2nd
More...
 
void Merge ()
 merges the second list into the first one, hence the second
list is empty
More...
 
void RemoveSecond ()
 Removes the contents of second list
More...
 
void KeepCommon ()
 Keeps only Common part, sets it as First list and clears
second list
More...
 
void ResetData ()
 Allows to restart on a new data set
More...
 
virtual void Evaluate ()
 Recomputes result of comparing to sub-parts
More...
 
Interface_EntityIterator Common () const
 returns entities common to the both parts
More...
 
Interface_EntityIterator FirstOnly () const
 returns entities which are exclusively in the first list
More...
 
Interface_EntityIterator SecondOnly () const
 returns entities which are exclusively in the second part
More...
 
- Public Member Functions inherited from Interface_GraphContent
 Interface_GraphContent ()
 Creates an empty GraphContent, ready to be filled
More...
 
 Interface_GraphContent (const Interface_Graph &agraph)
 Creates with all entities designated by a Graph
More...
 
 Interface_GraphContent (const Interface_Graph &agraph, const Standard_Integer stat)
 Creates with entities having specific Status value in a Graph
More...
 
 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)
More...
 
void GetFromGraph (const Interface_Graph &agraph)
 Gets all Entities designated by a Graph (once created), adds
them to those already recorded
More...
 
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
More...
 
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), whitout way for a sub-class
More...
 
void Begin ()
 Does the Evaluation before starting the iteration itself
(in out)
More...
 
- Public Member Functions inherited from Interface_EntityIterator
 Interface_EntityIterator ()
 Defines an empty iterator (see AddList & AddItem)
More...
 
 Interface_EntityIterator (const Handle< TColStd_HSequenceOfTransient > &list)
 Defines an iterator on a list, directly i.e. without copying it
More...
 
void AddList (const Handle< TColStd_HSequenceOfTransient > &list)
 Gets a list of entities and adds its to the iteration list
More...
 
void AddItem (const Handle< Standard_Transient > &anentity)
 Adds to the iteration list a defined entity
More...
 
void GetOneItem (const Handle< Standard_Transient > &anentity)
 same as AddItem (kept for compatibility)
More...
 
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)
More...
 
Standard_Integer NbEntities () const
 Returns count of entities which will be iterated on
Calls Start if not yet done
More...
 
Standard_Integer NbTyped (const Handle< Standard_Type > &type) const
 Returns count of entities of a given type (kind of)
More...
 
Interface_EntityIterator Typed (const Handle< Standard_Type > &type) const
 Returns the list of entities of a given type (kind of)
More...
 
virtual void Start () const
 Allows re-iteration (useless for the first iteration)
More...
 
Standard_Boolean More () const
 Says if there are other entities (vertices) to iterate
the first time, calls Start
More...
 
void Next () const
 Sets iteration to the next entity (vertex) to give
More...
 
const Handle_Standard_Transient & Value () const
 Returns the current Entity iterated, to be used by Interface
tools or by GraphTools (where Entity is a Vertex)
More...
 
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
More...
 
virtual void Destroy ()
 Clears data of iteration
More...
 
virtual ~Interface_EntityIterator ()
 

Additional Inherited Members

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

Detailed Description

this class evaluates effect of two compared sub-parts :
cumulation (union), common part (intersection-overlapping)
part specific to first sub-part or to the second one
Results are kept in a Graph, several question can be set
Basic Iteration gives Cumulation (union)

Constructor & Destructor Documentation

IFGraph_Compare::IFGraph_Compare ( const Interface_Graph agraph)

creates empty Compare, ready to work

Member Function Documentation

Interface_EntityIterator IFGraph_Compare::Common ( ) const

returns entities common to the both parts

virtual void IFGraph_Compare::Evaluate ( )
virtual

Recomputes result of comparing to sub-parts

Reimplemented from Interface_GraphContent.

Interface_EntityIterator IFGraph_Compare::FirstOnly ( ) const

returns entities which are exclusively in the first list

void IFGraph_Compare::GetFromEntity ( const Handle< Standard_Transient > &  ent,
const Standard_Boolean  first 
)

adds an entity and its shared ones to the list :
first True means adds to the first sub-list, else to the 2nd

void IFGraph_Compare::GetFromIter ( const Interface_EntityIterator iter,
const Standard_Boolean  first 
)

adds a list of entities (as an iterator) as such, that is,
their shared entities are not considered (use AllShared to
have them)
first True means adds to the first sub-list, else to the 2nd

void IFGraph_Compare::KeepCommon ( )

Keeps only Common part, sets it as First list and clears
second list

void IFGraph_Compare::Merge ( )

merges the second list into the first one, hence the second
list is empty

void IFGraph_Compare::RemoveSecond ( )

Removes the contents of second list

void IFGraph_Compare::ResetData ( )

Allows to restart on a new data set

Interface_EntityIterator IFGraph_Compare::SecondOnly ( ) const

returns entities which are exclusively in the second part


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