wiki:Grass7/NewFeatures72

List of new features in GRASS GIS 7.2

GRASS GIS 7.2 is the version of active development with a first 7.2.0 stable release in December 2016. In total, it comes with more than 1900 fixes and improvements with respect to the stable releases 7.0.5. The development was officially moved to a dedicated release branch in May 2016 (r68500). This page summarizes the manifold new features which have been added to GRASS 7.2.

Startup screen of GRASS GIS 7.2.0

What's new in a nutshell

After almost two years of development the new stable major release GRASS GIS 7.2 is available. The graphical user interface based on wxPython has been further improved in order to make complex GIS operations available as simple as possible. The developers have added an important new functionality to the core system: the Python interface to the C library got extended which permits users to create new GRASS GIS-Python modules in a simple way while yet obtaining powerful and fast modules. Furthermore, a series of new modules to analyse raster and vector data was added. For details see below.

Releases

Graphical User Interface

GRASS GIS 7.2 graphical user interface comes now as a new multi-threaded implementation (faster!) along with a new Data tab in the Layer Manager. This tab, the Data Catalog, is a new wxGUI component for browsing, modifying and managing GRASS maps (G72:g.gui.datacatalog). It also allows to add maps to the display, search by map names using regular expressions and switch mapset. GRASS GIS 7.2 also comes with native simple Python editor. There have also been several improvements for a better cartographic composition with the Map Display. One of the most important additions in this sense is the new vector legend module (G72:d.legend.vect, see below) and several improvements to existing display modules. Rendering engine is multi-threaded which causes significant improvement when rendering more map layers together. Also a new Raster digitizer was added.

GRASS 7.2 Data Catalog Simple Python editor in GRASS GIS wxGUI with v.buffer example
Data tab G72:g.gui.datacatalog Simple Python editor
d.legend.vect example
New vector legends with G72:d.legend.vect

Modules (commands)

A series of new modules has been added and many improved.

Display modules

Two new modules were added: G72:d.legend.vect, which allows to easily display a vector legend in the active graphics monitor and, G72:d.frame to manage display frames in the user's graphics monitor. Several display modules, especially those related to the cartographic composition from the Map Display, have received major improvements within GSoC 2016. Some of these improvements include: a new option to specify length and units in G72:d.barscale, new options to show background and ticks in the color scale, the possibility to switch to logarithmic legend and options to add title and have more control over labels in G72:d.legend, more symbols available in G72:d.northarrow, a background option in G72:d.grid, among others.

G72:d.vect and G72:d.vect.thematic come now with a legend tab with various legend-related options: icon_area to represent areas in legend, icon_line to represent lines in legend, legend_label to set the label to be displayed in the legend, -s flag to suppress the display of the layer in the legend. Moreover, these two modules now produce a legend file with instructions for G72:d.legend.vect that facilitates its use in the command line or scripts.

G72:d.legend.vect

General modules

This new release comes with a new module, G72:g.search.modules, that allows to search for a GRASS GIS command based on keywords. It will search for the given keyword among GRASS modules names, descriptions, keywords and optionally manual pages, too.

Moreover, G72:g.extension, the module that allows to install and manage GRASS Addons, has been notably improved to support the download, compilation and installation of modules using simplified URLs to GitHub, GitLab and similar repository services, local directories, remote and local ZIP and TAR files, as well as GRASS GIS trac.

Raster modules

