Merge pull request #499 from quaelnix/fix-calc-distance

Fix rounding error in calcDistance
This commit is contained in:
afischerdev 2023-02-15 17:24:03 +01:00 committed by GitHub
commit 8903939176
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 3 additions and 3 deletions

View file

@ -75,7 +75,7 @@ public class OsmPathElement implements OsmPos {
} }
public final int calcDistance(OsmPos p) { public final int calcDistance(OsmPos p) {
return (int) (CheapRuler.distance(ilon, ilat, p.getILon(), p.getILat()) + 1.0); return (int) Math.max(1.0, Math.round(CheapRuler.distance(ilon, ilat, p.getILon(), p.getILat())));
} }
public OsmPathElement origin; public OsmPathElement origin;

View file

@ -462,7 +462,7 @@ public final class RoutingContext {
} }
} }
} }
return (int) (d + 0.5); return (int) Math.max(1.0, Math.round(d));
} }
public OsmPathModel pm; public OsmPathModel pm;

View file

@ -100,7 +100,7 @@ public class OsmNode extends OsmLink implements OsmPos {
} }
public final int calcDistance(OsmPos p) { public final int calcDistance(OsmPos p) {
return (int) (CheapRuler.distance(ilon, ilat, p.getILon(), p.getILat()) + 1.0); return (int) Math.max(1.0, Math.round(CheapRuler.distance(ilon, ilat, p.getILon(), p.getILat())));
} }
public String toString() { public String toString() {