Changes between Version 2 and Version 3 of GSoC/2016/WebGrass


Ignore:
Timestamp:
May 17, 2016, 2:15:13 AM (8 years ago)
Author:
Mayank
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • GSoC/2016/WebGrass

    v2 v3  
    88|| Link to code: || [TODO]
    99|| Documentation: || [TODO]
     10
     11
     12== Brief description ==
     13
     14Currently a GRASS GIS user is forced to use Cartographic Composer or use another software (e.g. QGIS) to create hard copy map outputs with all features. The aim of this project is to develop complete basic cartography suite for the wxGUI Map Display so it could serve for most of the science publications. The goal is not to substitute QGIS Cart Comp or similar, it's just about completing all features so the cartography scripting abilities of GRASS GIS and its potential can be fully used.
     15
     16
     17
     18== State before GSoC ==
     19
     20GRASS GIS contains some modules which would be good to implement into cartography suite for wxGUI Map Display. There are d.barscale, d.graph, d.histogram, d.legend and many other d.* commands to use. There are bugs in some of them and it needs to be fixed (options for map window size). Then there are some modules which need to be enhanced. Legend background is currently transparent ­> add an options for opacity, border and corner settings. It's possible to set number of breaks/ticks for legend but values are not rounded ­> add an option for manual brakes/ticks, add an option for automatic breaks/ticks (every ten, hundred).
     21
     22
     23
     24== Addition to the project ==
     25
     26GRASS GIS is an important OSGeo project but it is perceived as not suitable for cartography which prevents a lot of users from utilizing as a GIS. Completing basic cartography suite in GRASS GIS should satisfy needs of significant part of potential user community.
     27Moreover, GRASS GIS provides an easy way to automate simple map creation using scripting. However, only with complete suite of basic functions implemented in this GSoC project, the cartography scripting abilities of GRASS GIS can be fully used.
     28
     29== Project plan ==
     30
     31The idea of the project is to start with easy­to­implement stuff and step­by­step implement the more difficult ones. There are many details which need to be improved and many others which are missing entirely so the users have to use another software (legend background, north arrow orientation)
     32
     33|||||| '''Project plan'''       ||
     34||Date ||Goals  ||status||
     35||MAY 23          ||Starting GoSC|| ||
     36||MAY 23 -­ 27     ||Store legend, scale bar, north arrow and text in workspace, bug fixing (e.g. workspace loading) (wxGUI).|| ||
     37||MAY 30 ­- JUNE 3      ||Add units to legend (optionally also title) as parameter. Option for switch  legend to linear/logarithmic scale. Manual/automatic breaks/ticks for legend (option for rounded values, option for every ten,hundred).|| ||
     38||JUNE 6 ­- 10      ||Legend background (border, rounded corners, opacity settings) (d.legend, C).Support map units in scale bar (not only meters).Allow user to set the length of scale bar (in map units) (d.barscale).|| ||
     39||JUNE 13 ­- 17     ||Possibility to add any image (as in animation tool). Use cases: logo/watermark, workaround for overview maps.|| ||
     40||JUNE 20 ­- 24    ||General shapes.|| ||
     41||JUNE 20 ­- 27    ||'''Midterm evaluations'''|| ||
     42||JUNE 27 ­- 1 JULY     ||General shapes.|| ||
     43||JULY 4 ­- 8   ||Include map­display­like object.|| ||
     44||JULY 11 ­- 15    ||Include map­display­like object.|| ||
     45||JULY 18 ­- 22    ||Implement vector legend. Enhance d.vect.thematic.)|| ||
     46||JULY 25 ­- 29   ||Implement vector legend. Enhance d.vect.thematic. Testing, writing documentation.|| ||
     47||AUGUST 1 -­ 5    ||Testing, writing documentation.|| ||
     48||AUGUST 8 ­- 12  ||One week buffer in case of delay.|| ||
     49||AUGUST 15 ­- 23  ||Submitting code and evaluations.|| ||
     50||AUGUST 23 ­- 29  ||'''Final Evaluations'''|| ||
     51||AUGUST 30       ||'''Ending GSoC'''|| ||
     52
     53== Tickets ==
     54
     55We are using keywords [query:keywords=~cartography cartography] and [query:keywords=~gsoc2016 gsoc2016] to mark the tickets which are tasks for this GSoC.
     56
     57[[TicketQuery(keywords=~cartography|~gsoc2016,order=priority)]]
     58== Vector legend ==
     59
     60Draft of legend implementation. Please edit or change completely.
     61
     62* 1st prototype
     63 * d.legend.vector
     64 * in: list of d.vect commands from layer manager
     65 * Python
     66 * extract: symbol color1 color2 size width text
     67  * symbol
     68   * symbols for lines and areas must be created
     69   * icon if v.info returns lines, then use the new symbol for lines
     70   * icon if v.info returns areas, then use the new symbol for areas
     71   * use icon for points
     72   * use icon when explicitly specified (there is a default but GUI does not put it there unlike history)
     73   * if mixed feature types, either special symbols or separate entries or just use symbol (needs to be decided)
     74  * color1=color
     75  * color2=fill_color
     76  * size=size
     77  * width=width
     78  * text=title or name
     79 * generates d.graph file
     80 * GUI takes d.vect commands, calls this module and uses the output in d.graph when rendering
     81* 2nd stage
     82 * text format for customization
     83 * `symbol color1 color2 size width text...`
     84 * `legend/lines_z` red none 5 2 State border
     85
     86G7:d.graph code:
     87
     88{{{
     89color red
     90polygon
     9110 10
     9210 20
     9320 20
     9420 10
     95color black
     96move 22 10
     97size 24 24
     98text Red area
     99}}}
     100
     101See for example: source:grass-addons/tools/std_dataset_display.py and [https://grasswiki.osgeo.org/w/images/Std_dataset_nc_stripe.png the resulting image].
     102== Development ==
     103 
     104== Weekly reports ==
     105 === Bounding period ===
     106Setting up the environment. Installing Ubuntu, GRASS GIS.
     107 
     108 === Week 1 ===
     109TODO