public void AddDrivingPath(DrivingPath newDrivingPath)
        {
            int startRoadID = newDrivingPath.GetStartRoadID();

            if (!DrivingPathList.ContainsKey(startRoadID))
            {
                Dictionary<string, DrivingPath> temp = new Dictionary<string, DrivingPath>();
                DrivingPathList.Add(startRoadID, temp);
            }

            if (DrivingPathList[startRoadID].ContainsKey(newDrivingPath.GetName()))
            {
                int currentPro = DrivingPathList[startRoadID][newDrivingPath.GetName()].GetProbability();
                DrivingPathList[startRoadID][newDrivingPath.GetName()].SetProbability(currentPro + newDrivingPath.GetProbability());
            }
            else
            {
                DrivingPathList[startRoadID].Add(newDrivingPath.GetName(), newDrivingPath);
            }

            GenerateDrivingPathTable(startRoadID);

            if (Simulator.TESTMODE)
                Simulator.UI.AddMessage("System", "Add driving path to road " + startRoadID);
        }
        public void DrivingPathEditorInitial()
        {
            newDrivingPath = new DrivingPath();
            newDrivingPath.SetStartRoadID(selectedGenerateRoad.roadID);
            this.textBox_drivingPath.Text = selectedGenerateRoad.roadID+"";
            DrivingPathEditorLoadNextRoad(selectedGenerateRoad.roadID);

            this.button_nextRoad.Enabled = true;
            this.button_addDrivingPath.Enabled = false;
        }
 public void CreateVehicle(Road startRoad, int Weight,DrivingPath dp)
 {
     CreateVehicle(startRoad,Weight).SetDrivingPath(dp);
 }
Пример #4
0
        public void SetDrivingPath(DrivingPath drivingPath)
        {
            this.drivingPath = drivingPath;
            passingRoads.Clear();

            AddPassingRoad(drivingPath.GetStartRoadID());

            foreach (int passingRoadID in drivingPath.GetPassingRoads())
            {
                AddPassingRoad(passingRoadID);
            }

            AddPassingRoad(drivingPath.GetGoalRoadID());
        }