wiki:Grass7/NewFeatures74

Version 58 (modified by veroandreo, 6 years ago) ( diff )

--

This is a DRAFT page for the future release of GRASS GIS 7.4

List of new features in GRASS GIS 7.4

AT TIME: trunk

GRASS GIS 7.4 is the version of active development with a first 7.4.0 stable release in December 2017. In total, it comes with more than 480 fixes and improvements with respect to the stable releases 7.2.x. The development was officially moved to a dedicated release branch in XXX (rXXX). This page summarizes the manifold new features which have been added to GRASS 7.4.

Startup screen of GRASS GIS 7.2.0

What's new in a nutshell

After almost 1 year of development the new stable major release GRASS GIS 7.4 is available. Efforts have concentrated on making the user experience even better, providing many small, but useful additional functionalities to modules and further improving the graphical user interface. Several modules were migrated from addons to the core GRASS GIS package and the suite of tools for ortho-rectification was reimplemented in the new GRASS 7 GUI style. In order to support the treatment of massive datasets, new compression algorithms were introduced and NULL file are now also compressed by default.

Releases

Graphical User Interface

GRASS GIS 7.4 graphical user interface comes with a new ....

  • Data Catalog (available in the Data tab) can now move and copy data between mapsets and locations, reproject rasters and vectors. This can be performed using right mouse click or drag and drop.
  • Show computational region function is now available also from menu Settings > Computational region > Show current region extent in Map Display.
  • Help and Advanced search buttons in Modules tab to show documentation (manual pages) for modules
  • Selected sample locations can be now downloaded from the Startup windows using a Download button next to location selection.
  • The GRASS GIS Spatial Database Directory is now automatically filled (if available on disk) when user starts GRASS GIS for the first time.
  • Access errors for creating location are now shown in the GUI instead of a traceback in the command line.
  • Map Display title is now more readable and says GRASS GIS Map Display: name - location/mapset.
  • Map Display new web browser-like shortcuts for re-rendering
  • Simple Python Editor is now available from the File menu.
  • New module G74:g.gui.image2target (ported from GRASS 6) to georectify a map. It allows managing Ground Control Points for 3D correction.
  • New module G74:g.gui.photo2image to correct scanning distortions of a scanned aerial photo
  • Font can be selected interactively in module dialogs and there are some new symbols for vectors.

Modules (commands)

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

General modules

When a new location is created from vector data, G74:g.proj uses the default region s=0 n=1 w=0 e=1 res=1 to avoid potentially invalid region settings (r71491).

Raster modules

A new module, G74:r.geomorphon, to calculate geomorphons (terrain forms) and associated geometry using machine vision approach has been integrated (moved from Add-ons) into the core functionalities of GRASS GIS. A very nice addition to G74:r.out.gdal is the possibility to create overviews which enhances the compatibility with other GIS software packages.

G7:r.in.gdal and G7:r.external provide support for import of raster maps exceeding 90N or 90S or with an EW extent larger than 360 degrees. Moreover, for imported lat-lon maps created with GIS software that uses limited floating point precision (common problem), an automatic fix of floating point precision errors in the grid geometry was implemented. Furthermore, G74:r.in.gdal and G74:r.import allow to optionally limit the import map to the current region (through -r flag and extent=region, respectively).

Several other raster modules have been improved with new options, flags or parallelization support:

Vector modules

The already impressive list of vector functions in GRASS GIS now includes two new modules that have been moved from add-ons: G74:v.clip: to extract features of input map which overlay features of clip map and G74:v.profile: a vector point and line profiling tool complementing G74:r.profile.

