Red X iconGreen tick iconYellow tick icon

Overview

Spatial data structures and algorithms, underpinned by spatial databases and programming, including customisation of GIS software.

Geographic Information Systems (GIS) have gained increasing acceptance as important tools for the organisation, analysis, and visualisation of data pertinent to a host of land / resource management and planning activities.  This course teaches students to expand their effective use of a GIS by looking “under the hood” of this technology and science. Firstly, an in-depth grounding in the major spatial data structures (raster and vector) is provided. In this way, the major aspects of GIS (analysis, storage, visualisation) are explored from a programmatic (Python) and algorithmic point of view. 

An important aspect to be introduced in this paper is the customisation of ArcGIS (i.e. adding extra functions) using programming – along with scripting, these are skills that can be adapted to make the most of the expanding open-source GIS world (e.g. QGIS). Programming for the web and geostatistical, 3D model and dynamic model scripting will also be examined. More specifically, the paper will cover spatial databases being used to store and manipulate different types of spatial data (e.g. point, line, polygon, grid cell features), as well as an algorithmic look at the some of the simpler spatial analysis and visualisation. This computational approach to GIS is essential to support and underpin proficiency in utilising GIS.

About this paper

Paper title Spatial Algorithms and Programming
Subject Surveying
EFTS 0.1482
Points 20 points
Teaching period Semester 1 (On campus)
Domestic Tuition Fees ( NZD ) $1,505.56
International Tuition Fees Tuition Fees for international students are elsewhere on this website.
Prerequisite
(COMP 121 or COMP 150 or COMP 151 or SURV 102) and (SURV 208 or SURV 220)
Restriction
SURV 319
Eligibility

This paper supports the 500-level courses in the BSc(Hons) GIS degree, PGDipAppSci in GIS, MAppSc in GIS and MSc in GIS.

Contact
tony.moore@otago.ac.nz
Teaching staff

Co-ordinator and Lecturer: Professor Tony Moore
Lecturer: Aubrey Miller
Lecturer: Dr. Greg Leonard

Paper Structure
The paper covers topics on:
  • Raster and vector spatial data models and structures
  • Spatial algorithms for data analysis, visualisation and processing
  • Dynamic modelling techniques based on raster and vector structures
  • Programming, scripting and customisation in commercial GIS, open-source GIS, web, geostatistical, 3D modelling and dynamic modelling environments
Teaching Arrangements

In general there will be two lectures, one programming tutorial and a 2-hour lab per week, supporting the assessment schedule (consisting of tutorial completion, three programming and customisation labs, and a final exam).

Textbooks

M. Duckham, Q(C). Sun and M. Worboys (2024) GIS: A Computing Perspective, 3rd Edition. Boca Raton: CRC Press.

Graduate Attributes Emphasised
Interdisciplinary perspective, Lifelong learning, Scholarship, Communication, Critical thinking, Environmental literacy, Information literacy, Research, Self-motivation.
View more information about Otago's graduate attributes.
Learning Outcomes

The objectives of this paper are to:

  • Establish foundational knowledge of the spatial data models (raster and vector), structures and algorithms that underpin GIS, practically reinforced by activities in the Python programming language with a leading GIS
  • Use the same approach to understand and implement simple spatial analysis and visualisation techniques
  • Introduce the process of customisation of a GIS, interacting with the GIS with Python code to implement a procedure that currently does not specifically exist in the GIS
  • Provide a strong foundation of knowledge in the nature of spatial data as a special, unique and complex resource and its manipulation using programming
  • Introduce other geospatial programming and scripting contexts, such as open-source GIS, programming for the web and scripting for geostatistics (e.g. R, Matlab), 3D modelling (e.g. Unity) and dynamic modelling (e.g. NetLogo)

Overview

Spatial data structures and algorithms, underpinned by spatial databases and programming, including customisation of GIS software.

Geographic Information Systems (GIS) have gained increasing acceptance as important tools for the organisation, analysis and visualisation of data pertinent to a host of land/resource management and planning activities. This course teaches students to expand their effective use of a GIS by looking "under the hood" of this technology and science. Firstly, an in-depth grounding in the major spatial data structures (raster and vector) is provided. In this way, the major aspects of GIS (analysis, storage and visualisation) are explored from a programmatic (Python) and algorithmic point of view.

An important aspect to be introduced in this paper is the customisation of ArcGIS (i.e., adding extra functions) using programming - along with scripting, these are skills that can be adapted to make the most of the expanding open-source GIS world (e.g., QGIS). Programming for the web and geostatistical, 3D model and dynamic model scripting will also be examined. More specifically, the paper will cover spatial databases being used to store and manipulate different types of spatial data (e.g., point, line, polygon, grid cell features), as well as an algorithmic look at some of the simpler spatial analysis and visualisation. This computational approach to GIS is essential to support and underpin proficiency in utilising GIS.

About this paper

Paper title Spatial Algorithms and Programming
Subject Surveying
EFTS 0.1482
Points 20 points
Teaching period Semester 1 (On campus)
Domestic Tuition Fees Tuition Fees for 2027 have not yet been set
International Tuition Fees Tuition Fees for international students are elsewhere on this website.
Prerequisite
(COMP 121 or COMP 150 or COMP 151 or SURV 102) and (SURV 208 or SURV 220)
Restriction
SURV 319
Eligibility

This paper supports the 500-level courses in the BSc(Hons) GIS degree, PGDipAppSci in GIS, MAppSc in GIS and MSc in GIS.

Contact
tony.moore@otago.ac.nz
Teaching staff

Co-ordinator and Lecturer: Professor Tony Moore
Lecturer: Aubrey Miller
Lecturer: Dr Greg Leonard

Paper Structure

The paper covers topics on:

  • Raster and vector spatial data models and structures
  • Spatial algorithms for data analysis, visualisation and processing
  • Dynamic modelling techniques based on raster and vector structures
  • Programming, scripting and customisation in commercial GIS, open-source GIS, web, geostatistical, 3D modelling and dynamic modelling environments
Teaching Arrangements

In general there will be two lectures, one programming tutorial and a 2-hour lab per week, supporting the assessment schedule (consisting of tutorial completion, three programming and customisation labs, plus a final exam).

Textbooks

M. Duckham, Q(C). Sun and M. Worboys (2024) GIS: A Computing Perspective, 3rd Edition. Boca Raton: CRC Press.

Graduate Attributes Emphasised
Interdisciplinary perspective, Lifelong learning, Scholarship, Communication, Critical thinking, Environmental literacy, Information literacy, Research, Self-motivation.
View more information about Otago's graduate attributes.
Learning Outcomes

The objectives of this paper are to:

  • Establish foundational knowledge of the spatial data models (raster and vector), structures and algorithms that underpin GIS, practically reinforced by activities in the Python programming language with a leading GIS
  • Use the same approach to understand and implement simple spatial analysis and visualisation techniques
  • Introduce the process of customisation of a GIS, interacting with the GIS with Python code to implement a procedure that currently does not specifically exist in the GIS
  • Provide a strong foundation of knowledge in the nature of spatial data as a special, unique and complex resource and its manipulation using programming
  • Introduce other geospatial programming and scripting contexts, such as open-source GIS, programming for the web and scripting for geostatistics (e.g., R, Matlab), 3D modelling (e.g., Unity) and dynamic modelling (e.g., NetLogo)
Back to top