Extension of libigl which allows to also read the texture of wrl-files in Python as igl.read_triangle_mesh(wrFilePath, V, F, TC)

Alec Jacobson (jalec 96f38d6247 missing cpp files 12 years ago
examples 25455f1e4b version and release history 12 years ago
file-formats 96f38d6247 missing cpp files 12 years ago
include 96f38d6247 missing cpp files 12 years ago
scripts 96f38d6247 missing cpp files 12 years ago
.hgignore ca3f7ffc39 medit displays correct solution when clipping 12 years ago
Makefile dd6d4ac69b is sparse and full templtated to work even if already full 12 years ago
Makefile.conf 4709fbf3f8 added missing std:: 12 years ago
RELEASE_HISTORY.txt 25455f1e4b version and release history 12 years ago
VERSION.txt 108ae44815 increment version 12 years ago
libigl-logo.ai.REMOVED.git-id 166a191467 clean up some headers, auto doc and todos 12 years ago
libigl-logo.jpg 96f38d6247 missing cpp files 12 years ago
libigl-teaser.pdf.REMOVED.git-id a7334fdd46 teaser and readme about zipping 12 years ago
matlab-to-eigen.html 98be5f8569 fixed bug in render to tga 13 years ago
readme.txt 96f38d6247 missing cpp files 12 years ago
style.css 166a191467 clean up some headers, auto doc and todos 12 years ago
style_guidelines.html 96f38d6247 missing cpp files 12 years ago
todos.txt 166a191467 clean up some headers, auto doc and todos 12 years ago
tutorial.html 96f38d6247 missing cpp files 12 years ago

readme.txt

libigl - A simple c++ geometry processing library

http://igl.ethz.ch/projects/libigl/

Copyright 2013 - Alec Jacobson, Daniele Panozzo, Olga Diamanti, Kenshi
Takayama, Leo Sacht, Interactive Geometry Lab - ETH Zurich

This is first and foremost a *header* library. Each header file should contain
a single function. The function may have multiple prototypes. All functions
should use the igl namespace and should adhere to the conventions and styles
listed below.

= Dependencies =
Eigen3 Last tested with Eigen Version 3.1.2
AntTweakBar Last tested 1.14 (see External)
OpenGL
GLUT
GLEW Windows only

= Optional =
OpenMP
libpng libiglpng extra only
Mosek libiglmosek extra only
Matlab libiglmatlab extra only

= Optional (included in external/ =
TetGen libigltetgen extra only

= Header only =
libigl is designed to work "out-of-the-box" as a headers only library. To
include libigl in your project. You need only include the libigl/include/
directory in your include path and define the IGL_HEADER_ONLY macro. To
compile a hello-word example.cpp:

#include
#include
#include
int main(int argc, char * argv[])
{
if(argc>1)
{
Eigen::MatrixXd V;
Eigen::MatrixXi F;
igl::readOBJ(argv[1],V,F);
std::cout<<"Hello, mesh with "< }else{
std::cout<<"Hello, world!"< }
return 0;
}

using gcc (replacing appropriate paths):

g++ -DIGL_HEADER_ONLY -I/usr/local/igl/libigl/include \
-I/opt/local/include/eigen3 example.cpp -o example

Then run this example with:

./example examples/shared/TinyTorus.obj

= Compile =
libigl may also be compiled to a static library. This is advantageous when
building a project with libigl, since the header only directive can slow down
compile times.

To build the entire libigl library producing lib/libigl.a, issue:

make lib

You may need to edit Makefile.conf accordingly. Best to give yourself an
IGL_USERNAME and add a custom install suite for yourself. Then you can enable
appropriate extras.

= Extras =
Once you've set up an IGL_USERNAME and enabled extras within Makefile.conf.
You can build the extra libraries (into lib/ligiglpng.a, lib/libiglmatlab.a,
lib/libigltetgen.a and lib/libiglmosek.a) by issuing:

make extras

= Examples =
You can make a slew of examples by issuing:

make examples

= External =
Finally there are a number of external libraries that we include in
./external/ because they are either difficult to obtain or they have been
patched for easier use with libigl. Please see the respective readmes in
those directories.

= Examples =
To get started, we advise that you take a look at a few examples:

./examples/hello-world/

./examples/meshio/

./examples/basic-topology/

./examples/ReAntTweakBar/

= Development =
Further documentation for developers is listed in tutorial.html,
style_guidelines.html

= License =
For now, all files are Copyright 2013 - Alec Jacobson, Daniele Panozzo, Olga
Diamanti, Kenshi Takayama, Leo Sacht, Interactive Geometry Lab - ETH Zurich
unless otherwise noted. Soon we hope to upgrade to a more liberal license.

= Zipping =
Zip this directory without .hg litter using:

make clean
zip -9 -r --exclude=*.hg* libigl.zip ../libigl

= Contact =
libigl is a group endeavor led by Alec Jacobson and Daniele Panozzo. Please
contact alecjacobson@gmail.com if you have questions or comments. We are happy
to get feedback! Enjoy!