Several modules have been improved for this new release; among them, G72:r.in.lidar and G72:r.texture, are the ones with the most significant changes. Details of those changes and some others, are listed below:

  • G72:r.in.lidar
    • base_raster option which allows for the conversion to LAS file Z values to height above ground using an existing elevation raster. Additionally, with -d a base_raster is used in its native resolution to enable performing statistics on with coarse resolution while reducing the heights of point using the base_raster in its full resolution.
    • -j option which allows the use of Z values for filtering of points, yet performs statistical analysis on the intensity values
    • intensity_range and intensity_scale to filter and modify intensity values
    • file option to specify list of files (file paths) in a text file (merges multiple LAS files on input as if it would be one file)
  • G72:r.texture - major rewrite fixing many bugs and making the results much more useful (#3210)
  • G72:r.out.xyz - new -i flag to include no data values in the export
  • G72:r.mapcalc - fixed a bug that gave wrong results with specific uses of neighborhood modifier (#3067).
example r.in.lidar
G72:r.in.lidar

Raster3D modules

Two new modules were added to the already impressive number of raster 3D processing capabilities of GRASS GIS:

  • G72:r3.flow - Computes 3D flow lines and 3D flow accumulation
  • G72:r3.gradient - Computes gradient of a 3D raster map and outputs gradient components as three 3D raster maps
example r3.flow
G72:r3.flow

Vector modules

Two new vector modules have been added to this new release of GRASS GIS:

v.decimate example
G72:v.decimate

Temporal GIS modules

One of the most important additions to the temporal framework are the algebra modules. These modules, namely G72:t.rast.algebra, G72:t.rast3d.algebra and G72:t.vect.algebra, allow to perform temporal and spatial operations on/with space time datasets using the temporal algebra. The temporal algebra provides a wide range of temporal operators and functions, i.e.: temporal relations, temporal selection with or without conditional statements, logical operators, temporal operators, temporal neighbourhood modifiers, among others. A new module to sample a space time raster dataset at specific vector point coordinates was also added (G72:t.rast.what).

slightly bigger file
G72:g.gui.tplot

Scripting and batch jobs

The new exec interface of the startup script allows to execute GRASS commands or entire scripts in a non-interactive session. See the examples at the GRASS startup program manual page.

grass /path/to/db/location/mapset --exec script.py

User Manuals - Documentation

New Graphical Index

This new release of GRASS GIS comes with a new Graphical Index of functionalities, to make it easier to search for specific modules.

screenshot for the graphical index
New Graphical index.

User manual page improvements

There have also been significant documentation improvements in several User Manuals: G72:g.gui.gmodeler, G72:r.in.lidar, G72:v.overlay, G72:v.select, ​G72:ps.map, among others. A new page was written about GRASS GIS Database which extends the explanations of Quickstart (helptext.html) in context of database.

Moreover, a link to the source code and history of the module was added at the end of each User manual page.

example for g.gui.gmodeler example for v.select
G72:g.gui.gmodeler: A model to perform average statistics. G72:v.select: Example of DISJOINT operator.

GRASS 7 Library changes

There have also been important changes in GRASS libraries.

  • New library for numerical functions (see programmer's manual)
  • Support for new raster data compression methods: NONE, ZLIB, LZ4, BZIP2.
  • Support for NULL file compression: At time, it must be explicitly turned on with export GRASS_COMPRESS_NULLS=1
  • Several improvements, updates and fixes in libproj and libgis.

Source Code Portability

The changes to libiostream now allow the compilation of G72:r.viewshed, G72:r.terraflow and G72:i.atcorr with C++11 and C++14 as well as C++98 strict setting. On the other hand, G72:r.sim.water and G72:r.sim.sediment now work with more versions of MinGW and MS Windows thanks to a better library-executable separation

GRASS GIS 7.2 Addons

More than fifty (50!) new addons are now enlarging the already impressive list of extensions available including new tools to work with Landsat-8 data, to perform landscape change assessment, to calculate geometry parameters for raster objects, to run machine learning classification, to approximate a periodic time series and create approximated output, to perform decomposition of time series, to calculate the Terrain Ruggedness Index, to extract features of input map which overlay features of a clip map, to import GBIF's species distribution, Natura 2000 spatial data and OpenStreetMap data into GRASS GIS, and much more:

Migrating from GRASS GIS 6 to version 7.x

  • see here for changes in parameter names and changed flags
  • see here for removed modules and renamed modules
  • see here for renamed options
Last modified 6 years ago Last modified on Oct 11, 2018, 7:28:29 PM

Attachments (8)

Download all attachments as: .zip

Note: See TracWiki for help on using the wiki.