diff --git a/brouter-core/src/main/java/btools/router/OsmPath.java b/brouter-core/src/main/java/btools/router/OsmPath.java index 346704a..c8f3f00 100644 --- a/brouter-core/src/main/java/btools/router/OsmPath.java +++ b/brouter-core/src/main/java/btools/router/OsmPath.java @@ -346,7 +346,7 @@ abstract class OsmPath implements OsmLinkHolder if ( rc.startDirectionValid ) { double dir = rc.startDirection.intValue() / CheapRulerSingleton.DEG_TO_RAD; - double[] lonlat2m = CheapRulerSingleton.getLonLatToMeterScales( lat1 ); + double[] lonlat2m = CheapRulerSingleton.getLonLatToMeterScales( (lon0 + lat1) >> 1 ); lon0 = lon1 - (int) ( 1000. * Math.sin( dir ) / lonlat2m[0] ); lat0 = lat1 - (int) ( 1000. * Math.cos( dir ) / lonlat2m[1] ); }