示例#1
0
        static void Drawer()
        {
            Ping      ping      = new Ping();
            PingReply pingReply = ping.Send(address);

            DrawPingData pingData = DrawPing(
                pingReply.RoundtripTime,
                ScopeSize_leftWidth + 1,
                0,
                ScopeSize_graphWidth,
                ScopeSize_graphHeight
                );

            FillLeftScope(pingData);
            FillBottomScope(pingReply, pingData);
        }
示例#2
0
        static void FillLeftScope(DrawPingData pingData)
        {
            float jumps = ScopeSize_graphHeight / 5;

            int [] labels = new int[(int)jumps];

            for (int i = 0; i < jumps; ++i)
            {
                labels[i] = (int)(pingData.HighestCellValue * (jumps - i) / jumps);
            }

            for (int i = 0; i < jumps; ++i)
            {
                Console.CursorLeft = 0;
                Console.CursorTop  = (int)(ScopeSize_graphHeight * i / jumps);
                Console.Write("" + labels[i]);
            }
        }
示例#3
0
        static void FillBottomScope(PingReply pingReply, DrawPingData pingData)
        {
            long sum = 0;

            Jumps.ForEach(j => sum += j);

            string str = "Adres: " + Untrim(address, 8)
                         + "   Ping: " + Untrim(pingReply.RoundtripTime, 8)
                         + "   Najwyższy: " + Untrim(pingData.HighestJump, 8)
                         // + "   Mnożnik: " + Untrim( pingData.Multiplier, 8 )
                         // + "   Graf H: " + Untrim( scopeSize_graphHeight - 2, 8 )
                         + "   Średni (" + ((int)(Jumps.Count / 60)) + "m): " + Untrim(sum / Jumps.Count, 8)
            ;

            Console.CursorLeft      = 0;
            Console.CursorTop       = Console.WindowHeight - 1;
            Console.ForegroundColor = ConsoleColor.White;
            Console.Write(Untrim(str, Console.WindowWidth - 1));
        }