This commit is contained in:
Victor Shcherb 2016-08-17 11:20:13 +02:00
parent 1572accd18
commit 79fe50cd2f
2 changed files with 18 additions and 3 deletions

View file

@ -38,6 +38,11 @@ public class CurrentPositionHelper {
this.app = app;
}
public Location getLastAskedLocation() {
return lastAskedLocation;
}
public boolean getRouteSegment(Location loc, ResultMatcher<RouteDataObject> result) {
return scheduleRouteSegmentFind(loc, false, null, result);
}
@ -245,7 +250,7 @@ public class CurrentPositionHelper {
});
}
private static double getOrthogonalDistance(RouteDataObject r, Location loc){
public static double getOrthogonalDistance(RouteDataObject r, Location loc){
double d = 1000;
if (r.getPointsLength() > 0) {
double pLt = MapUtils.get31LatitudeY(r.getPoint31YTile(0));

View file

@ -15,6 +15,7 @@ import android.widget.TextView;
import net.osmand.Location;
import net.osmand.ValueHolder;
import net.osmand.binary.RouteDataObject;
import net.osmand.plus.CurrentPositionHelper;
import net.osmand.plus.NavigationService;
import net.osmand.plus.OsmAndFormatter;
import net.osmand.plus.OsmAndLocationProvider;
@ -37,6 +38,7 @@ import net.osmand.plus.routing.RoutingHelper;
import net.osmand.plus.views.OsmandMapLayer.DrawSettings;
import net.osmand.plus.views.mapwidgets.NextTurnInfoWidget.TurnDrawable;
import net.osmand.router.TurnType;
import net.osmand.util.Algorithms;
import java.util.Iterator;
import java.util.LinkedList;
@ -584,8 +586,16 @@ public class MapInfoWidgetsFactory {
if (text == null) {
text = "";
} else {
type[0] = TurnType.valueOf(TurnType.C, false);
turnDrawable.setColor(R.color.color_myloc_distance);
if(!Algorithms.isEmpty(text) && locationProvider.getLastKnownLocation() != null) {
double dist =
CurrentPositionHelper.getOrthogonalDistance(rt, locationProvider.getLastKnownLocation());
if(dist < 50) {
type[0] = TurnType.valueOf(TurnType.C, false);
turnDrawable.setColor(R.color.color_myloc_distance);
} else {
text = map.getResources().getString(R.string.shared_string_near) + " " + text;
}
}
}
}
if (map.isTopToolbarActive()) {