wiki:Grass8Planning

Version 16 (modified by marisn, 3 years ago) (diff)

Add comment on image subgroups

GRASS 8 planning: ideas

For now just a brainstorming zone...

Raster library

  • organization of raster file storage layout: have one raster folder per map like for vector data or raster3D
    • for fp maps: move fcell to cell, eliminating empty cell file
  • implement GRASS_RASTER_TMPDIR_MAPSET like it exists for vector data (GRASS_VECTOR_TMPDIR_MAPSET), i.e. change all .tmp/ to variable in source code in init/grass.py, gis/open.c, gis/file_name.c, raster library
  • maintain history as it is already for vector maps
  • synchronize metadata between raster and vector maps
  • keep track of open raster maps (already done in the R structure)
  • Storage in tiles instead of by row (See Grass7/RasterLib)
  • Merge NULL file into main data array (See Grass7/RasterLib)
  • save more raster metadata like number of non-null cells, mean and stddev (see GDAL)
  • MASK: add support for writing raster data (not only reading)

Discussions at Aug 2017:

  • add tile support for better large map support (Sentinel, global data, ...), supporting massive parallel computations
    • tiles could then be even stored on different nodes for speed optimization
    • e.g. develop a new virtual raster mapset "VRT" (special like PERMANENT)
      • reading:
        • or add tile support deeply into raster lib (Rast_get_row()
        • use name scheme? make use of segment library
        • problem: due to row compression always whole row is read even if computation region is smaller
      • writing:
        • it is more complex

Imagery library

  • get rid of subgroups. No real need for that... (but overcomplication of usage)
    • or strengthen subgroups. One of options could be auto creating some "magic" subgroups as i.e. "_all" - all raster maps in a group (aka if subgroup is not set, use all maps from group); "_initial" - only imported remote sensing layers (equals "_all" if no new maps are added later); "RGB" - if source is RGB or RGB can be defined (I would love to be able to have an option to choose a group in d.rgb and get RGB subgroup selected as a default instead of searching for separate channels); "MLC" subgroup - see #2483.

Vector library

  • keep track of opened vector maps
  • keep track of dblinks to not remove table connected to multiple vector maps
  • get rid of dbf as database backend
  • ...

Python library

GUI

  • review (again) startup window, setting database/location/mapset, initial (default) location
  • single window interface as an option (first step: moving code to controller classes and panels)
  • avoid the need for setting up path to packaged before imports (now we need to mix code and imports), e.g. grassgui package next to grass package
  • integrated Addon and GUI toolboxes

Manual pages

  • generate Sphinx manuals (rst converter is already in man/)

Bug reports

Blockers

defect type tickets:

#3023
Change default behavior of d.title to draw instead of output text
#3055
Revise monochromatic color tables

task type tickets:

#969
move color structs to colors.h?
#2681
Remove legacy meaning of LOCATION variable

Critical issues

enhancement type tickets:

#3474
Change the GRASS GIS start up to more beginner friendly

Further issues