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
PLY
STL
VER-TRI (proprietary format used at IMATI-GE / CNR)
and partially:
VRML 1.0
VRML 97
OBJ
IV 2.1
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_i386 and
MS Win32 (lib/libjmesh.a and lib/jmesh.lib respectively).
Documentation
Click
here to get a quick introduction to the
use of the API and some details on the underlying data structure.
See the comments within the source files for further details or use doxygen to
produce documentation in a more readable format.
The file "tin.h" is a good starting point.
System Requirements
You need to have a 32 bit PC running either:
- ELF Linux with standard development tools (gcc/g++)
- Windows OS with MSVC 9.0 (Visual C++ 2008)
- Mac OS X with standard development tools (gcc/g++ + makedepend)
Download
Click
here to get the latest version
of JMeshLib from sourceforge.net.
Copyright
JMeshLib is
Copyright(C) 2006-2011: 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.