示例#1
0
 static void Main(string[] args)
 {
     AllocConsole();
     SimulationEnvironment simulation = new SimulationEnvironment();
 }
示例#2
0
        public mainWindow(Intersection modelIntersection, SimulationEnvironment simulation)
        {
            InitializeComponent();
            this.simulation = simulation;
            this.model = modelIntersection;

            //Main Menus
            mainMenu = new MainMenu();
            this.Menu = mainMenu;

            //File Menu
            myMenuItemFile = new MenuItem("&File");
            simRunMenuItem = new MenuItem("&Run/Stop Simulation");
            saveFileMenuItem = new MenuItem("&Save File");
            openFileMenuItem = new MenuItem("&Open File");
            saveMySQLMenuItem = new MenuItem("&Save MySQL");
            openMySQLMenuItem = new MenuItem("&Open MySQL");
            exitMenuItem = new MenuItem("&Exit");
            mainMenu.MenuItems.Add(myMenuItemFile);
            myMenuItemFile.MenuItems.Add(simRunMenuItem);
            myMenuItemFile.MenuItems.Add(saveFileMenuItem);
            myMenuItemFile.MenuItems.Add(openFileMenuItem);
            myMenuItemFile.MenuItems.Add(saveMySQLMenuItem);
            myMenuItemFile.MenuItems.Add(openMySQLMenuItem);
            myMenuItemFile.MenuItems.Add(exitMenuItem);

            //Settings Menu
            myMenuItemSettings = new MenuItem("&Settings");
            setHLanesMenuItem = new MenuItem("&Set No. Horizontal Lanes");
            setVLanesMenuItem = new MenuItem("&Set No. Vertical Lanes");
            setHProbMenuItem = new MenuItem("&Set Horizontal Lane Car Regularity");
            setVProbMenuItem = new MenuItem("&Set Vertical Lane Car Regularity");
            setHSpeedMenuItem = new MenuItem("&Set Road Speed Horizontal");
            setVSpeedMenuItem = new MenuItem("&Set Road Speed Vertical");
            setTurnRightMenuItem = new MenuItem("&Set Turning Probability Right");
            setTurnLeftMenuItem = new MenuItem("&Set Turning Probability Left");
            setBreakdownMenuItem = new MenuItem("&Set Breakdown Probability");
            setLightCycleMenuItem = new MenuItem("&Set Light Cycle Times");
            setRHD = new MenuItem("&Set RHD");
            setLHD = new MenuItem("&Set LHD");
            mainMenu.MenuItems.Add(myMenuItemSettings);
            myMenuItemSettings.MenuItems.Add(setRHD);
            myMenuItemSettings.MenuItems.Add(setLHD);
            myMenuItemSettings.MenuItems.Add(setHLanesMenuItem);
            myMenuItemSettings.MenuItems.Add(setVLanesMenuItem);
            myMenuItemSettings.MenuItems.Add(setHProbMenuItem);
            myMenuItemSettings.MenuItems.Add(setVProbMenuItem);
            myMenuItemSettings.MenuItems.Add(setVSpeedMenuItem);
            myMenuItemSettings.MenuItems.Add(setHSpeedMenuItem);
            myMenuItemSettings.MenuItems.Add(setTurnRightMenuItem);
            myMenuItemSettings.MenuItems.Add(setTurnLeftMenuItem);
            myMenuItemSettings.MenuItems.Add(setBreakdownMenuItem);
            myMenuItemSettings.MenuItems.Add(setLightCycleMenuItem);
            setLHD.Visible = false;
            //Control Buttons
            runSimulationButton = new Button();
            runSimulationButton.Text = "Run";
            runSimulationButton.BackColor = Color.White;
            stopSimulationButton = new Button();
            stopSimulationButton.Text = "Pause";
            stopSimulationButton.BackColor = Color.White;
            resetSimulationButton = new Button();
            resetSimulationButton.Text = "Reset";
            resetSimulationButton.BackColor = Color.White;

            runSimulationButton.Location = new Point(200, 530);
            stopSimulationButton.Location = new Point(200, 530);
            resetSimulationButton.Location = new Point(450, 530);
            stopSimulationButton.Hide();
            resetSimulationButton.Hide();

            Controls.Add(runSimulationButton);
            Controls.Add(stopSimulationButton);
            Controls.Add(resetSimulationButton);

            //Event Handlers
            saveFileMenuItem.Click += new System.EventHandler(OnClickSave);
            openFileMenuItem.Click += new System.EventHandler(OnClickOpen);
            saveMySQLMenuItem.Click += new System.EventHandler(OnClickSaveDB);
            openMySQLMenuItem.Click += new System.EventHandler(OnClickOpenDB);
            setRHD.Click +=new EventHandler(OnClickSetRHD);
            setLHD.Click +=new EventHandler(OnClickSetLHD);
            exitMenuItem.Click += new System.EventHandler(OnClickExit);
            setHLanesMenuItem.Click += new System.EventHandler(OnClickHLanes);
            setVLanesMenuItem.Click += new System.EventHandler(OnClickVLanes);
            simRunMenuItem.Click += new System.EventHandler(simulationToggle);
            runSimulationButton.Click += new System.EventHandler(simulationToggle);
            stopSimulationButton.Click += new System.EventHandler(simulationToggle);
            resetSimulationButton.Click += new EventHandler(resetSimulation);
            setHProbMenuItem.Click += new EventHandler(settingsHProbListener);
            setVProbMenuItem.Click += new EventHandler(settingsVProbListener);
            setHSpeedMenuItem.Click += new EventHandler(setHSpeedMenuItem_Click);
            setVSpeedMenuItem.Click += new EventHandler(setVSpeedMenuItem_Click);
            setTurnRightMenuItem.Click += new EventHandler(setTurnRightMenuItem_Click);
            setTurnLeftMenuItem.Click += new EventHandler(setTurnLeftMenuItem_Click);
            setBreakdownMenuItem.Click += new EventHandler(setBreakdownMenuItem_Click);
            setLightCycleMenuItem.Click += new EventHandler(setLightCycleMenuItem_Click);
        }
示例#3
0
 public multiLightCycle(SimulationEnvironment simulation, mainWindow window)
 {
     this.simulation = simulation;
     this.window = window;
     run();
 }
示例#4
0
 public void refreshSimulationReference(Intersection modelIntersection, SimulationEnvironment sim)
 {
     this.simulation = sim;
     this.model = modelIntersection;
 }