----------------------------
JMeshLib - Version 1.0                                                                
----------------------------

by Marco Attene
                                                                    
Consiglio Nazionale delle Ricerche                                        
Istituto di Matematica Applicata e Tecnologie Informatiche                
Sezione di Genova                                                         
IMATI-GE / CNR                                                            
                                                                         
JMeshLib provides a framework to work with manifold triangle meshes.
It implements an edge-based data structure with all its fundamental
functionalities (i.e., file I/O, mesh construction/destruction, traversal).
It is written in C++ and includes support for reading and writing the
following file formats:
OFF (http://shape.cs.princeton.edu/benchmark/documentation/off_format.html)
PLY (http://www.cs.unc.edu/~geom/Powerplant/Ply.doc)
STL (http://www.sdsc.edu/tmf/Stl-specs/stl.html)
VER-TRI (proprietary format used at IMATI-GE / CNR)
and partially:
IV 2.1, VRML 1.0, VRML 2.0, OBJ.

In contrast to other generic libraries dealing with surface meshes,
JMeshLib includes tools to automatically fix the most common problems
present in surface meshes coming from laser scanning (conversion to
oriented manifold, topological noise detection, hole filling, removal
of degenerate faces, ...) through a clear and easy-to-learn C++ API.

This package provides pre-compiled static libraries for both Linux and
Windows (lib/libjmesh.a and lib/jmesh.lib respectively).

See the comments within the source files for details or use doxygen to
produce documentation in a more readable format.
The file "tin.h" is a good starting point.

-------------------
System Rrequirements
--------------------

You need to have a 32 bit PC running either:
 - ELF Linux with standard development tools (gcc/g++)
 - Windows OS with MSVC 8.0 (Visual C++ 2005)

-------------------
Building the tree
-------------------

On WINDOWS: double-click on minJMeshLib.vcproj and press F7.
On Linux: type 'make' on the command line.

-------------------
Using the library
-------------------

On WINDOWS:
Add the path to jmesh's include dir to your project's include path
AND
add the path to jmesh.lib to your linker's command line

On Linux:
Add the path to jmesh's include dir to your project's include path
AND
add the path to jmesh.a to your linker's command line

---------
Copyright
---------

JMeshLib is

Copyright(C) 2006: IMATI-GE / CNR                                         
                                                                          
All rights reserved.                                                      
                                                                          
This program is free software; you can redistribute it and/or modify      
it under the terms of the GNU General Public License as published by      
the Free Software Foundation; either version 2 of the License, or         
(at your option) any later version.                                       
                                                                          
This program is distributed in the hope that it will be useful,           
but WITHOUT ANY WARRANTY; without even the implied warranty of            
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the             
GNU General Public License (http://www.gnu.org/licenses/gpl.txt)          
for more details.                                                         
