diff options
author | martin-s <martin-s@ffa7fe5e-494d-0410-b361-a75ebd5db220> | 2010-02-26 20:30:38 +0000 |
---|---|---|
committer | martin-s <martin-s@ffa7fe5e-494d-0410-b361-a75ebd5db220> | 2010-02-26 20:30:38 +0000 |
commit | 6ed42f40138070b987b4984803e44bb960b6fcb0 (patch) | |
tree | a276a463410f7733a56508430aab02eb51f22523 /navit/graphics.c | |
parent | 272db8e25f65b430f850858aea1223446670b750 (diff) | |
download | navit-svn-6ed42f40138070b987b4984803e44bb960b6fcb0.tar.gz |
Fix:Core:Convert transformation while rendering
git-svn-id: http://svn.code.sf.net/p/navit/code/trunk/navit@2973 ffa7fe5e-494d-0410-b361-a75ebd5db220
Diffstat (limited to 'navit/graphics.c')
-rw-r--r-- | navit/graphics.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/navit/graphics.c b/navit/graphics.c index c1029416..b2792255 100644 --- a/navit/graphics.c +++ b/navit/graphics.c @@ -1808,8 +1808,10 @@ do_draw(struct displaylist *displaylist, int cancel, int flags) int count,max=displaylist->dc.maxlen,workload=0; struct coord ca[max]; struct attr attr,attr2; + enum projection pro; profile(0,NULL); + pro=transform_get_projection(displaylist->dc.trans); while (!cancel) { if (!displaylist->msh) displaylist->msh=mapset_open(displaylist->ms); @@ -1832,6 +1834,8 @@ do_draw(struct displaylist *displaylist, int cancel, int flags) count=item_coord_get_within_selection(item, ca, item->type < type_line ? 1: max, displaylist->sel); if (! count) continue; + if (displaylist->dc.pro != pro) + transform_from_to_count(ca, displaylist->dc.pro, ca, pro, count); if (count == max) { dbg(0,"point count overflow %d for %s "ITEM_ID_FMT"\n", count,item_to_name(item->type),ITEM_ID_ARGS(*item)); displaylist->dc.maxlen=max*2; |