diff options
author | Pierre GRANDIN <pgrandin@users.noreply.github.com> | 2017-11-11 12:15:27 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-11-11 12:15:27 -0800 |
commit | fd44c4575c40c0d3ce8504a0fb90cd14ea3d5056 (patch) | |
tree | e9b8079f30cb34031f291629509cd279067dfda7 | |
parent | 61910bf546903d7e2216d36d57bafd073e364f2b (diff) | |
parent | b004c7216c7c41a270cb08476538e96537a2b7da (diff) | |
download | navit-fd44c4575c40c0d3ce8504a0fb90cd14ea3d5056.tar.gz |
Merge branch 'trunk' into semver_changelog
-rw-r--r-- | navit/gui/gtk/gui_gtk_statusbar.c | 4 | ||||
-rw-r--r-- | navit/navigation.h | 4 | ||||
-rw-r--r-- | navit/navit.c | 2 | ||||
-rw-r--r-- | navit/vehicle/gpsd/vehicle_gpsd.c | 4 |
4 files changed, 9 insertions, 5 deletions
diff --git a/navit/gui/gtk/gui_gtk_statusbar.c b/navit/gui/gtk/gui_gtk_statusbar.c index aa70c6332..5497f9a9c 100644 --- a/navit/gui/gtk/gui_gtk_statusbar.c +++ b/navit/gui/gtk/gui_gtk_statusbar.c @@ -123,7 +123,7 @@ statusbar_route_update(struct statusbar_priv *this, struct navit *navit, struct map_rect_destroy(mr); sprintf(buffer,_("Route %4.1f%s %02d:%02d ETA" ), - imperial == TRUE ? route_len / METERS_PER_MILE : route_len/1000, + imperial == TRUE ? route_len * (KILOMETERS_TO_MILES/1000.00) : route_len/1000, imperial == TRUE ? "mi" : "km", eta_tm ? eta_tm->tm_hour : 0 , eta_tm ? eta_tm->tm_min : 0); @@ -163,7 +163,7 @@ statusbar_route_update(struct statusbar_priv *this, struct navit *navit, struct imperial ? height * FEET_PER_METER : height, imperial == TRUE ? "\'" : "m", direction, dir, - imperial == TRUE ? speed / (METERS_PER_MILE / 1000) : speed, /* hard-coded. Ugly */ + imperial == TRUE ? speed * KILOMETERS_TO_MILES : speed, imperial == TRUE ? " mph" : "km/h" ); diff --git a/navit/navigation.h b/navit/navigation.h index 28faa015c..789d4fcbf 100644 --- a/navit/navigation.h +++ b/navit/navigation.h @@ -22,7 +22,9 @@ #define FEET_PER_METER 3.2808399 #define FEET_PER_MILE 5280 -#define METERS_PER_MILE 1609 +#define KILOMETERS_TO_MILES 0.62137119 /* Kilometers to miles */ +#define METERS_PER_MILE 1/(KILOMETERS_TO_MILES/1000.00) +#define MPS_TO_KPH 3.6 /* Meters per second to klicks/hr */ #ifdef __cplusplus extern "C" { diff --git a/navit/navit.c b/navit/navit.c index dbc58a277..768fb7d3b 100644 --- a/navit/navit.c +++ b/navit/navit.c @@ -1982,7 +1982,7 @@ navit_window_roadbook_update(struct navit *this_) if ( attr.u.num >= 2000 ) { param[1].value=g_strdup_printf("%5.1f %s", - imperial == TRUE ? (float)attr.u.num / METERS_PER_MILE : (float)attr.u.num / 1000, + imperial == TRUE ? (float)attr.u.num / (METERS_PER_MILE/1000.00) : (float)attr.u.num / 1000, imperial == TRUE ? _("mi") : _("km") ); } diff --git a/navit/vehicle/gpsd/vehicle_gpsd.c b/navit/vehicle/gpsd/vehicle_gpsd.c index a8c29cd97..27025c0a6 100644 --- a/navit/vehicle/gpsd/vehicle_gpsd.c +++ b/navit/vehicle/gpsd/vehicle_gpsd.c @@ -101,13 +101,15 @@ vehicle_gpsd_callback(struct gps_data_t *data, const char *buf, size_t len, } } } + dbg(lvl_debug,"data->set="LONGLONG_HEX_FMT"\n", (unsigned long long)data->set); if (data->set & SPEED_SET) { - priv->speed = data->fix.speed * 3.6; + priv->speed = data->fix.speed * MPS_TO_KPH; if(!isnan(data->fix.speed)) callback_list_call_attr_0(priv->cbl, attr_position_speed); data->set &= ~SPEED_SET; } + if (data->set & TRACK_SET) { priv->direction = data->fix.track; data->set &= ~TRACK_SET; |