• Length:
    5 Weeks
  • Effort:
    4–6 hours per week
  • Price:

    FREE
    Add a Verified Certificate for $99 USD

  • Institution
  • Subject:
  • Level:
    Intermediate
  • Language:
    English
  • Video Transcript:
    English

Associated Programs:

Prerequisites

Completion of Course-1: Procedural modelling of Spatial Computational Thinking program.

About this course

Skip About this course

As part of our “Spatial Computational Thinking” program, this “Semantic Modelling” course focuses on augmenting geometric models with an additional layer of semantic data. You will learn how geometric entities can be tagged with additional attribute values of different data types, and how these attributes can then be used for querying your models.

During the course, you will build on the foundations developed in the previous course, where the focus was on procedural modelling using geometric entities. In this course, you will first discover that the geometric entities actually have a topological structure that allows you to manipulate these models at a much deeper level.

You will then learn how to add semantics to your models, thereby allowing you to create data-rich spatial information models. This will allow you to apply powerful procedural data modelling techniques, especially the ability to query your semantic model and extract subsets of information.

In the process, you will also further develop your coding skills in the semantic world of computer science. You will revisit the loops and conditional and discover how these can be nested to create more complex control flows. You will also discover how list and dictionary data structures can be nested to create more complex types of data structures.

The modelling exercises and assignments during this course will progress from where the previous course left off. The geometric complexity of the modelling exercises and assignments will increase, but more important is the addition of layers of attribute data to all type of geometric entities, including positions, topological components, geometric objects, and collections of geometric objects. You will also learn how to add attributes to define colour, materials, and other visual properties.

The course prepares you for the next course in the “Spatial Computational Thinking” program, focusing on generative modelling of more complex types of spatial information models.

What you'll learn

Skip What you'll learn

Learning algorithmic thinking:

  • How semantics can be used to augment geometric models
  • The difference between geometry, topology, and attributes
  • How query languages can be used to extract data from models
  • Become familiar with a range of existing spatial data formats and representations

Learning semantic modelling:

  • Modelling with geometry, topology, and collections
  • Attaching attribute data to geometry, topology, and collections
  • Querying and filtering data in the model using attributes
  • Pushing attributes through the topological hierarchy
  • Visualizing models with colour and materials
  • Understanding polygon normals and their impact on light
  • Importing and exporting geometric and geospatial data models

Learning coding:

  • Developing complex data structures using nested lists and dictionaries
  • Using nested loops and nested conditionals
  • Strategies for looping: using a counter or iterating over a list?
  • How to avoid deep nesting of loops using data structures

Learning Möbius Modeller:

  • The Möbius Spatial Information data model
  • The 3D viewer and the attribute tables
  • Interrogating models in the 3D viewer

Meet your instructors

Patrick Janssen
Associate Professor
National University of Singapore
Derek Pung
Researcher
National University of Singapore
Pradeep Alva
Researcher
National University of Singapore

Pursue a Verified Certificate to highlight the knowledge and skills you gain $99.00

View a PDF of a sample edX certificate
  • Official and Verified

    Receive an instructor-signed certificate with the institution's logo to verify your achievement and increase your job prospects

  • Easily Shareable

    Add the certificate to your CV or resume, or post it directly on LinkedIn

  • Proven Motivator

    Give yourself an additional incentive to complete the course

  • Support our Mission

    EdX, a non-profit, relies on verified certificates to help fund free education for everyone globally

Frequently asked questions

What software will I need?
The only software you need is a recent version of the Chrome browser. It is free and is available for all major operating systems, including Windows, Mac, and Linux. During the course, we will use a free and open-source software app called Möbius Modeller. Even after completing the course, you will be able to continue using this app for free.

What hardware will I need?
You do not need any specialized hardware to complete the exercises in the course. A typical configuration may be a laptop with 4GB RAM and a 2.9GHz CPU processor. Note that also a dedicated graphics card will result in smoother user experience.

Do I need to know any programming languages before I start?
No, this course is designed for beginners and we will step you through all the programming required.

Will I be able to write code after completing this program?
Yes. You will learn procedural programming, using typical imperative programming-language constructs. You will also learn how to create computational procedures that are able to manipulate spatial data in diverse ways.

Will I be able to share the computational models that I create?
Yes. The models that you create (either during the course or after) can be shared either by exporting the models in other formats or by publishing them on the internet as interactive web pages. Publishing a model is straightforward and is one of the techniques that you will learn.

Will I learn how to program in any (Python, Javascript etc.) language?
You will learn the fundamental concepts of programming, such as variables, data types, control flow, data structures and functions. Although we will not specifically teach languages such as Python, Java, and Javascript, the fundamental concepts that you learn will be transferable to all these languages.

What is the passing grade for the course?
An overall average for all assignments of 70% is required to pass the course.

Do I need to achieve 70% on each assignment?
No, you need an average grade for all assignments of 70%. This means you can do poorly or miss an assignment as long as you do well enough on other assignments to achieve 70% overall.

How will my computational modelling assignments be graded?
Your computational modelling assignments will be graded using an automated online grader. For each assignment, you will be given specific instructions on the model that you need to create. You will upload your answer model, and within a few seconds, you will receive the result, with feedback. If the model you uploaded is not correct, you will have multiple chances to try again.