An open source software application by definition is software that GIS users can freely access and modify the source code for. Open source projects typically are worked on by a community of volunteer programmers. Commercial GIS software, like Esri’s ArcGIS Pro, are fee-based and proprietary systems.
Base Programming Languages of Open Source GIS Software Programs
Open source GIS programs are based on different base programming languages. Three main groups of open source GIS (outside of web GIS) in terms of programming languages are: “C” languages, Java, and .NET.
C Language Open Source GIS Software
The first group would be the group that uses “C” language for its implementation. This is the more mature of the groups of open source GIS, probably for the simple reason that is the group that has been working on GIS software applications the longest and has a long history of resuse of code.
The libraries in the “C” group, from the base infrastructure, and include some capabilities like coordinate reprojection that make them very useful and popular.
Popular “C” based open source GIS software applications include GRASS, a project started in 1982 by the US Army but is now open source, and QGIS (otherwise known as Quantum GIS).
JAVA Language Open Source GIS Software
The second group of Open Source GIS would be the ones that use JAVA programming language as the implementation language. JTS, central library for the Java GIS development, offers some geospatial functions that allow to compare objects and return a boolean true/false result indicating the existence (or absence) of any questioned spatial relationship.
Other operators, like Union or Buffer, which are very hard to code, are offered in this group making it very appreciated by GIS developers. GeoTools, Geoserve, gvSIG, and OpenMap, are among the most popular open source GIS in this group of JAVA tools.
.NET Language Open Source GIS Software
The third most influential group of Open Source GIS would be the one that integrates applications that use “.NET” as the implementation language. SharpMap and WorldWind are the most popular of these applications.
Outside of the three major language groups, open source web mapping is another group. Population open source web mapping includes OpenLayers and MapBuilder, widely used due to their simplicity and accessibility.
Listed on the next page are available open source GIS based applications you can download written for a variety of platforms and in various languages categorized by desktop GIS and web mapping applications.
Open Source GIS Software
FlowMap is a freeware application designed to analyze and display flow data. This application was developed at the Faculty of Geographical Sciences of the Utrecht University in the Netherlands.
Platforms: Windows OS
GMT Mapping Tools
GMT is a free, public-domain collection of ~60 UNIX tools that allow users to manipulate (x,y) and (x,y,z) data sets (including filtering, trend fitting, gridding, projecting, etc.) and produce Encapsulated PostScript File (EPS) illustrations ranging from simple x-y plots through contour maps to artificially illuminated surfaces and 3-D perspective views in black and white, gray tone, hachure patterns, and 24-bit color.
Platforms: UNIX, Macintosh
Geographic Resources Analysis Support System (GRASS) is the public domain GIS software application originally developed by the US Government. GRASS is probably the most well-known open source and original GIS software applications. GRASS is a raster-based GIS, vector GIS, image processing system, graphics production system, data management system, and spatial modeling system. GRASS can be downloaded for free.
Platforms: Linux, Macintosh, Sun Solaris, Silicon Graphics Irix, HP-UX, DEC-Alpha, and Windows OS
Further Resources: GRASS GIS
gvSIG is an open source GIS application written in Java.
Platforms: Windows, Macintosh, Linux, UNIX
MapWindow GIS is open source GIS application that can be extended through plugins. The application is built using Microsoft’s .NET
OpenJUMP GIS is an open source GIS written in Java through a collaborative effort by volunteers. Formerly known as JUMP GIS, the application can read shapefiles and GML format files.
Platforms: Windows, Macintosh, Linux, UNIX
QGIS is an Open Source Geographic Information System (GIS) and is one of the more popular and use friendly open source GIS packages available.
More: Getting Started With QGIS: Open Source GIS
Platforms: Linux, Unix, Mac OSX, and Windows.
SPRING is a GIS and Remote Sensing Image Processing system with an object-oriented data model which provides for the integration of raster and vector data representations in a single environment.
Platform: Windows, Linux, UNIX, Macintosh
TNTLite MicroImages, Inc. provides TNTlite as a free version of TNTmips , the professional software for geospatial data analysis. The free TNTlite product has all the features of the professional version, except TNTlite limits the size of Project File objects, and TNTlite enables data sharing only with other copies of TNTlite (export processes are disabled). Can either be downloaded or ordered on CD.
uDig GIS is a free, open source GIS desktop application that runs on Windows, Linux and MacOS. uDig was designed to use OGC’s OpenGIS standards such as WMS, WFS and more. One-click install allows you to view local shapefiles, remote WMS services and even directly edit your own spatial database geometries.
Platforms: Windows, Linux, Macintosh
Open Source Web Mapping
Written in java, GeoMajas is an open source GIS framework for the web.
Java based open source server software that allows users to edit and share geospatial data and uses open standards to spublish GIS data.
MapGuide Open Source
First introduced as open source by Autodesk in 2005, MapGuide Open Source allows for the development of web based mapping.
An open source mapping development framework for web mapping applications based on the Pylon Pythons web framework.
MapServer is an Open Source development environment for building spatially enabled Internet applications. The software builds upon other popular Open Source or freeware systems like Shapelib, FreeType, Proj.4, libTIFF, Perl and others.
OpenWebGIS is an open source Geographic information system. It is a web-based system and it functions both inonline, and offline modes. In OpenWebGIS users can create, export and add layers in many common geospatial formats (gml, kml, geoJSON, gpx, shapefile, tiff, arcgrid, csv, osm), make vector layers with points, lines, polygons, add WMS layers, use WPS, style their own data, share as embedded maps, share as web pages, customize Interface, use analysis functions, create 2D, 2.5D and 3D maps, charts and so on. In Android App you can use sensors, WiFi statistic in you mobile device and refer this data to geographic coordinates. The OpenWebGIS blog and a full list of articles about OpenWebGIS provide a lot of information about possibilities and specific features of OpenWebGIS.
Platform: Windows, Linux, UNIX, Macintosh
Further Resources: full list of articles about OpenWebGIS
Built on open source libraries (Mapnik, node.js, backbone.js,express and CodeMirror). The Chicago Tribune included TileMill in a series entitled Making Maps using PostGIS, Mapnik, TileMill, and Google Maps.
Open Source GIS Components and Packages
A free (GPLed) reader software for the EDBS format has been released: EDBS_extra 2.0. This open source utility is written in ‘C’. The page is mostly in German.
GIS/RS application for Linux and Gnome platforms. Open source code is available for downloading from this site.
GeoTools is an open source, Java GIS toolkit for developing standards compliant solutions. It’s modular architecture allows extra functionality to be easily incorporated. GeoTools aims to support OpenGIS and other relevant standards as they are developed.
MITAB is an Open Source (i.e. Free) C++ library to read and write MapInfo .TAB (binary) and .MIF/MID files. It is based on the OGR library which is an implementation of the Open GIS Consortium Simple Feature specification.
OpenEV is a library, and reference application for viewing and analysing raster and vector geospatial data. Download for Windows 98/NT/2000, Linux, Irix or Solaris systems.
OpenMap is a FREE JavaBeans open source software component for viewing spatial data. JavaBeans is a component specification for software written in the Java language. In contrast to other GIS software components which offer both data viewing and analysis capabilities, OpenMap is primarily for data viewing and offers very little in the way of analysis functionality.
rmap is a package that will allow you to generate images of the earth from a distance or fairly zoomed in. The code is a small C binary that reads a datafile of vectors to generate the image.
Tkgeomap is a set of extensions to the Tcl/Tk scripting language for manipulating and displaying geographic data.
Topology Framework .NET (TF.NET)
TF.NET represents a managed topology manipulation API capable of handling managed objects representation of topological entities based on other popular APIs, exposing it’s JTS-based common topology manipulation core to them. Supported external managed APIs include: OSGeo Feature Data Objects (FDO) geometries, OSGeo MapGuide Server (FDO-based) geometries and Autodesk ObjectARX geometries (a.k.a. entities) and, most recently, Oracle’s ODP.NET. Functions provided include: Spatial predicates (based on the DE-9IM model), Overlay functions (intersection, difference, union, symmetric difference), Buffer, Convex hull, Area and distance functions, Topological validity checking, Coordinate systems manipulation (transformations), Topological graphs manipulation, and more. TF.NET libraries are free, licensed under GNU LGPL and available for download from Google Code page.
Vhclmaps is a package of map viewers and spatial data servers that work with map databases.
Also referred to as the Open Source Geospatial Foundation, this entity supports the collaborative development of open source GIS software.
Open Source Imagery Processing
Open source software for processing imagery.
State of Open Source GIS
Intensive survey by Paul Ramsey published in September of 2007 that reviews open source GIS grouped by programming language. The survey looks at C, Java, .NET and web-based GIS.