NCSU GeoForAll Lab
NCSU OSGeo Research and Education Laboratory


  • r.sim.water result in 3D

    GIS/MEA582: Geospatial Analysis and Modeling

    The course explains digital representation and analysis of geospatial phenomena and provides foundations in methods and algorithms used in GIS analysis. Special focus is on terrain modeling, geomorphometry, watershed analysis and introductory GIS-based modeling of landscape processes (water, sediment). The course includes analysis from lidar data, coastal change assessment and 3D visualization. All assignments are done in two software packages – GRASS GIS and ArcGIS – to untangle general geospatial analytical concepts from software specifics. The GRASS GIS part is very popular even outside NCSU.

  • Gear wheel

    GIS610-003/603: Tools for open geospatial science

    The course covers emerging field of open science and deals with reproducibility and replicability challenges of computational research. The students gain a hands-on experience with tools used by scientists to create geospatial research which can be validated by the wider geospatial community. Several geospatial open source tools are discussed in connection with general-purpose and text authoring tools such as next generation interactive documents and revision control tools. Although the focus of the course is open science, many of the tools used in the course are used in the industry. The course covers how open source communities and software development process work and how to apply this for research in a lab group.

  • UAV before start

    GIS595/MEA792: UAV/lidar Data Analytics

    The course covers monitoring, analysis, and modeling of 3D landscape change using Unmanned Aerial Systems (UAS) and lidar data. The principles of UAS data collection, processing of 3D point clouds and the resulting terrain models are explained followed by hands-on experience with multitemporal data collected by the NCSU NextGen Air Transportation (NGAT) program. The course also covers techniques for analysis and visualization of lidar data time series and outputs of dynamic simulations, including immersive visualization at the Hunt library facilities. The students will have the opportunity to work with the Tangible Landscape system to explore impact of 3D terrain change on landscape parameters and processes.

  • Designing new development by hand

    LAR 582.017: GIS for Designers

    This course will focus on how GIS can be an integral part of the creative design process. You will be taught terrain, hydrological, and overlay modeling and analysis in two and three dimensions. You will also learn how to generate and develop the seed of a design in GIS as part of an iterative design process. With visual programming students will learn how conceptual and logical models can structure and generate designs, linking creative abstraction, computational exploration, structured decision-making, and expression. As part of an iterative design process students will learn workflows linking 3D GIS, 3D modeling, and rapid prototyping (3D printing, CNC fabrication, and laser cutting).

Courses are offered through different educational programs at NCSU Center for Geospatial Analytics.


  • Tangible Landscape and Python

    Using GRASS GIS through Python and tangible interfaces

    Learn about scripting, graphical and tangible interfaces for GRASS GIS, the powerful desktop GIS and geoprocessing backend. We start with the Python interface and finish with Tangible Landscape, a tangible interface for GRASS GIS. This workshop was created for FOSS4G NA 2016.


    Workshop on urban growth modeling with FUTURES

    This workshop introduces GRASS GIS and FUTURES urban growth modeling framework. This workshop was created for US-IALE 2016 Annual Meeting.

  • Source code

    How to write a Python GRASS GIS 7 addon

    Introduction to all parts of scripting for GRASS GIS using Python programming language. Advanced techniques required to create fully blown GRASS GIS module which can be published as an addon are shown as well. This workshop was created for FOSS4G Europe 2015.

  • Image analysis

    Introduction to GRASS GIS

    Introduction to geospatial processing with GRASS GIS. The course covers basic control of the graphical user interface, invoking GRASS modules in different ways including scripting and various geospatial analysis.

  • Precipitation in North Carolina

    Spatio-temporal data handling and visualization in GRASS GIS

    First, we will introduce you to GRASS GIS 7, including its spatio-temporal capabilities and you will learn how to manage and analyze geospatial data time series. Then, we will explore new tools for visualization of spatio-temporal data. You will create both 2D and 3D dynamic visualizations directly in GRASS GIS 7. Additionally, we will explain the Space Time Cube concept using various applications based on raster and vector data time series. You will learn to manage and visualize data in space time cubes (voxel models). No prior knowledge of GRASS GIS is necessary, we will cover the basics needed for the workshop. This workshop was created for FOSS4G 2014.

  • Erosion-deposition projection

    Soil erosion and deposition modeling

    This tutorial focuses on modeling erosion and deposition patterns in complex landscapes. It explains the concepts behind soil erosion and deposition estimation including different methods (USLE, USPED). The GIS workflows are available for both GRASS GIS and ArcGIS including detailed instructions and figures. The tutorial has been prepared using data from the Ft. Hood installation. Basic GIS knowledge is recommended.

  • Graph of versions

    Git and GitHub workshop

    This workshop covers the differences between Git and GitHub and provides brief introduction to basic Git commands to help researchers start using it for their own projects.

More materials available in list of old and less related courses and tutorials.