Exemple #1
0
 private void BuildEdgeStringsStartingAt(Node node)
 {
     for (IEnumerator i = node.OutEdges.Iterator(); i.MoveNext();)
     {
         LineMergeDirectedEdge directedEdge = (LineMergeDirectedEdge)i.Current;
         if (directedEdge.Edge.Marked)
         {
             continue;
         }
         edgeStrings.Add(BuildEdgeStringStartingWith(directedEdge));
     }
 }
Exemple #2
0
        private EdgeString BuildEdgeStringStartingWith(LineMergeDirectedEdge start)
        {
            EdgeString            edgeString = new EdgeString(factory);
            LineMergeDirectedEdge current    = start;

            do
            {
                edgeString.Add(current);
                current.Edge.Marked = true;
                current             = current.Next;
            }while (current != null && current != start);

            return(edgeString);
        }