Taglut

Taglut : Topological And Geometrical Library - a Useful Toolkit

I'm currently developping a C++ software to implement some of the algorithms created during my PhD thesis. Various functionnalities are available for surface manipulation, e.g. topological cutting or unfolding. Some basic display functions are also available. A blender interface is available, using a python binding.

Requisites

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 (C++) ;
  • 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 (embedded into taglut);
  • GSL for a good random generator, optional.

Source code of the project contains opennl, used for the ABF algorithm, and a compatible CImg version.

Compiling

With cmake

  • Go to the "taglut" directory (that contains the "src/" directory, where are the sources of the software);
  • 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 bin/ directory, and the library in the 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.

Using taglut

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.