Open CASCADE Technology
7.6.0
|
MiniPath computes a path to link all the lines in a set of lines. The path is described as a set of connexions. More...
#include <MAT2d_MiniPath.hxx>
Public Member Functions | |
MAT2d_MiniPath () | |
void | Perform (const MAT2d_SequenceOfSequenceOfGeometry &Figure, const Standard_Integer IndStart, const Standard_Boolean Sense) |
Computes the path to link the lines in <Figure>. the path starts on the line of index <IndStart> <Sense> = True if the Circuit turns in the trigonometric sense. More... | |
void | RunOnConnexions () |
Run on the set of connexions to compute the path. the path is an exploration of the tree which contains the connexions and their reverses. if the tree of connexions is A / | B E / | | C D F. More... | |
const MAT2d_SequenceOfConnexion & | Path () const |
Returns the sequence of connexions corresponding to the path. More... | |
Standard_Boolean | IsConnexionsFrom (const Standard_Integer Index) const |
Returns <True> if there is one Connexion which starts on line designed by <Index>. More... | |
MAT2d_SequenceOfConnexion & | ConnexionsFrom (const Standard_Integer Index) |
Returns the connexions which start on line designed by <Index>. More... | |
Standard_Boolean | IsRoot (const Standard_Integer Index) const |
Returns <True> if the line designed by <Index> is the root. More... | |
Handle< MAT2d_Connexion > | Father (const Standard_Integer Index) |
Returns the connexion which ends on line designed by <Index>. More... | |
MiniPath computes a path to link all the lines in a set of lines. The path is described as a set of connexions.
The set of connexions can be seen as an arbitrary Tree. The node of the tree are the lines. The arcs of the tree are the connexions. The ancestror of a line is the connexion which ends on it. The children of a line are the connexions which start on it.
The children of a line are ordered by the relation <IsAfter> defined on the connexions. (See MAT2s_Connexion.cdl).
MAT2d_MiniPath::MAT2d_MiniPath | ( | ) |
MAT2d_SequenceOfConnexion& MAT2d_MiniPath::ConnexionsFrom | ( | const Standard_Integer | Index | ) |
Returns the connexions which start on line designed by <Index>.
Handle< MAT2d_Connexion > MAT2d_MiniPath::Father | ( | const Standard_Integer | Index | ) |
Returns the connexion which ends on line designed by <Index>.
Standard_Boolean MAT2d_MiniPath::IsConnexionsFrom | ( | const Standard_Integer | Index | ) | const |
Returns <True> if there is one Connexion which starts on line designed by <Index>.
Standard_Boolean MAT2d_MiniPath::IsRoot | ( | const Standard_Integer | Index | ) | const |
Returns <True> if the line designed by <Index> is the root.
const MAT2d_SequenceOfConnexion& MAT2d_MiniPath::Path | ( | ) | const |
Returns the sequence of connexions corresponding to the path.
void MAT2d_MiniPath::Perform | ( | const MAT2d_SequenceOfSequenceOfGeometry & | Figure, |
const Standard_Integer | IndStart, | ||
const Standard_Boolean | Sense | ||
) |
Computes the path to link the lines in <Figure>. the path starts on the line of index <IndStart> <Sense> = True if the Circuit turns in the trigonometric sense.
void MAT2d_MiniPath::RunOnConnexions | ( | ) |
Run on the set of connexions to compute the path. the path is an exploration of the tree which contains the connexions and their reverses. if the tree of connexions is A / | B E / | | C D F.
the path is A->B, B->C, C->B, B->D, D->B, B->A, A->E, E->F, F->E, E->A.