Topology ToolKit


Tutorials

Please find below a few video tutorials regarding:
  1. TTK installation
  2. TTK in action!
   ·  a) with scalar data
   ·  b) with bivariate scalar data
   ·  c) with uncertain scalar data
   3. TTK development
   ·  a) with Python
   ·  b) with VTK/C++
   ·  c) with pure C++
   ·  d) extending TTK with a new module


1. TTK installation

This video shows how to install TTK on a fresh new install of Ubuntu Linux 16.10. Please our installation page to read the detailed instructions.


2. TTK in action!

In the following, we assume that you successfully installed TTK (see the above video and our installation page). We will also assume that you downloaded the TTK data tarball from our download page (for instance, into your ~/Downloads/ directory). From there, enter the following commands under Linux (omit the $ character) to decompress the data tarball:

$ mkdir ~/ttk
$ mv ~/Downloads/ttk-data-0.9.2.tar.gz
$ cd ~/ttk
$ tar xvzf ttk-data-0.9.2.tar.gz
$ rm ttk-data-0.9.2.tar.gz

You can now proceed with the following videos to see how to reproduce the examples shown in the gallery section with the example data-sets you just de-compressed. Let's see TTK in action!

a) With scalar data

Dragon demo

Assuming you properly installed TTK and decompressed the TTK data tarball as described at the beginning of this section, you can now reproduce the Dragon demo by entering the following commands (omit the $ character):

$ cd ~/ttk/ttk-data-0.9.2
$ paraview --state=states/dragon.pvsm

Morse persistence demo

Assuming you properly installed TTK and decompressed the TTK data tarball as described at the beginning of this section, you can now reproduce the Morse persistence demo by entering the following commands (omit the $ character):

$ cd ~/ttk/ttk-data-0.9.2
$ paraview --state=states/morsePersistence.pvsm

Built-in Example 1

Assuming you properly installed TTK and decompressed the TTK data tarball as described at the beginning of this section, you can now reproduce the first built-in example demo by entering the following commands (omit the $ character):

$ cd ~/ttk/ttk-data-0.9.2
$ paraview --state=states/BuiltInExample1.pvsm

Interaction site demo (video tutorial to come)

Assuming you properly installed TTK and decompressed the TTK data tarball as described at the beginning of this section, you can now reproduce the interaction site demo by entering the following commands (omit the $ character):

$ cd ~/ttk/ttk-data-0.9.2
$ paraview --state=states/interactionSites.pvsm

Viscous fingering demo (video tutorial to come)

Assuming you properly installed TTK and decompressed the TTK data tarball as described at the beginning of this section, you can now reproduce the viscous fingering demo by entering the following commands (omit the $ character):

$ cd ~/ttk/ttk-data-0.9.2
$ paraview --state=states/viscousFingering.pvsm

Morse molecule demo

Assuming you properly installed TTK and decompressed the TTK data tarball as described at the beginning of this section, you can now reproduce the Morse molecule demo by entering the following commands (omit the $ character):

$ cd ~/ttk/ttk-data-0.9.2
$ paraview --state=states/morseMolecule.pvsm

b) With bivariate scalar data

Built-in Example 2

Assuming you properly installed TTK and decompressed the TTK data tarball as described at the beginning of this section, you can now reproduce the second built-in example by entering the following commands (omit the $ character):

$ cd ~/ttk/ttk-data-0.9.2
$ paraview --state=states/BuiltInExample2.pvsm


Note

In order to execute this demo, you need to have patched the ParaView source tree, as described in the installation instructions (step 4).

Bivariate toy demo (video tutorial to come)

Assuming you properly installed TTK and decompressed the TTK data tarball as described at the beginning of this section, you can now reproduce the bivariate toy demo by entering the following commands (omit the $ character):

$ cd ~/ttk/ttk-data-0.9.2
$ paraview --state=states/bivariateToy.pvsm

Bivariate toy CSP peeling demo (video tutorial to come)

Assuming you properly installed TTK and decompressed the TTK data tarball as described at the beginning of this section, you can now reproduce the bivariate toy CSP peeling demo by entering the following commands (omit the $ character):

$ cd ~/ttk/ttk-data-0.9.2
$ paraview --state=states/bivariateToyCspPeeling.pvsm

Mechanical demo (video tutorial to come)

Assuming you properly installed TTK and decompressed the TTK data tarball as described at the beginning of this section, you can now reproduce the mechanical demo by entering the following commands (omit the $ character):

$ cd ~/ttk/ttk-data-0.9.2
$ paraview --state=states/mechanical.pvsm

c) With uncertain scalar data

Built-in Example 3 (video tutorial to come)

Assuming you properly installed TTK and decompressed the TTK data tarball as described at the beginning of this section, you can now reproduce the third built-in example demo by entering the following commands (omit the $ character):

$ cd ~/ttk/ttk-data-0.9.2
$ paraview --state=states/BuiltInExample3.pvsm

Uncertain starting vortex demo

Assuming you properly installed TTK and decompressed the TTK data tarball as described at the beginning of this section, you can now reproduce the uncertain starting vortex demo by entering the following commands (omit the $ character):

$ cd ~/ttk/ttk-data-0.9.2
$ paraview --state=states/uncertainStartingVortex.pvsm




3. TTK development

Please find below a few video tutorials showing how to use TTK from your own code (in Python, VTK/C++ or pure C++) as well as how to extend TTK with a new module.

a) With Python

b) With VTK/C++

c) With pure C++

d) Extending TTK with a new module

Update: as of version 0.9.1, TTK's module management scripts are located in the directory scripts/ of the source tree. These scripts, to be run from the root of the source tree, will now directly create, delete or release custom TTK modules within the main source tree. Your custom TTK modules will then also be compiled during the main build of TTK (see the top CMakeLists.txt). For example, to create a new module named "HelloWorld" (as showcased in the video below), you should now enter the following command from the root of the TTK source tree:

$ scripts/createTTKmodule.sh HelloWorld