/** \mainpage The VCG Library
The Visualization and Computer Graphics Library (VCG for short) is
a open source portable C++ templated library for manipulation, processing
and displaying with OpenGL of triangle and tetrahedral meshes.
The library, composed by more than 100k lines of code,
is released under the GPL license, and it is the base of most of the
software tools of the Visual Computing Lab of the Italian National Research Council Institute ISTI
(http://vcg.isti.cnr.it), like metro and MeshLab.
The VCG library is tailored to mostly manage triangular meshes:
The library is fairly large and offers many state of the art functionalities for processing meshes, like:
- high quality quadric-error edge-collapse based simplfication,
- efficient spatial query structures (uniform grids, hashed grids, kdtree, ...) ,
- advanced smoothing and fairing algorithms,
- computation of curvature,
- optimization of texture coordinates,
- Hausdorff distance computation,
- Geodesic paths,
- mesh repairing capabilities,
- isosurface extraction and advancing front meshing algorithms,
- Poisson Disk sampling and other tools to sample point distributions over meshes,
- subdivision surfaces,
Documentation
-------
Start from the following pages for basic concepts and examples.
- \subpage install "Installing the VCG Library"
- \subpage basic_concepts "Basic Concepts"
- \subpage optional_component "Optional Component"
- \subpage flags "Bit Flags on mesh elements"
- \subpage adjacency "Adjacency and Topology"
- \subpage allocation "Creating and destroying elements"
- \subpage attributes "Adding user defined attributes to mesh elements"
- \subpage fileformat "Loading and saving meshes"
- \subpage shot "Camera and shot abstraction for managing views"
- \ref code_sample "Short Examples showing various features of the library"
Notable Applications
-------
A number of applications have been developed using the vcglib:
- MeshLab: the renowed open source mesh processing is based on this library.
- \subpage metro "Metro, the tool for measuring differences between meshes"
- The first high quality out-of-core mesh simplifier that was used by the Stanford Digital Michelangelo project to process their huge 3D scanned models.
Contacts
-------
For any info about licensing (portion of) the library please contact us:
Paolo Cignoni (p.cignoni@isti.cnr.it)
Fabio Ganovelli (f.ganovelli@isti.cnr.it)
Visual Computing Lab of the Italian National Research Council - ISTI
In case of \b bugs please report them here.
*/