Accessibility Skip to Global Navigation Skip to Local Navigation Skip to Content Skip to Search Skip to Site Map Menu

SURV519 Spatial Analysis and Programming

Intermediate level spatial analysis, including topology and networks, and supporting spatial data structures, 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 paper teaches students to expand their effective use of a GIS by firstly providing an in-depth grounding in intermediate-level spatial analysis functions based on topology and networks. An underpinning of how spatial databases are used to store and manipulate different types of spatial data (eg point, line, polygon, grid cell features) is essential support to this and will also be covered. This "under the hood" emphasis is expanded significantly as the major spatial data structures (raster and vector) are explored from a programmatic (Python) and algorithmic point of view, finally applied to the customisation of a major GIS.

Paper title Spatial Analysis and Programming
Paper code SURV519
Subject Surveying
EFTS 0.1667
Points 20 points
Teaching period Second Semester
Domestic Tuition Fees (NZD) $1,307.93
International Tuition Fees (NZD) $5,151.03

^ Top of page

Prerequisite
SURV 208 or SURV 218 or SPIN 201
Restriction
SURV 310, SURV 319, SURV 508
Eligibility
This paper supports the 500-level courses in the BAppSc (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: Dr Tony Moore
Lecturer: Aubrey Miller
Paper Structure
The paper covers topics on:
  • The nature and sources of spatial data
  • Intermediate spatial analysis through topological operations
  • Network analysis and geocoding
  • Relational data concepts such as modelling, querying, indexing and design
  • The algorithmic basis for spatial data structures and analysis
Teaching Arrangements
In general there will be two lectures, one programming tutorial and a 3-hour lab per week, supporting the assessment schedule (consisting of spatial analysis and programming labs and two self-defined projects).
Textbooks
M. Worboys and M. Duckham (2005) GIS: A Computing Perspective, 2nd Edition

Supplemental: P. Longley, M. Goodchild, D.Maguire, D. Rhind (2015) Geographic Information Systems and Science, 4th edition.
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 goals of the paper are
  • To use intermediate spatial analysis concepts, such as topology, network data structures and geocoding, mastering these concepts and applying them practically
  • To introduce and substantiate specific spatial database concepts in spatial indexing
  • To provide a strong foundation of knowledge in the nature of spatial data, backed up by some spatial database theory
  • To master the concept of spatial data as a unique and complex resource
  • To be aware of the real-world context of data, including their distributed nature, services, metadata and sharing
  • To understand the relational theory (also object-oriented and object-relational concepts) of databases
  • To be able to apply that knowledge in the through their querying using SQL
  • To introduce the broad functionality of a commercial spatial database, including advanced spatial modelling concepts
  • To establish basic knowledge of how spatial data structures and some simple analysis techniques are implemented, through algorithms and corresponding Python code
  • To 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
  • To provide practical project experience in either:
    • The development, documentation and demonstration of a spatial analysis procedure (which may use collected data) using Python in conjunction with ArcGIS
    • Collecting data for, creating, editing, documenting and demonstrating a spatial database using ESRI's ArcGIS software, using relational principles

^ Top of page

Timetable

Second Semester

Location
Dunedin
Teaching method
This paper is taught On Campus
Learning management system
Blackboard

Lecture

Stream Days Times Weeks
Attend
L1 Friday 10:00-11:50 28-34, 36-41

Practical

Stream Days Times Weeks
Attend
P1 Thursday 15:00-17:50 28-34, 36-41

Tutorial

Stream Days Times Weeks
Attend
T1 Thursday 13:00-13:50 28-34, 36-41

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 paper 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 and is cemented by a major final project in the paper assessment.

Paper title Spatial Algorithms and Programming
Paper code SURV519
Subject Surveying
EFTS 0.1667
Points 20 points
Teaching period Second Semester
Domestic Tuition Fees Tuition Fees for 2018 have not yet been set
International Tuition Fees Tuition Fees for international students are elsewhere on this website.

^ Top of page

Prerequisite
SURV 102 and (SURV 208 or SURV 218 or SPIN 201)
Restriction
SURV 319
Recommended Preparation
COMP 150
Eligibility
This paper supports the 500-level courses in the BAppSc(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: Assoc Prof Tony Moore
Lecturer: Aubrey Miller
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 3-hour lab per week, supporting the assessment schedule (consisting of spatial programming labs and two self-defined projects).
Textbooks
M. Worboys and M. Duckham (2005) GIS: A Computing Perspective, 2nd Edition
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:
  • 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)
  • Provide practical project experience in the development, documentation and demonstration of a spatial processing, analysis or visualisation procedure (which may use collected data) in a commercial GIS (e.g. using Python in conjunction with ArcGIS or open-source GIS), web, geostatistical, 3D model or dynamic model context

^ Top of page

Timetable

Second Semester

Location
Dunedin
Teaching method
This paper is taught On Campus
Learning management system
Blackboard

Lecture

Stream Days Times Weeks
Attend
L1 Friday 10:00-11:50 28-34, 36-41

Practical

Stream Days Times Weeks
Attend
P1 Thursday 16:00-17:50 28-34, 36-41

Tutorial

Stream Days Times Weeks
Attend
T1 Thursday 14:00-15:50 28-34, 36-41