Assignment 5
Assignment 5
Final project
1 Introduction
Suppose you were invited to create a city simulator to support the decision-making process
in urban development-related tasks. Motivational aspects related to this assignment can be
found in [1]. The goal of this project is to implement features related to the visualization of
spatiotemporal urban data.
You have the choice between two projects:
• The project described in Section 2 in which fewer tasks are compulsory, but you are required
to use WebGL.
• The project described in Section 3 in which more tasks are compulsory, but you can use
any WebGL-based technology such as Three.js.
You can work in groups of 2 or 3. Each member of the group should submit the project on
Blackboard.
2 Project 1
This project consists of the following tasks:
3. Build a 3D urban scene composed of houses and multiple buildings, with different dimen-
sions and shapes.
5. Model the presence of the sun and simulate the shadow variation over time, in a single day,
on the park area.
6. Compute a heatmap that encodes the shadow variation over time in the park area.
7. Create an animation to illustrate the light intensity variation at different positions of the
scene. Use bars to encode the light intensity scores.
1
3 Project 2
This project consists of the following tasks:
1. Create a web application to support the visualization of spatiotemporal urban data.
2. The web application must be created using WebGL or associated technologies (e.g., Three.js).
3. Build a 3D urban scene composed of houses and multiple buildings, with different dimen-
sions and shapes.
4. Include a rectangle-shaped park in the scene.
5. Model the presence of the sun and simulate the shadow variation over time, in a single day,
on the park area.
6. Compute a heatmap that encodes the shadow variation over time in the park area.
7. Create an animation to illustrate the light intensity variation at different positions of the
scene. Use bars to encode the light intensity scores.
8. Implement features to support the insertion, update, and deletion of buildings. You may
use a predefined set of possible buildings.
9. Implement features to support zoom-in, zoom-out, and pan operations in your scene.
10. Associate textures with buildings.
4 Bonus
A bonus of 10% will be added to the final grade if the following additional requirements are
addressed:
1. Consider that one of the buildings is a landmark. Compute the landmark visibility [2].
2. Create a function to compute the sky exposure at a particular position in the scene [2].
This position should be defined based on a mouse click event.
5 Requirements
• Your development files should be submitted on Blackboard in a .zip file.
• They should be accompanied by a brief (at most 4 pages) report, describing your work.
Describe clearly all assumptions made.
• Include also an individual report, in which you reflect on the following questions:
– Please summarize in brief, knowledge gained during the project development.
– Which concepts and techniques related to computer graphics were used as a part of
this project? Describe how those concepts were handled in the project.
– Which concepts and techniques related to simulation and visualization were used as
a part of this project? Describe how those concepts were handled in the project.
– What challenges did you face during the project? Kindly reflect on the choice of
development strategy used for the project.
2
References
[1] H. Doraiswamy, J. Freire, M. Lage, F. Miranda, and C. T. Silva. Spatio-temporal urban
data analysis: A visual analytics perspective. IEEE Computer Graphics and Applications,
38(5):26–35, 2018.