= GRASS GIS 7.0.0 = [[TOC]] === What's new in a nutshell === [[Image(wiki:Grass7/NewFeatures:grass700RC2_startup.png, align=right, 300px)]] After many years of development the new stable major release GRASS GIS 7.0.0 is available. The graphical user interface based on wxPython (introduced in GRASS GIS 6.4) has been enriched with many '''[wiki:Grass7/NewFeatures new features]''' in order to make complex GIS operations available as simple as possible. The old !Tcl/Tk based GUI has been dropped. The developers have added important new functionality to the core system, among that the [http://grass.osgeo.org/grass70/manuals/libpython/pygrass_index.html new Python interface to the C library]. This new API permits users to create new GRASS GIS-Python modules in a simple way while yet obtaining powerful and fast modules. Furthermore, the vector library was significantly improved to make it faster and more efficient, along with support of [http://grasswiki.osgeo.org/wiki/Category:Massive_data_analysis huge files]. This requires an [http://grasswiki.osgeo.org/wiki/Convert_all_GRASS_6_vector_maps_to_GRASS_7 easy to manage topology format update] including a new spatial index. A lot of effort has been invested to standardize parameter and flag names. Finally, there are a series of new modules to analyse raster and vector data; some of the already existing modules were improved and made faster (some even 1000 x faster). For details see below. For a detailed list, see also http://trac.osgeo.org/grass/wiki/Grass7/NewFeatures === Release === * Release date: ''20 February 2015'' * Binaries: http://grass.osgeo.org/download/software/#g70x * Changelog: http://grass.osgeo.org/grass70/source/ChangeLog_7.0.0.gz * Source code: http://grass.osgeo.org/grass70/source/grass-7.0.0.tar.gz ([http://grass.osgeo.org/grass70/source/grass-7.0.0.md5sum md5sum]) === SVN Source Code === * Milestone: [milestone:"7.0.0"] * SVN Source Code Checkout 7.0.0: {{{ svn checkout http://svn.osgeo.org/grass/grass/tags/release_20150220_grass_7_0_0 }}} * SVN Checkout latest 7.0 release branch (including subsequently implemented bugfixes): {{{ svn checkout http://svn.osgeo.org/grass/grass/branches/releasebranch_7_0 }}} === Overview of changes === Between the '''versions [wiki:Release/6.4.0-News 6.4.0] and 7.0.0 more than ''10,500'' updates''' have been applied. See also the [https://www.openhub.net/p/grass_gis Open Hub] code analysis. [[Image(wiki:Grass7/NewFeatures:wxGUI_vnet.jpg, align=right, 200px)]] ==== New modules ==== * About [wiki:Grass7/NewFeatures#Modulescommands 100 new modules] ===== New Display modules ===== ''Summary: New portable display system, used in the graphical user interface but as usual also with command line support. Histogram support in legends added and much more.'' * G70:ximgview: new - View BMP images from the PNG driver. ===== New General modules ===== * G70:g.cairocomp: new - Overlays multiple X Pixmaps. * G70:g.ppmtopng: new - Converts between PPM/PGM and PNG image formats. ===== New GUI modules ===== ''Summary: The existing graphical user interface has been improved and extended with new functionality not easily found in other GIS:'' [[Image(wiki:Grass7/NewFeatures:wxGUI_iscatt.jpg, align=right, 200px)]] * G70:g.gui.animation: new - Animating of raster and vector time series * G70:g.gui.gcp: new - Graphical georectifier * G70:g.gui.iclass: new - Graphical tool for supervised classification of imagery data * G70:g.gui.mapswipe: new - Graphical map swiping tool * G70:g.gui.psmap: new - Graphical tool for creating hardcopy map output * G70:g.gui.rlisetup: new - Graphical tool for r.li module configuration file creation * G70:g.gui.timeline: new - Graphical comparison tool for temporal datasets ===== New Image Processing ===== ''Summary: Many new modules for creation of albedo, emissivity and vegetation index maps, TOA calibration, biomass growth and evapotranspiration estimation, image classification, hierarchical image segmentation, pansharpening, cloud detection in LANDSAT data, MODIS QA bitpattern management, graphical tool for Ground Control Points for geocoding imagery, Tasseled-Cap transform support for Landsat 8 and MODIS.'' * Large File Support (LFS) globally enabled * G70:i.albedo: new - Computes broad band albedo from surface reflectance * G70:i.aster.toar: new - Transforms calibrated digital number of ASTER data to top-of-atmosphere radiance, reflectance and temperature * G70:i.biomass: new - Computes biomass growth, precursor of crop yield calculation * i.class: rewritten in [http://grasswiki.osgeo.org/wiki/WxIClass wxGUI], see G70:g.gui.iclass * G70:i.eb.eta: new - Actual evapotranspiration for diurnal period (Bastiaanssen, 1995) * G70:i.eb.evapfr: new - Computes evaporative fraction (Bastiaanssen, 1995) and root zone soil moisture (Makin, Molden and Bastiaanssen, 2001). * G70:i.eb.hsebal01: new - Computes sensible heat flux iteration SEBAL 01 * G70:i.eb.netrad: new - Net radiation approximation (Bastiaanssen, 1995). * G70:i.eb.soilheatflux: new - Soil heat flux approximation (Bastiaanssen, 1995). * G70:i.emissivity: new - Computes emissivity from NDVI, generic method for sparse land * G70:i.evapo.mh: new - Computes evapotranspiration calculation modified or original Hargreaves formulation, 2001. * G70:i.evapo.pm: new - Computes potential evapotranspiration calculation with hourly Penman-Monteith. * G70:i.evapo.pt: new - Computes evapotranspiration calculation Prestley and Taylor formulation, 1972. * G70:i.evapo.time: new - Computes temporal integration of satellite ET actual (ETa) following the daily ET reference (ETo) from meteorological station(s). * G70:i.pansharpen: new - Brovey/PCA/IHS transform to merge multispectral and high-res panchromatic channels, replaces removed i.fusion.brovey * G70:i.landsat.toar: new, transforms calibrated digital number of LANDSAT data to top-of-atmosphere radiance, reflectance and temperature * G70:i.landsat.acca: new, Automated Cloud-Cover Assessment (ACCA) Algorithm * G70:i.modis.qc: new - apply Quality Control bitpattern map easily * G70:i.segment: new, identifies segments (objects) from imagery data. Supports hierarchical segmentation * G70:i.vi: new, calculation of vegetation indices * G70:wxGUI.gcp: new, a wxGUI extension which allows the user to create, edit, and manage Ground Control Points for geocoding imagery ===== New Raster modules ===== ''Summary: direct output to standard GIS raster formats implemented, new LAS LiDAR point binning using univariate statistics, support for WMS and WMTS, new multiple linear regression from raster maps (results conformant with R), resampling using an analytic kernel, and much more. Speed gain for viewsheds, cost surfaces, raster import, geomorphometry, watershed calculation.'' * Large File Support (LFS) globally enabled * G70:r.colors.out: new - Exports the color table associated with a raster map. * G70:r.external.out: new - Defines raster output format utilizing GDAL library. * G70:r.in.lidar: new - Create a raster map from LAS LiDAR points using univariate statistics. * G70:r.in.wms: new implementation - Downloads and imports data from WMS server; + WMTS and NASA !OnEarth support. * G70:r.latlong: new - Creates a latitude/longitude raster map. * G70:r.regression.multi: new - Calculates multiple linear regression from raster maps. * G70:r.resamp.filter: new - resamples raster map layers using an analytic kernel * G70:r.solute.transport: new - New module to compute the solute transport of groundwater in porous media using an implicit finite volume approach * G70:r.stats.zonal: new - Calculates category or object oriented statistics (accumulator-based statistics). * G70:r.stats.quantile: new - Compute category quantiles using two passes. * G70:r.stream.extract: new - Performs stream network extraction. * G70:r.sunhours: new - Calculates solar elevation, solar azimuth, and sun hours. * G70:r.unpack: new - Unpacks a raster map packed with r.pack. * G70:r.uslek: new - Computes USLE Soil Erodibility Factor (K). * G70:r.usler: new - Computes USLE R factor, Rainfall erosivity index. ===== New Vector modules ===== ''Summary: The topology engine has been improved in speed and precision. LAS LiDAR point clouds support added, new PostGIS 2 interface, various vector networking improvements, notable speed improvements for vector import, generalization, kernel density calculation, intersection, vector grid and hexagon calculation, automated line vertex densification in reprojection for error minimization, optionally constraining of random points to selected polygons, vector area skeletonizer added and much more.'' [[Image(wiki:Grass7/NewFeatures:v_hull_3d.png, align=right, 200px)]] * Large File Support (LFS) globally enabled * G70:v.colors.out: new - Exports the color table associated with a vector map. * G70:v.in.lidar: new - Converts LAS LiDAR point clouds to a GRASS vector map with libLAS. * G70:v.out.postgis: new - Exports a vector map layer to PostGIS feature table. * G70:v.pack: new - Packs up a vector map and support files for copying. * G70:v.unpack: new - Unpacks a vector map packed with r.pack. ===== New Raster3D modules ===== ''Summary: New modules for raster3D color table management, cleanup of the caching system.'' * G70:r3.colors: new - Creates/modifies the color table associated with a 3D raster map. * G70:r3.colors.out: new - Exports the color table associated with a 3D raster map. * G70:r3.out.bin: new - Exports a GRASS 3D raster map to a binary array. * G70:r3.in.bin: new - Imports a binary raster file into a GRASS 3D raster map. * G70:r3.out.netcdf: new - Export a 3D raster map as netCDF file. * G70:r3.retile: new - Retiles an existing 3D raster map with user defined x, y and z tile size. ===== New Temporal GIS modules ===== ''A [http://grass.osgeo.org/grass70/manuals/temporalintro.html new temporal GRASS GIS 7 framework] has been developed to manage, process and analyse (big) spatio-temporal environmental data. It supports querying, map calculation, aggregation, statistics and gap filling for raster, vector and raster3D data. A temporal topology builder is available to build spatio-temporal topology connections between map objects for 1D, 3D and 4D extents.'' [[Image(wiki:Grass7/NewFeatures:temporal_timeline_2D.jpg, align=right, 200px)]] * G70:t.create: new - Creates a space time dataset. * G70:t.info: new - Lists information about space time datasets and maps. * G70:t.list: new - List space time datasets and maps registered in the temporal database. * G70:t.remove: new - Removes space time datasets from temporal database. * G70:t.rename: new - Renames a space time dataset * G70:t.register: new - Registers raster, vector and raster3d maps in a space time datasets. * G70:t.shift: new - Temporally shift the maps of a space time dataset. * G70:t.snap: new - Temporally snap the maps of a space time dataset. * G70:t.sample: new - Samples the input space time dataset(s) with a sample space time dataset and print the result to stdout. * G70:t.support: new - Modifies the metadata of a space time dataset. * G70:t.topology: new - Lists temporal topology of a space time dataset. * G70:t.unregister: new - Unregisters raster, vector and raster3d maps from the temporal database or a specific space time dataset. * G70:t.rast.aggregate.ds: new - Aggregated data of an existing space time raster dataset using the temporal topology of a second space time dataset. * G70:t.rast.aggregate: new - Temporally aggregates the maps of a space time raster dataset by a user defined granularity. * G70:t.rast.colors: new - Creates/modifies the color table associated with each raster map of the space time raster dataset. * G70:t.rast.export: new - Exports space time raster dataset. * G70:t.rast.extract: new - Extracts a subset of a space time raster datasets. * G70:t.rast.list: new - Lists registered maps of a space time raster dataset. * G70:t.rast.import: new - Imports space time raster dataset. * G70:t.rast.mapcalc: new - Perform spatio-temporal mapcalc expressions on temporal sampled maps of space time raster datasets. * G70:t.rast.neighbors: new - Performs a neighborhood analysis for each map in a space time raster dataset. * G70:t.rast.gapfill: new - Replace gaps in a space time raster dataset with interpolated raster maps. * G70:t.rast.out.vtk: new - Exports space time raster dataset as VTK time series. * G70:t.rast.series: new - Performs different aggregation algorithms from r.series on all or a subset of raster maps in a space time raster dataset. * G70:t.rast.to.rast3: new - Converts a space time raster dataset into a raster3d map. * G70:t.rast.univar: new - Calculates univariate statistics from the non-null cells for each registered raster map of a space time raster dataset. * G70:t.rast3d.mapcalc: new - Performs r3.mapcalc expressions on maps of sampled space time raster3d datasets. * G70:t.rast3d.list: new - Lists registered maps of a space time raster3d dataset. * G70:t.rast3d.extract: new - Extracts a subset of a space time raster3d dataset. * G70:t.rast3d.univar: new - Calculates univariate statistics from the non-null cells for each registered raster3d map of a space time raster3d dataset. * G70:t.vect.extract: new - Extracts a subset of a space time vector dataset. * G70:t.vect.export: new - Export a space time vector dataset.as GRASS specific archive file * G70:t.vect.import: new - Import a space time vector dataset archive file * G70:t.vect.list: new - Lists registered maps of a space time vector dataset. * G70:t.vect.observe.strds: new - Observes specific locations in a space time raster dataset over a period of time using vector points. * G70:t.vect.db.select: new - Prints attributes of vector maps registered in a space time vector dataset. * G70:t.vect.what.strds: new - Store raster map values at spatial and temporal positions of vector points as vector attributes. * G70:t.vect.univar: new - Calculates univariate statistics of attributes for each registered vector map of a space time vector dataset ===== Bash and Python Scripts ===== [[Image(wiki:Grass7/NewFeatures:wxGUI_gmodeler.png, align=right, 200px)]] All Bash scripts known from GRASS GIS 6 have been converted to Python for portability and speed reasons. Users may obviously continue to run their shell scripts as before. Furthermore a completely [http://grass.osgeo.org/grass70/manuals/libpython/pygrass_index.html new Python interface] has been developed. ==== Major module changes ==== * Significant performance improvements for many modules (magnitudes faster) * G70:r.li suite: completely rewritten and tested * Improved vector digitizer (G70:g.gui.vdigit) * Improved graphical modeler with Python script output (G70:g.gui.gmodeler) * SQLite is the default DB backend * Native support for [http://grasswiki.osgeo.org/wiki/PostGIS#Direct_access_to_PostGIS_data_.28GRASS_7_only.29 PostGIS vector format] including [http://grasswiki.osgeo.org/wiki/PostGIS_Topology Topology extension] * See detailed change list [wiki:Grass7/NewFeatures#Modulescommands here] ==== Removed modules ==== Some modules present in GRASS GIS 6 have been removed due to architecture changes or replacements: * see [wiki:Grass7/NewFeatures#Replacedandremovedmodules here] ==== Renamed modules ==== A few modules have been renamed for overall consistency: * see [wiki:Grass7/NewFeatures#Renamedmodules here] ==== Option changes: flags and parameters harmonized ==== With the goal of standardization and ease of use, flags and parameters have been harmonized: * see [wiki:Grass7/NewFeatures#Optionschanges change list] * old parameter names are still recognized, and the user receives a notification about the respective new parameter name. ==== Minor module changes ==== * Thousands of changes, see the detailed [http://grass.osgeo.org/grass70/source/ChangeLog_7.0.0.gz ChangeLog] ==== GUI changes ==== * stability and usability fixes, portability fixes * new GUI modules [wiki:Grass7/NewFeatures#GraphicalUserInterface Graphical User Interface] * wxGUI/SQLBuilder: better support of MS-Windows * updated to better support wxPython3 ==== Library changes ==== * Large File Support (LFS) globally enabled for raster and vector data, see also [http://grasswiki.osgeo.org/wiki/GRASS_GIS_Performance#Large_raster_data_processing GRASS GIS Performance: Large raster data processing] * New spatial index for vector data * Numerical stability fixes for centroid calculation * More robust topology engine * For more see [wiki:Grass7/NewFeatures#GRASS7Librarychanges GRASS 7 Library changes] ==== Map projection changes ==== * stability fixes (upper case and UK/US notions) * automated line vertex densification for vector data ==== Portability changes ==== * MS-Windows: 64bit compliant; default prompt changed to cmd.exe * Mac OSX, IBM/AIX, SUN/Solaris, FreeBSD, netBSD, Hurd: stability fixes * Python 3 compatibility fixes * wxPython 3 compatibility fixes ==== Manual pages ==== * Many more examples and screenshots added * Improved CSS * Table of content (TOC) added to all module pages * New index of G70:keywords * New index of G70:topics ==== Message translation updates ==== * Many languages updated with many new translations ([http://grass.osgeo.org/development/translations/#statistics see stats]) === GRASS GIS 7 Addons === Many new addons are available: * see http://grass.osgeo.org/grass70/manuals/addons/ === Closed tickets === ==== Closed bugs since the last release ==== [[TicketQuery(status=closed&milestone=7.0.0&type=defect&order=priority)]] ==== Closed wishes since the last release ==== [[TicketQuery(status=closed&milestone=7.0.0&type=enhancement&order=priority)]] ==== Closed tasks since the last release ==== [[TicketQuery(status=closed&milestone=7.0.0&type=task&order=priority)]] == Upgrading GRASS database == * [https://grasswiki.osgeo.org/wiki/Upgrading_GRASS_database Upgrading GRASS database]