See also [http://grass.osgeo.org/wiki/GUI_for_ps.map page] at GRASS User Wiki. Prototype should be able to generate configuration file for `ps.map` based on [http://grass.osgeo.org/wiki/Psmap_simple_example#Simple_example example]. Please contact Hamish before getting started with the GUI front-end or before significant changes to ps.map back-end (as primary maintainer of that code). Similar tools: [http://www.qgis.org QGIS Print composer], ArcGIS Layout mode, [http://www.gvsig.org/web/ gvSig] (see also [http://www.google.cz/url?sa=t&source=web&cd=8&ved=0CFMQFjAH&url=http%3A%2F%2Fgvsig-desktop.forge.osor.eu%2Fdownloads%2Fpub%2Fdocuments%2Flearning%2Fgvsig-courses%2Fgvsig_des_1.1.x_u_en%2FgvSIG_workshop_OSGIS09.pdf&rct=j&q=gvsig%20map%20creating&ei=ck0kTfSTENSs8QPRrrW2Ag&usg=AFQjCNEx7iVQDwDHA2gRDFZxyf176VW-uQ&cad=rja workshop]) === Prototype 1 === * Configuration dialog (paper format, map scale) * Implement the `raster`, `colortable`, `vlines`, `vpoints`, `vareas`(?), `text`, `mapinfo` instructions * Interactive placement of the features * Draft mode (lower raster region resolution) * Generate ps.map configuration text file * Create output using ps.map === Prototype 2 === * !Draft/Preview mode * Implement other instructions * If the `ps2pdf` program is installed offer a PDF output option === Prototype 3 === * Read configuration files * As a parallel task, nice features from ps.output should be ported to ps.map. (contact HB) == ps.map bugs and inconsistencies == * color should support RGB for all instructions (e.g. #192) * common usage of ref points and units (absolute, relative) * The trouble is, percentage is given relative to the map box (which is sized and placed dynamically at run-time), while absolute is given relative to the page size. * The GUI has to do these calculations and feed ps.map what it wants in the form it wants. IMO it is not practical to have the python code mirror the C code's placement logic (a lot of work to mimic, then a lot of discipline to keep in sync). This may take a two-pass solution, e.g. a new ps.map flag which would output map box corners in inches and then exit. The GUI could then do the needed conversions between %, PostScript points(?), inches, cm, mm, or map coords. See wish #153.