[Xastir] Proposed change to handling of gps-downloaded shapefiles.

Tom Russo russo at bogodyn.org
Mon Dec 11 13:06:03 EST 2006


I just spent some time yesterday using maps created from gps downloads (during
an Xastir demo).  I found some stuff that was quite frustrating, and I propose
that they be changed.  I've already changed one thing that was a dumb mistake
on my own part, but I figured I'd ask before making the other change.

Until last night, when you downloaded a gps track it created a dbfawk file to
go with it that set "display_level" to 256.  That was my fault, and the result
was that if you had dbfawk enabled, xastir would never display that gps track
if you were zoomed out to zoom level 256 or higher.  This has not been a problem
for me before, becaus usually my gps tracks were from hikers, but the track
I tried to view yesterday was from a guy who drove to Baja and back and wanted
to see his whole track on a large map.  It took a while to realize why setting 
min/max zoom wasn't letting the track be visible at zoom level 1024.  Last
night I changed the code in main.c to write dbfawk files with display_level
of 65536 instead of 256.  If you have existing gps tracks in your .gps directory
and are using dbfawk, and wonder why the heck they don't display when zoomed
out, it's because of the old default.  You can edit those dbfawk files to
fix display_level to something better suited.

The reason to have a dbfawk file to go with those gps tracks is to make sure
they still display properly if you were to move them out of the
/usr/local/share/xastir/maps/GPS directory.  Files in that directory are
special-cased in the map_shp code, and have hard-coded display parameters
like color (which is taken from the file name) and line style (dashed, wide).
Until I hacked xastir to write out a dbfawk for these things, moving files from
the GPS directory into some other directory automatically changed how they 
were drawn (from specific colors and line widths, to thin black lines).  That
was a change I had made quite some time ago.

Now the other issue, that I haven't fixed:  The color of the line drawn by
xastir is always taken from the file name if the file is in the GPS directory,
even if dbfawk is enabled and there is an existing dbfawk file to go with it.
That means that is is pretty much a pain in the neck to change the color of
such a displayed map --- you have to move all three files to a different 
base name, reindex the maps to find the new one, and redraw just to change the 
color.

What I propose to change is to allow the dbfawk file to override the hard-coded
stuff even when the  file is in the GPS directory.  The dbfawk file that is
written out by xastir by default is set up to mimic the default behavior, 
so this should be a user-invisible change.  If the user were to edit the dbfawk
file and fine tune it, however, the changes would be visible immediately upon
map redraw, and would not require clumsy name changing or moving the file to
a different directory just to disable the default behavior.

So, if I were to make that change and let map_shp always use the dbfawk file
if that feature is enabled and the file exists, and only use the default
hard-coded behavior if dbfawk is disabled or there IS no dbfawk file, would 
anyone be terribly offended?

I think that making this change would be a usability improvement.  But I'm 
happy to listen to those who think otherwise.

-- 
Tom Russo    KM5VY   SAR502   DM64ux          http://www.swcp.com/~russo/
Tijeras, NM  QRPL#1592 K2#398  SOC#236 AHTB#1 http://kevan.org/brain.cgi?DDTNM
"And, isn't sanity really just a one-trick pony anyway? I mean all you get is
 one trick, rational thinking, but when you're good and crazy, oooh, oooh,
 oooh, the sky is the limit!"  --- The Tick



More information about the Xastir mailing list