[GRASS-dev] WxPython front-end to ps.map
Glynn Clements
glynn at gclements.plus.com
Thu Feb 8 15:28:52 EST 2007
J-Báchym Čepický wrote:-A
> * the gui will be never as fast as compiled one
Unless the GUI is going to do its own rendering, that isn't really an
issue.
> I would say, if we would need to rewrite Map Displays so they access
> raster and vector files directly, we would need to code this parts in
> C. It would take us too much time IMHO.
I would caution against that.
The GRASS API was designed for traditional one-shot utilities; it is
entirely unsuited to persistent applications such as a GUI. E.g.:
1. If anything unexpected occurs, the usual response is to call
G_fatal_error(), which terminates the process.
2. The core libraries have many global variables, which are
initialised either by the loader at program startup, by G_gisinit(),
or on first access. In many (most?) cases, there is no way to reset
the library state back to its initial state.
> My imagination is, to use Map Display with pop-up tool bar(s) for
> specific tools -- if there is someone, who disagrees with this point,
> please raise your hand. ps.map is very good tool for creation of
> hard-copy maps. It should not be too big task to add tool, which would
> generate configuration file for ps.map based on map display content.
>
> For the future, it would be good to improve d.vect to be able to
> display e.g. dashed lines
That's an architectural change. I really don't want to see the
existing graphics system (libraster etc) improved. It's long overdue
to be replaced with something better. Unfortunately, the problem with
a better API is that it's the interface which needs to change, rather
than just the implementation. And that involves re-writing a lot of
d.* modules.
> and so on and to improve ps.map so it is possible to work with
> multiple raster tiles and so on.
Are you talking about overlaying raster maps? One thing to bear in
mind here is that you need level 3 PostScript for masked images
(images with transparent pixels), and there are plenty of printers out
there which don't support level 3.
--
Glynn Clements <glynn at gclements.plus.com>
More information about the grass-dev
mailing list