[Xastir-Dev] some ideas for map speedups

Alan Crosswell alan at columbia.edu
Mon Jul 7 20:12:33 EDT 2003


I'm already working on the canonical DBF column handling.  That's all 
that awk-like stuff I posted that set Gerry off on a GML streak:-)
/a

Curt Mills, WE7U wrote:

>On Mon, 7 Jul 2003, Alan Crosswell wrote:
>
>  
>
>>Wow!  Sounds like Curt was real busy last weekend while I was communing with
>>nature in the Adirondacks ("Hey, pass me the can of insect repellent?"  "Does
>>anybody have matches?" :-)
>>
>>I jotted down some ideas for improving vector map performance on the train this AM:
>>
>>- Insinuate an intermediate vector data structure layer between the map-specific
>>file reading functions and the map display functions (instead of directly
>>invoking X drawing functions).  This then canonicalizes all vector maps to a
>>single Xastir internal data structure which captures the attributes we care about.
>>
>>- Cache these vectors into memory up to a certain configurable memory limit.
>>
>>- Sort the memory vector list by display_level:  Major features that display at
>>level 8192 are earlier in the list, those that display at level 1 are last in
>>the list.  When rendering, it becomes really easy to decide when to stop -- and
>>the map draws in order of feature prominence.
>>
>>- Cache 25%(?) more than the current viewport to support quick panning and
>>zooming out.
>>
>>- Use available idle cycles in a low-priority thread to continue filling out
>>around the edges of the viewport and drilling down to more detailed vectors
>>(remembering the above sorting).
>>
>>- Get really smart and use dead reckoning prediction when tracking a moving
>>station to determine what to render/cache next.
>>
>>- Potentially allow writing this cache out to disk for faster reuse and to
>>support "swapping."
>>    
>>
>
>Another:  For Shapefiles where we know the format, drop more
>detailed shapes as we zoom out.  For instance, drop smaller creeks
>and roads.  This would be a major speedup for the way I currently
>use Xastir.  If the limits were set well I could leave more counties
>selected than I do now.
>
>Another:  If we were to have a method for guessing the Shapefile
>format (or manually inputting more info) while indexing, we could
>specify the label column, a size column (useful for the previous
>idea), and perhaps other info.  This would allow us to remove the
>"guessing" code from map_shp.c, speeding up the drawing of shapefile
>maps.  It would also allow us to use shapefile maps that had the
>labels in different columns than currently expected, like road maps
>from other sources.
>
>  
>



More information about the Xastir-dev mailing list