Version 139 (modified by martinl, 8 years ago) (diff)


List of new features in GRASS 7

The development of GRASS GIS 7 was started in April 2008 (r31142).

Graphical User Interface

Display modules

  • old display architecture removed including related modules
  • new display architecture based on CAIRO and wxPython
  • G7:ximgview: new

General modules

Image processing

Raster modules

Vector modules

3D raster modules


  • All Bash scripts converted to Python, especially for portability reasons and speed.
  • Initialization scripts also based on Python

GRASS 7 Library changes


  • new library for numerical functions


  • SQLite is now default database driver
  • Added support for OFTDate, OFTTime, OFTDateTime


  • WPS support implemented in parser (c, c++, python, shell)
  • Libraster separated out into own library
  • Store metadata in $HOME/.grass7 directory


  • Implementation of BLAS level 1,2 and 3 functions which are in use by all gmath solver, the gpde library and many modules.
  • ATLAS wrapper for BLAS level 1 functions (level 2, and 3 are work in progress)


  • WIP in OGSF - feature styling rewrite that will allow to assign custom (e.g. attribute based) style to points AND lines in NVIZ (might be extended to polys and any 3D vectors too).



  • Large File Support (LFS) added
  • New topology, requires rebuilding topology with ( when switching between GRASS 6.x and GRASS 7
    • New spatial index: faster queries (>10x for large vectors), less memory for opening an existing vector
    • New option added to use a file-based version of the spatial index which can be activated by setting the new shell environment variable GRASS_VECTOR_LOWMEM (e.g., in bash: 'export GRASS_VECTOR_LOWMEM=1' and deactivated with 'unset GRASS_VECTOR_LOWMEM')
    • New main topology: reduced memory and disk space requirements, generally faster processing
  • Cleaning function 'break polygons' faster, less memory
  • Cleaning function 'snap lines' faster and modifications are minimized: a vertex is snapped to the closest anchor vertex, not to the first anchor vertex found which might not be the closest anchor vertex.
  • Simple Features API/OGR read/write support (ongoing)
  • Support for color tables (see lib/vector/Vlib/color_*.c files)
  • Vector network analysis for large datasets (as other vector operations) should require much less memory in GRASS 7 because of substantial vector library changes

User Manual - Documentation

API improvements

Source Code Portability

  • All shell scripts have been rewritten in Python
  • MS-Windows portability improved, new spawn functions (backported to 6.5 and 6.4), global LFS available by default
  • MacOSX portability improved

Removed modules

Some modules present in GRASS 6 have been removed due to architecture changes or replacements:

  • d.ask, d.colors, d.extend, d.extract, d.frame, d.mapgraph, d.measure,,, d.what.rast, d.what.vect, d.zoom (old display architecture decommissioned)
  • d.histogram: integrated in wxGUI
  • g.ask: use g.findfile
  • g.setproj: use Location Wizard or 'g.proj -c' (state plane by county selection needs to be ported)
  • i.points: new graphical version in wxGUI
  • i.class,, i.vpoints (need to be ported; old display architecture decommissioned)
  • raster:
  • v.digit (new wxPython digitizer)

Renamed modules

Renamed options

Some parameter names (options) have been renamed to achieve greater consistency. User scripts from GRASS 6 may need minor updates to run with GRASS 7 according to the changes listed below:

Global module changes

  • fs= (field separator) -> separator=

Display module changes

  • G7:d.correlate
    • layers -> map
  • G7:d.erase
    • color -> bgcolor
    • background -> bgcolor
  • G7:d.rast
    • catlist and vallist options merged into new values option
    • overlay flag inverted to new opaque flag
  • G7:d.rast.leg
    • rast -> raster
  • G7:d.vect
    • wcolumn -> width_column
    • wscale -> width_scale
    • rot_column -> rotation_column

Database management module changes

General map management module changes

  • G7:g.mapsets
    • addmapset,removemapset -> operation
    • measure -> method
  • G7:g.pnmcomp
    • background -> bgcolor
  • G7:g.region
    • n -> north
    • s -> south
    • e -> east
    • w -> west
    • t -> top
    • b -> bottom

Image processing module changes

Raster module changes

Vector module changes

  • G7:v.edit
    • t -> b
    • measure -> method
    • layer=integer -> layer=string
    • file -> input
    • vect -> output
    • wfs -> url
    • input -> map
  • G7:v.out.ogr: the meaning of the -c flag has been reverted in GRASS 7 because the default must be to export only features with categories in the selected layer (the user needs to select a GRASS vector layer for v.out.ogr which will be translated to an OGR layer). If features without category are exported, the logic of matching a GRASS vector layer to a OGR layer is violated. This is particularly true for areas with islands which are in simple feature terminology polygons with holes.
  • G7:v.rast.stats
    • colprefix -> column_prefix
    • input -> map
  • G7:v.what.vect
    • vector -> map
    • qvector -> qmap
    • maskmap -> mask
    • treefile -> treeseg
    • overfile -> overwin
    • elev -> elevation

Attachments (10)

Download all attachments as: .zip