Fix slight turns on motorway
This commit is contained in:
parent
6803a1bf0f
commit
e9eee09a40
2 changed files with 9 additions and 0 deletions
1
OsmAnd-java/.gitignore
vendored
1
OsmAnd-java/.gitignore
vendored
|
@ -1 +1,2 @@
|
|||
bin
|
||||
OsmAnd-core.jar
|
||||
|
|
|
@ -481,6 +481,7 @@ public class RouteResultPreparation {
|
|||
// }
|
||||
|
||||
double devation = Math.abs(MapUtils.degreesDiff(prevSegm.getBearingEnd(), currentSegm.getBearingBegin()));
|
||||
boolean makeSlightTurn = devation > 5 && (!isMotorway(prevSegm) || !isMotorway(currentSegm));
|
||||
if (kl) {
|
||||
t = TurnType.valueOf(devation > 5 ? TurnType.TSLL : TurnType.KL, leftSide);
|
||||
t.setSkipToSpeak(!speak);
|
||||
|
@ -494,6 +495,13 @@ public class RouteResultPreparation {
|
|||
}
|
||||
return t;
|
||||
}
|
||||
|
||||
private boolean isMotorway(RouteSegmentResult s){
|
||||
String h = s.getObject().getHighway();
|
||||
return "motorway".equals(h) || "motorway_link".equals(h) ||
|
||||
"trunk".equals(h) || "trunk_link".equals(h);
|
||||
|
||||
}
|
||||
|
||||
|
||||
private void attachRoadSegments(RoutingContext ctx, List<RouteSegmentResult> result, int routeInd, int pointInd, boolean plus) throws IOException {
|
||||
|
|
Loading…
Reference in a new issue