research:software:taglut

Started at the beginning of my PhD, Taglut (Topological And Geometrical Library - a Useful Toolkit) is a software to manipulate meshes, point clouds and other classical data from algorithmic geometry. Several parts are dedicated to the applicative contexts I worked on, e.g. medical imaging.

Taglut is under GPL v2, mainly developped in C++, integrating a python binding to easily write scripts. A blender interface is also available, to be able to proceed taglut algorithms directly on blender meshes.

Taglut has been compiled in the following operating systems:

  • GNU/Linux Debian (etch, lenny, sid) ;
  • GNU/Linux Fedora core 4, 9 et 10 ;
  • FreeBSD 7.2.

Various libraries and tools are needed:

  • A gcc compiler ;
  • make (from GNU) ;
  • cmake (allowing to automatically generating the Makefiles);
  • CImg (embedded into taglut);
  • X11 and threads libraties (for graphical display), optional;
  • libjpg et libpng (to be able to read and write without imagemagic), optional;
  • glut (for opengl display), optional;
  • libxml2 for a dedicated xml language interpretor, optional;
  • popt for the reading of the binary parameters;
  • SWIG for python binding;
  • openmp for parallelization with shared memory, optional;
  • GSL for a good random generator, optional.

The source code of the project contains opennl, used for the ABF algorithm, a compatible CImg version and GoTools Core library in the last versions for NURBS reconstruction.

With cmake

  • Go to the taglut directory (that contains the src/ directory, where are the sources of the software);
  • Create a build/ directory and enter on this new directory;
  • Run ccmake .., that checks for available libraries, and buils the Makefile. Use the menu (successively keys “c”, “c”, then “g”);
  • Run make to compile all the binaries, or just make example to compile the example.

The compiled binaries are available in the build/bin/ directory, and the library in the build/lib/ directory.

Without cmake

The simplified but not recommended compilation method does not check for the available libraries needed by the binaries. It not allows the user to use the full capacities of taglut, and is not everytime up-to-date. This is the way to compile without cmake:

  • Go to the taglut directory (that contains the src/ directory, where are the sources of the software);
  • Run make -f Makefile.all depend to generate the file dependancies;
  • Run make -f Makefile.all to compile all the binaries.

The compiled binaries are available in the bin/ directory.

Since no installation procedure is available, some adjustements on environnement variables are needed.

  • Add to LD_LIBRARY_PATH the lib/ directory of taglut ;
  • Add to PYTHONPATH the lib/ directory of taglut, to be able to use the python scripts.