⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 nsg.java

📁 用JAVA做的一个NSG仿真程序,可以在一个工作空间里面画一个虚拟的网络环境,然后根据环境生成TCL代码
💻 JAVA
📖 第 1 页 / 共 5 页
字号:
        jpanel1.add(ftp_stop);
        jpanel1.add(new JPanel());
        jpanel1.add(new JPanel());
        jpanel1.add(new JPanel());
        jpanel1.add(new JPanel());
        jpanel1.add(new JPanel());
        jpanel1.add(new JPanel());
        linkPane.addTab("ftp", jpanel1);
        jpanel1 = new JPanel();
        jpanel1.setLayout(new GridLayout(5, 2));
        jlabel = new JLabel("start time", 4);
        jlabel.setFont(systemFont);
        jpanel1.add(jlabel);
        jpanel1.add(cbr_start);
        jlabel = new JLabel("stop time", 4);
        jlabel.setFont(systemFont);
        jpanel1.add(jlabel);
        jpanel1.add(cbr_stop);
        jlabel = new JLabel("frame size", 4);
        jlabel.setFont(systemFont);
        jpanel1.add(jlabel);
        jpanel1.add(cbr_frame_size);
        jlabel = new JLabel("data rate", 4);
        jlabel.setFont(systemFont);
        jpanel1.add(jlabel);
        jpanel1.add(cbr_rate);
        cbr_rate.setMaximumRowCount(10);
        cbr_rate.setSelectedIndex(7);
        cbr_rate.setFont(systemFont);
        jpanel1.add(new JPanel());
        jpanel1.add(new JPanel());
        linkPane.addTab("cbr", jpanel1);
        jpanel1 = new JPanel();
        jpanel1.setLayout(new GridLayout(5, 2));
        jlabel = new JLabel("time", 4);
        jlabel.setFont(systemFont);
        jpanel1.add(jlabel);
        jpanel1.add(ping_start);
        jpanel1.add(new JPanel());
        jpanel1.add(new JPanel());
        jpanel1.add(new JPanel());
        jpanel1.add(new JPanel());
        jpanel1.add(new JPanel());
        jpanel1.add(new JPanel());
        jpanel1.add(new JPanel());
        jpanel1.add(new JPanel());
        linkPane.addTab("ping", jpanel1);
        nodePane = new JTabbedPane(2);
        nodePane.setBorder(BorderFactory.createTitledBorder("Node generate"));
        nodePane.setFont(systemFont);
        jpanel1 = new JPanel();
        nodePane.addTab("normal", jpanel1);
        jpanel1 = new JPanel();
        jpanel1.setLayout(new GridLayout(5, 2));
        jlabel = new JLabel("hops", 4);
        jlabel.setFont(systemFont);
        jpanel1.add(jlabel);
        jpanel1.add(h_chain_hops);
        jlabel = new JLabel("dist.", 4);
        jlabel.setFont(systemFont);
        jpanel1.add(jlabel);
        jpanel1.add(h_chain_dist);
        jpanel1.add(new JPanel());
        jpanel1.add(new JPanel());
        jpanel1.add(new JPanel());
        jpanel1.add(new JPanel());
        jpanel1.add(new JPanel());
        jpanel1.add(new JPanel());
        nodePane.addTab("h_chain", jpanel1);
        jpanel1 = new JPanel();
        jpanel1.setLayout(new GridLayout(5, 2));
        jlabel = new JLabel("hops", 4);
        jlabel.setFont(systemFont);
        jpanel1.add(jlabel);
        jpanel1.add(v_chain_hops);
        jlabel = new JLabel("dist.", 4);
        jlabel.setFont(systemFont);
        jpanel1.add(jlabel);
        jpanel1.add(v_chain_dist);
        jpanel1.add(new JPanel());
        jpanel1.add(new JPanel());
        jpanel1.add(new JPanel());
        jpanel1.add(new JPanel());
        jpanel1.add(new JPanel());
        jpanel1.add(new JPanel());
        nodePane.addTab("v_chain", jpanel1);
        jpanel1 = new JPanel();
        jpanel1.setLayout(new GridLayout(5, 2));
        jlabel = new JLabel("col.", 4);
        jlabel.setFont(systemFont);
        jpanel1.add(jlabel);
        jpanel1.add(grid_row);
        jlabel = new JLabel("rows", 4);
        jlabel.setFont(systemFont);
        jpanel1.add(jlabel);
        jpanel1.add(grid_column);
        jlabel = new JLabel("dist.", 4);
        jlabel.setFont(systemFont);
        jpanel1.add(jlabel);
        jpanel1.add(grid_dist);
        jpanel1.add(new JPanel());
        jpanel1.add(new JPanel());
        jpanel1.add(new JPanel());
        jpanel1.add(new JPanel());
        nodePane.addTab("grid", jpanel1);
        jpanel1 = new JPanel();
        jpanel1.setLayout(new GridLayout(5, 2));
        jlabel = new JLabel("width", 4);
        jlabel.setFont(systemFont);
        jpanel1.add(jlabel);
        jpanel1.add(random_width);
        jlabel = new JLabel("height", 4);
        jlabel.setFont(systemFont);
        jpanel1.add(jlabel);
        jpanel1.add(random_height);
        jlabel = new JLabel("nodes", 4);
        jlabel.setFont(systemFont);
        jpanel1.add(jlabel);
        jpanel1.add(random_number);
        jpanel1.add(new JPanel());
        jpanel1.add(new JPanel());
        jpanel1.add(new JPanel());
        jpanel1.add(new JPanel());
        nodePane.addTab("random", jpanel1);
        JTabbedPane jtabbedpane = new JTabbedPane(2);
        jtabbedpane.setBorder(BorderFactory.createTitledBorder("Connection generate"));
        jtabbedpane.setFont(systemFont);
        jpanel1 = new JPanel();
        jpanel1.setLayout(new GridLayout(3, 2));
        jlabel = new JLabel("source", 4);
        jlabel.setFont(systemFont);
        jpanel1.add(jlabel);
        jpanel1.add(normal_source);
        jlabel = new JLabel("dest.", 4);
        jlabel.setFont(systemFont);
        jpanel1.add(jlabel);
        jpanel1.add(normal_dest);
        jpanel1.add(new JPanel());
        JButton jbutton = new JButton("Go");
        jbutton.setFont(systemFont);
        jbutton.addActionListener(new ActionListener() {

            final NSG this$0;

            public void actionPerformed(ActionEvent actionevent)
            {
                int i = Integer.parseInt((String)normal_source.getSelectedItem());
                int j = Integer.parseInt((String)normal_dest.getSelectedItem());
                Node node = getNode(i);
                Node node1 = getNode(j);
                addConnection(node, node1);
            }

            
            {
                this$0 = NSG.this;
                //super();
            }
        });
        jpanel1.add(jbutton);
        jtabbedpane.addTab("normal", jpanel1);
        jpanel1 = new JPanel();
        jpanel1.setLayout(new GridLayout(3, 2));
        jbutton = new JButton("Go");
        jbutton.setFont(systemFont);
        jbutton.addActionListener(new ActionListener() {

            final NSG this$0;

            public void actionPerformed(ActionEvent actionevent)
            {
                for(Iterator iterator = nodes.iterator(); iterator.hasNext();)
                {
                    Node node = (Node)(Node)iterator.next();
                    for(Iterator iterator1 = nodes.iterator(); iterator1.hasNext();)
                    {
                        Node node1 = (Node)(Node)iterator1.next();
                        if(node.getId() != node1.getId())
                            addConnection(node, node1);
                    }

                }

            }

            
            {
                this$0 = NSG.this;
                //super();
            }
        });
        jpanel1.add(jbutton);
        jtabbedpane.addTab("fully", jpanel1);
        jpanel1 = new JPanel();
        jpanel1.setLayout(new GridLayout(3, 2));
        jbutton = new JButton("Go");
        jbutton.setFont(systemFont);
        jbutton.addActionListener(new ActionListener() {

            final NSG this$0;

            public void actionPerformed(ActionEvent actionevent)
            {
                for(Iterator iterator = nodes.iterator(); iterator.hasNext();)
                {
                    Node node = (Node)(Node)iterator.next();
                    for(Iterator iterator1 = nodes.iterator(); iterator1.hasNext();)
                    {
                        Node node1 = (Node)(Node)iterator1.next();
                        if(node.getId() != node1.getId() && Tools.distance(node, node1) < 250D)
                            addConnection(node, node1);
                    }

                }

            }

            
            {
                this$0 = NSG.this;
                //super();
            }
        });
        jpanel1.add(jbutton);
        jtabbedpane.addTab("intel.", jpanel1);
        jpanel1 = new JPanel();
        jpanel1.setLayout(new GridLayout(3, 2));
        jbutton = new JButton("one");
        jbutton.setFont(systemFont);
        jbutton.addActionListener(new ActionListener() {

            final NSG this$0;

            public void actionPerformed(ActionEvent actionevent)
            {
                if(nodes.size() <= 2)
                {
                    return;
                } else
                {
                    int i = (int)(Math.random() * (double)nodes.size());
                    int j = (int)(Math.random() * (double)nodes.size());
                    Node node = getNode(i);
                    Node node1 = getNode(j);
                    addConnection(node, node1);
                    return;
                }
            }

            
            {
                this$0 = NSG.this;
                //super();
            }
        });
        jpanel1.add(jbutton);
        jpanel1.add(new JPanel());
        jbutton = new JButton("five");
        jbutton.setFont(systemFont);
        jbutton.addActionListener(new ActionListener() {

            final NSG this$0;

            public void actionPerformed(ActionEvent actionevent)
            {
                if(nodes.size() <= 2)
                    return;
                for(int i = 0; i < 5; i++)
                {
                    int j = (int)(Math.random() * (double)nodes.size());
                    int k = (int)(Math.random() * (double)nodes.size());
                    Node node = getNode(j);
                    Node node1 = getNode(k);
                    addConnection(node, node1);
                }

            }

            
            {
                this$0 = NSG.this;
                //super();
            }
        });
        jpanel1.add(jbutton);
        jpanel1.add(new JPanel());
        jbutton = new JButton("ten");
        jbutton.setFont(systemFont);
        jbutton.addActionListener(new ActionListener() {

            final NSG this$0;

            public void actionPerformed(ActionEvent actionevent)
            {
                if(nodes.size() <= 2)
                    return;
                for(int i = 0; i < 10; i++)
                {
                    int j = (int)(Math.random() * (double)nodes.size());
                    int k = (int)(Math.random() * (double)nodes.size());
                    Node node = getNode(j);
                    Node node1 = getNode(k);
                    addConnection(node, node1);
                }

            }

            
            {
                this$0 = NSG.this;
                //super();
            }
        });
        jpanel1.add(jbutton);
        jpanel1.add(new JPanel());
        jtabbedpane.addTab("random", jpanel1);
        JPanel jpanel2 = new JPanel();
        jpanel2.setLayout(new BoxLayout(jpanel2, 1));
        jpanel.setAlignmentX(0.0F);
        jpanel2.add(jpanel);
        linkPane.setAlignmentX(0.0F);
        jpanel2.add(linkPane);
        nodePane.setAlignmentX(0.0F);
        jpanel2.add(nodePane);
        jtabbedpane.setAlignmentX(0.0F);
        jpanel2.add(jtabbedpane);
        JPanel jpanel3 = new JPanel();
        jpanel3.add(jpanel2);
        getContentPane().add(jpanel3, "East");
    }

    private Node getNode(int i)
    {
        for(Iterator iterator = nodes.iterator(); iterator.hasNext();)
        {
            Node node = (Node)(Node)iterator.next();
            if(node.getId() == i)
                return node;
        }

        return null;
    }

    private void init()
    {
        nodes = new Vector();
        links = new Vector();
        src = null;
        dst = null;
        sequence = 0;
        envWidth = 1000;
        envHeight = 1000;
        env.setNodes(nodes);
        env.setLinks(links);
        normal_source.removeAllItems();
        normal_dest.removeAllItems();
        cbr_no.setText("0");
        ftp_no.setText("0");

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -