summaryrefslogtreecommitdiff
path: root/navit/track.c
diff options
context:
space:
mode:
authormartin-s <martin-s@ffa7fe5e-494d-0410-b361-a75ebd5db220>2012-02-01 13:13:56 +0000
committermartin-s <martin-s@ffa7fe5e-494d-0410-b361-a75ebd5db220>2012-02-01 13:13:56 +0000
commit5cfdbe8cb1629e1a53f38a41a7dafa1ffec8e6af (patch)
treecb29b503f76059d398c740d1c90f196d8c8576f5 /navit/track.c
parent892ae09f3c401dfdf344601f5c6683f2d70b231f (diff)
downloadnavit-5cfdbe8cb1629e1a53f38a41a7dafa1ffec8e6af.tar.gz
Add:Core:Option to get matched direction from map matching
git-svn-id: http://svn.code.sf.net/p/navit/code/trunk/navit@4919 ffa7fe5e-494d-0410-b361-a75ebd5db220
Diffstat (limited to 'navit/track.c')
-rw-r--r--navit/track.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/navit/track.c b/navit/track.c
index f2df82842..bfe3a8ea2 100644
--- a/navit/track.c
+++ b/navit/track.c
@@ -95,7 +95,7 @@ struct tracking {
struct attr *attr;
int valid;
int time;
- double direction;
+ double direction, direction_matched;
double speed;
int coord_geo_valid;
struct coord_geo coord_geo;
@@ -345,6 +345,9 @@ tracking_get_attr(struct tracking *_this, enum attr_type type, struct attr *attr
case attr_position_direction:
attr->u.numd=&_this->direction;
return 1;
+ case attr_position_direction_matched:
+ attr->u.numd=&_this->direction_matched;
+ return 1;
case attr_position_speed:
attr->u.numd=&_this->speed;
return 1;
@@ -751,6 +754,7 @@ tracking_update(struct tracking *tr, struct vehicle *v, struct vehicleprofile *v
tr->pos=i;
tr->curr[0]=sd->c[i];
tr->curr[1]=sd->c[i+1];
+ tr->direction_matched=t->angle[i];
dbg(1,"lpnt.x=0x%x,lpnt.y=0x%x pos=%d %d+%d+%d+%d=%d\n", lpnt.x, lpnt.y, i,
transform_distance_line_sq(&sd->c[i], &sd->c[i+1], &cin, &lpnt_tmp),
tracking_angle_delta(tr, tr->curr_angle, t->angle[i], 0)*tr->angle_pref,