Dipartimento di Informatica e Scienze dell'Informazione
University of Genova, Italy
THE MT (MULTI-TESSELATION) PACKAGE
A dimension-independent package for the representation and manipulation of
spatial objects as simplicial complexes at multiple resolutions.
Table of Contents
What is the MT Package?
The MT Package contains a C++ library that allows you to design
interactive applications which exploit the full power of multiresolution
on geometric objects represented by meshes in any dimension.
There are two basic actions in multoresolution modelling:
- Take a simplicial (e.g., triangular, tetrahedral) mesh describing
an object and build a multiresolution representation of the same
object;
- Query this multiresolution representation on-line to obtain meshes
representing the object at the level of detail you like.
The MT package provides libraries to support both actions. Based on
the MT libraries, you can write a program to build a multiresolution
representation, as well as a program to query a multiresolution
representation.
Some demo programs to query a multiresolution representation are
provided togther with the MT libraries, while programs to build a
multiresolution representation are distributed separately.
The MT Package is fully parametric on:
- The dimension of the mesh (e.g., a surface made of triangles,
a volume made of tetrahedra, and any higher dimensional complex
made of simplexes);
- The dimension on the embedding space (i.e., the number of
coordinates on the vertices of the mesh);
- Any attribute that you wish to store at the vertices and at the
cells of your mesh;
- Any criterion that you wish to adopt in order to extract meshes at
variable resolution from the multiresolution model.
Thus you can manage multiresolution the way you like, depending
on the needs of your application. You just have to specify the attributes
you wish to include and the condition to test the resolution.
The MT Package allows you to use your own simplification code to build
the multiresolution model! You just have to include commands
provided by a class in the library.
Some off-the-shelf programs are available,
which can be either used directly, or adopted as templates to write
your own applications:
- Programs to build multiresolution terrain models from either
digital elevation grids or triangulated irregular networks
(distributed separately, not included in the MT package!);
- Programs to build multiresolution surface models from generic
triangle meshes (distributed separately, not included in the MT
package!);
- A program to fly over a terrain, which gives you the possibility to
adjust view and resolution parameters (distributed within the MT
package, as demos);
- A program to analyze an object by interactively using a magic lens
that keeps high resolution inside a volume, while the rest of the
object is shown at low resolution
(distributed within the MT package, as demos).
See a more detailed quick
guide
to discover the possibilities you have in using the MT Package.
Documentation
Some notes about programs that build an MT
Programs to build an MT, also called MT constructors,
are not part of the MT libraries.
They are independent programs which simply use the MT libraries.
The common feature of all such programs is an iterative process of
modification of a tesselation through a sequence of local updates.
The program iteratively refines or coarsens a tesselation and
uses a (specialized) building interface in order to build a
(specialized) MT.
Any program based on iterative refinement or coarsening
can be used to build an MT: it is sufficient that
additional instructions from the MT libraries are added to its code
at some key points.
Each MT constructor will accept data of a certain nature related to a specific
type of geometric objects, encoded in a certain format, and operates
on such data through a certain algorithm.
In addition to the MT, some features may be generated such as approximation
errors for tiles and other application-dependent information.
To our knowledge, the following programs to build an MT have been
developed by now. Of course, you can write your own programs.
-
MT_Delaunay: a program for building
MTs for terrains by either progressive insertion of vertices into a raw
triangle mesh, or by progressive removal of vertices from a triangle
mesh at full resolution. In both cases, the mesh is a Delaunay
triangulation.
Input data may be either a set of points, or a triangle mesh.
This program has been developed at DISI, University of Genova, Italy.
- A program for building
two-dimensional MTs in three dimensions by means of edge collapse
in a triangle mesh. This program has been
developed at IMATI-CNR, Genova, Italy.
- A program for building MTs for terrains based on a right-triangle
hierarchy. This program is not much interesting in itself, but has
been used to compare the MT with other approaches to multiresolution
using regular geometry.
This program has been developed at DISI, University of Genova, Italy.