Assignment 1 – Visualisation of Various Datasets
The pdf version for this assignment is found here.
Please also look at the pdf for more info and images!
In this exercise you will work with various datasets (micro and macro) in the software ParaView. The aim is that you should get a basic understanding of the visualisation pipeline and how the data is represented. You should be able to set up a basic visualisation pipeline in ParaView and also be able to control how your data is mapped (color, orientation, size, etc.).
Instructions how to install ParaView on the PC lab computers and on your own computer are found here. Please check the instructions and make sure that you have a working ParaView installation set up before the lab session starts!
To get a quick overview of ParaView and its GUI, we recommend that you skim through Sections 1.1-1.4, 2.1, 3.1-3.2, and 4.1 in the official ParaView Guide PDF. You will find the documentation for the many available filters in Chapter 5 of the PDF (for each task, we will indicate which of these filters that you should use). You might also find some of the Wiki pages helpful.
For each part of the assignment, you should create a separate ParaView state file that contains your solution. In ParaView, you save the current state using File->Save state, and load a previous state using File->Load state. To avoid mixing different states, you should also do Edit->Reset session before loading a state.
Requirements to pass: Present a working solution to one of the lab assistants (Fredrik or Raphaela) during the lab sessions.
OBTAINING THE DATASETS
Download and extract the following zip-file that contains the datasets for the assignment.
PART 1: ISOSURFACE EXTRACTION (MICRO)
Your task is to extract and display isosurfaces of the probability density of a hydrogen atom volume dataset. The isosurfaces should be color-mapped according to the isovalue (density) and a colorbar should be available. You should also show an outline of the volume, and create a small animation that alters the isovalue and the isosurface.
To get started, go to File->Open in ParaView and select the file hydrogen.vtk that contains the vtkStructuredPoints dataset for the atom (you can also load it by right-clicking on the Pipeline browser and selecting Open). The dataset will now appear in the window’s Pipeline browser, but will not yet be loaded. To actually load the data, press the Apply button under Properties. The volume should now appear as an outline in the RenderView.
|Part 1 – Task|
PART 2: MOLECULAR DYNAMICS (MICRO)
The data from the simulations (provided by Daniel Spångberg) are stored in two files: atoms.csv that contains 3D coordinates and radii of a number of atoms, and connections.csv that defines how the atoms are connected to each other.
One way to visualise the molecules is to represent each atom with a sphere with a radius corresponding to the radius of the atom. Some of the atoms have quite similar radii, so to make it easier to distinguish between these we can color-map the spheres depending on their radius. Finally, the connections between the atoms can be made with cylinders. The image to the right show an example of what the result can look like (OBS! this is not necessarily the only correct solution).
ParaView cannot generate line segments directly from the points and indices in the two CSV files, so for the connections, you should use the file lines.vtp that contains a vtkPolyData dataset for the lines. You can look at the Python script generate_lines.py and the output lines.csv if you are interested to see how the line segments were generated.
|Part 2 – Task|
PART 3: AIR CURRENTS (MACRO)
This visualisation task is about showing the direction and speed of air currents over North America. The dataset wind.vtk is a vtkStructuredPoints dataset and contains vector data (velocities) and scalar data (speeds). There are several ways of visualizing this, but some standard techniques are streamlines, stream particles, oriented glyphs, slice planes, etc. An example is shown in the image to the right (OBS! again, this is not necessarily the only correct solution).
|Part 3 – Task|