Canguro.Commands.Model.SelectLineCmd.visit C# (CSharp) Method

visit() private static method

private static visit ( List graph, int jid, Stack stack, LineElement line ) : void
graph List
jid int
stack Stack
line Canguro.Model.LineElement
return void
        private static void visit(List<LinkedList<LineElement>> graph, int jid, Stack<LineElement> stack, LineElement line)
        {
            LineElement minLine = null;
            float min = (float)Math.Cos(minAngle);
            if (graph[jid] != null)
            {
                foreach (LineElement adj in graph[jid])
                {
                    if (adj != null && adj != line)
                    {
                        float ang = cosAngle(line, adj);
                        if (ang > min)
                        {
                            min = ang;
                            minLine = adj;
                        }
                    }
                }
                if (minLine != null)
                    stack.Push(minLine);
            }
        }