Fix issue with ArcBackward being drawn.
This commit is contained in:
parent
19220dc8a4
commit
251dbbb074
@ -33,10 +33,23 @@ public class Node implements Comparable<Node> {
|
|||||||
*/
|
*/
|
||||||
public static Arc linkNodes(Node origin, Node destination, float length,
|
public static Arc linkNodes(Node origin, Node destination, float length,
|
||||||
RoadInformation roadInformation, ArrayList<Point> points) {
|
RoadInformation roadInformation, ArrayList<Point> points) {
|
||||||
ArcForward arc = new ArcForward(origin, destination, length, roadInformation, points);
|
Arc arc = null;
|
||||||
origin.addSuccessor(arc);
|
if (roadInformation.isOneWay()) {
|
||||||
if (!roadInformation.isOneWay()) {
|
arc = new ArcForward(origin, destination, length, roadInformation, points);
|
||||||
destination.addSuccessor(new ArcBackward(arc));
|
origin.addSuccessor(arc);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
Arc d2o;
|
||||||
|
if (origin.getId() < destination.getId()) {
|
||||||
|
arc = new ArcForward(origin, destination, length, roadInformation, points);
|
||||||
|
d2o = new ArcBackward(arc);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
d2o = new ArcForward(destination, origin, length, roadInformation, points);
|
||||||
|
arc = new ArcBackward(d2o);
|
||||||
|
}
|
||||||
|
origin.addSuccessor(arc);
|
||||||
|
destination.addSuccessor(d2o);
|
||||||
}
|
}
|
||||||
return arc;
|
return arc;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user