|
|
Line 35: |
Line 35: |
| Ground vehicles are launched as defined in AI/groundservices.xml. | | Ground vehicles are launched as defined in AI/groundservices.xml. |
| "initialcount" vehicles of each type will be launched at their defined home location and move between the listed destinations (random groundnet nodes are used if nothing is configured). | | "initialcount" vehicles of each type will be launched at their defined home location and move between the listed destinations (random groundnet nodes are used if nothing is configured). |
| Moving of vehicles is implemented by first finding a path along the graph (Graph.findPath()), which is quite simple due to Edsger Dijkstras preliminary work. The vehicles will move along
| | |
| their defined path like a train on rails. They will allways be fixed at some specific position on some edge (class GraphPosition).
| |
| For accomplishing a smooth transition from one edge to the other, the graph not only allows line edges but also arc edges. So the shortest path found through the graph will be smoothed
| |
| (GraphUtils.createPathFromGraphPosition() and GraphUtils.createTransition()) by truncating line edges and connecting these by arc edges. These graph edges will be added temporarily to the graph and will be removed from the
| |
| graph when the vehicle reaches its destination. Smoothing the graph path is a quite complex process with many potential combinations (eg. short edges, small angles between edges, orientation of vehicles).
| |
| Optimizing this process still is a work in progress.
| |
|
| |
|
| When the distance to the airport exceeds 3 nm, GroundServices switches back to "standby" mode, removing all ground vehicles. | | When the distance to the airport exceeds 3 nm, GroundServices switches back to "standby" mode, removing all ground vehicles. |