G74:v.in.ogr has received several improvements in the past year. Some : Fix import of OSM data (r71464)

  • G74:v.in.ogr: When a new location is created, use the default region s=0 n=1 w=0 e=1 res=1 to avoid potentially invalid region settings (r71490)
  • G74:v.in.ogr: Support new curve geometry types starting with GDAL 2.0 (r71508, r71514)
  • G74:v.in.ogr: code restructuring (r71550)
    • projection checks are now performed for all input layers, not only the first layer
    • projection checks are a bit more strict and more verbose in case of trouble
    • the new GDAL 2.2 API is used where possible, avoiding deprecated functions
    • OSM import is properly working, also with spatial filters and with GDAL < 2.2
    • attribute import and table creation is finished before cleaning to avoid lengthy cleaning if tables can not be created, and to avoid a rare segfault when opening a GRASS database driver
    • the code has been restructured to make it a bit less unreadable and to fix the logic of steps (e.g. check output only if output is created)

Several vector modules have been significantly improved with new options, flags

  • G74:v.vect.stats: New cat and where options for area and point vector maps to perform counts or estimate statistics only with selected points over selected areas (r71543)
  • G74:v.out.ogr: New -l flag to list supported formats (r71552)
  • G74:v.out.ogr: Default format changed from Esri Shapefile to OGC GeoPackage (#3428)
  • G74:v.edit: tool=merge has an improved iteration over list of lines, improved skip invalid lines and zero length lines; added Vedit_extend_lines, improved intersection check; better handling of Vedit_connect_lines by extending both lines; fixed snapping to background map.
  • G74:v.external: new where option
  • G74:v.out.ogr: added -l flag to list supported formats (sync to r.out.gdal)
  • G74:v.rast.stats: added new -d flag for line densification (as in G74:v.to.rast) and corresponding tests
  • G74:v.what: new -m flag to query overlapping features
  • G74:v.patch: build topology after appending
  • G74:v.surf.rst: new parallel implementation and testsuite

Imagery modules

G74:i.atcorr now includes support for the atmospheric correction of 7 new satellite images: Pleiades1a, Pleiades1b, Spot6, Spot7, Sentinel-2A, Rapideye, Worldview3 and mod09GA QA definitions was added to G74:i.modis.qc. In addition to the already existent region growing algorithms, G74:i.segment now also includes mean shift.

Temporal GIS modules

The main change in the temporal framework is the introduction of spatial topological operators to the temporal algebra in G74:t.rast.algebra. Moreover, the quantile method has been added to G74:t.rast.series. On the other hand, G74:t.rast.what now has a new flag -v that returns the category for vector points map and a bug in NULL values was fixed, so null value definitions are now passed to G74:r.what correctly. G74:t.rast.export has now support for GDAL options to support GeoTiff compression.

Scripting

A new class has been implemented in PyGRASS, MultiModule, which enables temporary region environment for multi module runs. This class allows to put multiple modules into the parallel module queue, for example coupled G74:g.region and G74:r.mapcalc calls, that must be run in a specific order but many of these combined calls should run in parallel.

User Manuals - Documentation

GRASS 7 Library changes

In the past year of development, there were several changes in different GRASS GIS libraries. The most relavant changes are described below:

  • In the libraster there is now NULL file compression by default and longitude wrapping has been fixed for lat/lon locations
  • The temporal framework has now support for spatial topological operators to the temporal algebra, several tests were added as well as a new function to convert granularity to a smaller granularity, and raster region specific parallel processing has been enabled by means of the MultiModule new class in PyGRASS.
  • libproj now provides improved integration of GDAL and streamlining of spatial reference system handling with better support for US datums, as well as new functions (GPJ_grass_to_wkt2 and GPJ_grass_to_osr2).
  • libgis has received several major and minor enhancements. There are new functions such as G_adjust_window_ll to automatically fix lat-lon errors and the lat-lon restrictions when reading DMS coords were relaxed. On the other hand, G_window_percentage_overlap now accounts for N == S or E == W. The function G_compare_projections has an enhanced ellipsoid check. Moreover, BZIP2 compression has been improved for speed and support for HTML/CSS hash hexadecimal colors has been added in G_str_to_color.

Source Code Portability

GRASS GIS 7.4 Addons

There are 15 new addons that now enlarge the already impressive list of extensions available:

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

Attachments (12)

Note: See TracWiki for help on using the wiki.