Commit 1fe3e8a8735803bb16d3e5dbe54368785e8ff305
1 parent
6312cbd862
Exists in
master
RM2063 : Update source
Showing 9 changed files with 29 additions and 17 deletions Side-by-side Diff
- sources/RoboforkApp/Controls/DesignerCanvas.cs
- sources/RoboforkApp/Controls/ScheduleCanvas.cs
- sources/RoboforkApp/DataModel/ListNodeInfo.cs
- sources/RoboforkApp/DataModel/NodeInfo_tmp.cs
- sources/RoboforkApp/DataModel/Node_tmp.cs
- sources/RoboforkApp/DataModel/PointMap.cs
- sources/RoboforkApp/DataModel/VehicleModel.cs
- sources/RoboforkApp/DataModel/VehicleModelList.cs
- sources/RoboforkApp/RoboforkMenuView.xaml.cs
sources/RoboforkApp/Controls/DesignerCanvas.cs
... | ... | @@ -76,7 +76,7 @@ |
76 | 76 | |
77 | 77 | //Add variable for Vehicle Item click |
78 | 78 | public string VehicleItem = "FK_15"; |
79 | - VehicleModel VehicleModel = new VehicleModel(); | |
79 | + public VehicleModel VehicleModel = new VehicleModel(); | |
80 | 80 | public int VehicleIndex = 0; |
81 | 81 | public string ColorNode_Add = "Blue"; |
82 | 82 | public string ColorNode_Insert = "Brown"; |
... | ... | @@ -2785,6 +2785,12 @@ |
2785 | 2785 | |
2786 | 2786 | gGrpScheduleNode.Children.Clear(); |
2787 | 2787 | gGrpScheduleLine.Children.Clear(); |
2788 | + | |
2789 | + //Remove existed simulation | |
2790 | + if(scheduleCanvas.simulation !=null) | |
2791 | + { | |
2792 | + scheduleCanvas.Children.Remove(scheduleCanvas.simulation); | |
2793 | + } | |
2788 | 2794 | |
2789 | 2795 | |
2790 | 2796 | List<double> distance = new List<double>(); |
... | ... | @@ -3044,7 +3050,7 @@ |
3044 | 3050 | node = ellipseGeometry.Center; |
3045 | 3051 | pMap.pointSchedule_X = node.X; |
3046 | 3052 | pMap.pointSchedule_Y = node.Y; |
3047 | - pMap.speed_Schedule = 0; | |
3053 | + pMap.speed_Schedule = 0.2; //Hard code | |
3048 | 3054 | |
3049 | 3055 | //Node info |
3050 | 3056 | foreach (ListNodeInfo temp in Lst_Node_tmp[i].NodeInfo_tmp) |
... | ... | @@ -3102,7 +3108,7 @@ |
3102 | 3108 | node = ellipseGeometry.Center; |
3103 | 3109 | pMap.pointSchedule_X = node.X; |
3104 | 3110 | pMap.pointSchedule_Y = node.Y; |
3105 | - pMap.speed_Schedule = 0; | |
3111 | + pMap.speed_Schedule = 0.2; //Hard code | |
3106 | 3112 | |
3107 | 3113 | VehicleModelList.pointMapList.Add(pMap); |
3108 | 3114 | } |
sources/RoboforkApp/Controls/ScheduleCanvas.cs
1 | -using System; | |
1 | +using RoboforkApp.DataModel; | |
2 | +using System; | |
2 | 3 | using System.Collections.Generic; |
3 | 4 | using System.Linq; |
4 | 5 | using System.Text; |
5 | 6 | |
... | ... | @@ -15,11 +16,12 @@ |
15 | 16 | { |
16 | 17 | const double COOR_Y = 65; |
17 | 18 | const double RADIUS_NODE = 25; |
18 | - private simulationRobo simulation; | |
19 | + public simulationRobo simulation; | |
20 | + private VehicleModelList vehicleModelList; | |
19 | 21 | private Point startPoint; |
20 | 22 | private Point endPoint; |
21 | 23 | private bool _isGoal = false; |
22 | - private double _speed = 0.2; //Now _speed is fixed, but when update node | |
24 | + private double _speed; | |
23 | 25 | private int index; |
24 | 26 | |
25 | 27 | private List<ucNode> _lstNode; |
... | ... | @@ -27,8 +29,10 @@ |
27 | 29 | /// <summary> |
28 | 30 | /// Create simulation |
29 | 31 | /// </summary> |
30 | - /// <param name="lstNode"></param> | |
31 | - public void CreateSimulation(List<ucNode> lstNode) | |
32 | + /// <param name="lstNode">List node on schedule</param> | |
33 | + /// <param name="vehicleModel">Vehicle model on map</param> | |
34 | + /// <param name="vehicleIndex">Current index of vehicle</param> | |
35 | + public void CreateSimulation(List<ucNode> lstNode, VehicleModel vehicleModel, int vehicleIndex) | |
32 | 36 | { |
33 | 37 | //If node is less than 2 so return |
34 | 38 | if (this.Children.Count < 2) |
35 | 39 | |
... | ... | @@ -40,8 +44,10 @@ |
40 | 44 | |
41 | 45 | //Init data |
42 | 46 | this._lstNode = lstNode; |
47 | + this.vehicleModelList = vehicleModel.VehicleModelList[vehicleIndex]; | |
43 | 48 | this.startPoint = new Point(Canvas.GetLeft(_lstNode[index]) + RADIUS_NODE, COOR_Y); |
44 | 49 | this.endPoint = new Point(Canvas.GetLeft(_lstNode[index + 1]) + RADIUS_NODE, COOR_Y); |
50 | + this._speed = vehicleModelList.pointMapList[index].speed_Schedule; | |
45 | 51 | this.index += 1; |
46 | 52 | if (index == _lstNode.Count - 1) |
47 | 53 | { |
... | ... | @@ -113,6 +119,7 @@ |
113 | 119 | // If not end node |
114 | 120 | if (!isGoal) |
115 | 121 | { |
122 | + this._speed = vehicleModelList.pointMapList[index].speed_Schedule; | |
116 | 123 | this.index += 1; |
117 | 124 | this.Children.Remove(simulation); |
118 | 125 | this.startPoint = endPoint; |
119 | 126 | |
... | ... | @@ -122,14 +129,13 @@ |
122 | 129 | { |
123 | 130 | this._isGoal = true; |
124 | 131 | } |
125 | - this._speed += 0.2; | |
126 | 132 | RoboSimulation(); |
127 | 133 | return; |
128 | 134 | } |
129 | 135 | |
130 | 136 | // Reset data when finish |
131 | 137 | this.index = 0; |
132 | - this._speed = 0.2; | |
138 | + this._speed = 0; | |
133 | 139 | this._isGoal = false; |
134 | 140 | } |
135 | 141 | } |
sources/RoboforkApp/DataModel/ListNodeInfo.cs
sources/RoboforkApp/DataModel/NodeInfo_tmp.cs
sources/RoboforkApp/DataModel/Node_tmp.cs
sources/RoboforkApp/DataModel/PointMap.cs
sources/RoboforkApp/DataModel/VehicleModel.cs
sources/RoboforkApp/DataModel/VehicleModelList.cs
sources/RoboforkApp/RoboforkMenuView.xaml.cs
... | ... | @@ -148,7 +148,7 @@ |
148 | 148 | |
149 | 149 | private void DoBeginTask() |
150 | 150 | { |
151 | - MyScheduleCanvas.CreateSimulation(MyDesignerCanvas.ucScheduleNode_Lst); | |
151 | + MyScheduleCanvas.CreateSimulation(MyDesignerCanvas.ucScheduleNode_Lst, MyDesignerCanvas.VehicleModel, MyDesignerCanvas.VehicleIndex); | |
152 | 152 | } |
153 | 153 | |
154 | 154 | private void DoBeginSetAutoNotes() |