OCC Main Page | ModelingAlgorithms | Toolkits | Packages | Class Hierarchy | Data Structures | File List | Data Fields | Globals

ModelingAlgorithms
TKTopAlgo
MAT


MAT_Graph Class Reference

The Class Graph permits the exploration of the
Bisector Locus.
.

#include <MAT_Graph.hxx>


Public Member Functions

Standard_EXPORT MAT_Graph ()
 Empty constructor.
.
Standard_EXPORT void Perform (const Standard_Boolean SemiInfinite, const Handle(MAT_ListOfBisector)&TheRoots, const Standard_Integer NbBasicElts, const Standard_Integer NbArcs)
 Construct <me> from the result of the method
<createmat> of the class <mat> from <mat>.

<semiinfinite> : if some bisector are infinites.
<theroots> : Set of the bisectors.
<nbbasicelts> : Number of Basic Elements.
<nbarcs> : Number of Arcs = Number of Bisectors.
.
Standard_EXPORT Handle_MAT_Arc Arc (const Standard_Integer Index) const
 Return the Arc of index <index> in <thearcs>.
.
Standard_EXPORT Handle_MAT_BasicElt BasicElt (const Standard_Integer Index) const
 Return the BasicElt of index <index> in <thebasicelts>.
.
Standard_EXPORT Handle_MAT_Node Node (const Standard_Integer Index) const
 Return the Node of index <index> in <thenodes>.
.
Standard_EXPORT Standard_Integer NumberOfArcs () const
 Return the number of arcs of <me>.
.
Standard_EXPORT Standard_Integer NumberOfNodes () const
 Return the number of nodes of <me>.
.
Standard_EXPORT Standard_Integer NumberOfBasicElts () const
 Return the number of basic elements of <me>.
.
Standard_EXPORT Standard_Integer NumberOfInfiniteNodes () const
 Return the number of infinites nodes of <me>.
.
Standard_EXPORT void FusionOfBasicElts (const Standard_Integer IndexElt1, const Standard_Integer IndexElt2, Standard_Boolean &MergeArc1, Standard_Integer &GeomIndexArc1, Standard_Integer &GeomIndexArc2, Standard_Boolean &MergeArc2, Standard_Integer &GeomIndexArc3, Standard_Integer &GeomIndexArc4)
 Merge two BasicElts. The End of the BasicElt Elt1
of IndexElt1 becomes The End of the BasicElt Elt2
of IndexElt2. Elt2 is replaced in the arcs by
Elt1, Elt2 is eliminated.

<mergearc1> is True if the fusion of the BasicElts =>
a fusion of two Arcs which separated the same elements.
In this case <geomindexarc1> and <geomindexarc2> are the
Geometric Index of this arcs.

If the BasicElt corresponds to a close line ,
the StartArc and the EndArc of Elt1 can separate the same
elements .
In this case there is a fusion of this arcs, <mergearc2>
is true and <geomindexarc3> and <geomindexarc4> are the
Geometric Index of this arcs.
.
Standard_EXPORT void CompactArcs ()
Standard_EXPORT void CompactNodes ()
Standard_EXPORT void ChangeBasicElts (const MAT_DataMapOfIntegerBasicElt &NewMap)
Standard_EXPORT Handle_MAT_BasicElt ChangeBasicElt (const Standard_Integer Index)
Standard_EXPORT const Handle (Standard_Type)&DynamicType() const

Private Member Functions

Standard_EXPORT void FusionOfArcs (const Handle(MAT_Arc)&Arc1, const Handle(MAT_Arc)&Arc2)
 Merge two Arcs. the second node of <arc2> becomes
the first node of <arc1>. Update of the first
node and the neighbours of <arc1>.
<arc2> is eliminated.
.
Standard_EXPORT void UpDateNodes (Standard_Integer &Index)

Private Attributes

MAT_DataMapOfIntegerArc theArcs
MAT_DataMapOfIntegerBasicElt theBasicElts
MAT_DataMapOfIntegerNode theNodes
Standard_Integer numberOfArcs
Standard_Integer numberOfNodes
Standard_Integer numberOfBasicElts
Standard_Integer numberOfInfiniteNodes


Constructor & Destructor Documentation

Standard_EXPORT MAT_Graph::MAT_Graph  ) 
 


Member Function Documentation

Standard_EXPORT Handle_MAT_Arc MAT_Graph::Arc const Standard_Integer  Index  )  const
 

Standard_EXPORT Handle_MAT_BasicElt MAT_Graph::BasicElt const Standard_Integer  Index  )  const
 

Standard_EXPORT Handle_MAT_BasicElt MAT_Graph::ChangeBasicElt const Standard_Integer  Index  ) 
 

Standard_EXPORT void MAT_Graph::ChangeBasicElts const MAT_DataMapOfIntegerBasicElt NewMap  ) 
 

Standard_EXPORT void MAT_Graph::CompactArcs  ) 
 

Standard_EXPORT void MAT_Graph::CompactNodes  ) 
 

Standard_EXPORT void MAT_Graph::FusionOfArcs const Handle(MAT_Arc)&  Arc1,
const Handle(MAT_Arc)&  Arc2
[private]
 

Standard_EXPORT void MAT_Graph::FusionOfBasicElts const Standard_Integer  IndexElt1,
const Standard_Integer  IndexElt2,
Standard_Boolean MergeArc1,
Standard_Integer &  GeomIndexArc1,
Standard_Integer &  GeomIndexArc2,
Standard_Boolean MergeArc2,
Standard_Integer &  GeomIndexArc3,
Standard_Integer &  GeomIndexArc4
 

Standard_EXPORT const MAT_Graph::Handle Standard_Type   )  const
 

Standard_EXPORT Handle_MAT_Node MAT_Graph::Node const Standard_Integer  Index  )  const
 

Standard_EXPORT Standard_Integer MAT_Graph::NumberOfArcs  )  const
 

Standard_EXPORT Standard_Integer MAT_Graph::NumberOfBasicElts  )  const
 

Standard_EXPORT Standard_Integer MAT_Graph::NumberOfInfiniteNodes  )  const
 

Standard_EXPORT Standard_Integer MAT_Graph::NumberOfNodes  )  const
 

Standard_EXPORT void MAT_Graph::Perform const Standard_Boolean  SemiInfinite,
const Handle(MAT_ListOfBisector)&  TheRoots,
const Standard_Integer  NbBasicElts,
const Standard_Integer  NbArcs
 

Standard_EXPORT void MAT_Graph::UpDateNodes Standard_Integer &  Index  )  [private]
 


Field Documentation

Standard_Integer MAT_Graph::numberOfArcs [private]
 

Standard_Integer MAT_Graph::numberOfBasicElts [private]
 

Standard_Integer MAT_Graph::numberOfInfiniteNodes [private]
 

Standard_Integer MAT_Graph::numberOfNodes [private]
 

MAT_DataMapOfIntegerArc MAT_Graph::theArcs [private]
 

MAT_DataMapOfIntegerBasicElt MAT_Graph::theBasicElts [private]
 

MAT_DataMapOfIntegerNode MAT_Graph::theNodes [private]
 


The documentation for this class was generated from the following file:
Generated on Mon Aug 25 13:42:28 2008 for OpenCASCADE by  doxygen 1.4.1