# Whitebox Geospatial Analysis Tools

Whitebox Geospatial Analysis Tools (GAT) is an open-source and cross-platform Geographic information system (GIS) and remote sensing software package that is distributed under the GNU General Public License. It has been developed by the members of the University of Guelph Centre for Hydrogeomatics and is intended for geospatial analysis and data visualization in research and education settings. The Whitebox GAT project started as a replacement for the Terrain Analysis System (TAS), a geospatial analysis software package written by John Lindsay. The current release supports raster and vector (shapefile) data structures. There is also extensive functionality for processing laser scanner (LiDAR) data containing LAS files.
Whitebox GAT is extendable. Users are able to create and add custom tools or plugins using any JVM language. The software also allows scripting using the programming languages Groovy, JavaScript, and Python.

## Analysis tools

Whitebox GAT contains more than 385 tools to perform spatial analysis on raster data sets. The following is an incomplete list of some of the more commonly used tools:
* GIS tools: Cost-distance analysis, buffer, distance operations, weighted overlays, multi-criteria evaluation, reclass, area analysis, clumping
* Image processing tools: k-means classification, numerous spatial filters, image mosaicing, NDVI, resampling, contrast enhancement
* Hydrology tools: DEM preprocessing tools, flow direction and accumulation (D8, Rho8, Dinf, and FD8 algorithms), mass flux analysis, watershed extraction
* Terrain analysis tools: surface derivatives (slope, aspect, and curvatures), hillshading, wetness index, relative stream power index, relative landscape position indices
* LiDAR tools: IDW interpolation, nearest neighbour interpolation, point density, removal of off-terrain objects (non-ground points)

## Software transparency

The Whitebox GAT project links the software's development and user communities, known as software transparency, or open-access software (considered an extension of open-source software). The philosophy of transparency in software states that the user:
* Has the right to view the underlying workings of a tool or operation, and
* Should be able to access this information in a way that reduces, or ideally eliminates, any barriers to viewing and interpreting it.
This concept was developed as a response to the code base of many open-source projects being so massive, and its organization so complex, that individual users often find the task of interpreting the underlying code too daunting when they are interested in a small portion of the overall code base, e.g. if the user would like to know how a particular tool or algorithm operates. Furthermore, when the software's source code is written in an unfamiliar programming language, the task of interpreting the code is made even more difficult. For some open-source projects, these characteristics can divide the development and user communities, often restricting future development to a few individuals that have been involved in the project during the earliest periods of development. The View Code button that is present on all Whitebox GAT tools is the embodiment of this software-transparency philosophy by pointing the user to the specific region of the source-code that is relevant to a particular tool, also allowing for code conversion to other programming languages. The Whitebox GAT logo is also representative of the open and transparent characteristic of the software, being a transparent glass cube, open on one face.