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 87762b4ddc upload script 11 yıl önce
documentation 2dc872211e finished draft on active set description 11 yıl önce
examples 40e3445d73 updated makefile for quicklook plugin 11 yıl önce
file-formats f292dec1c2 mesh quicklook generator example and sort rows example, readWRL from preview3d 11 yıl önce
include cd3c29a54a comments in texture from file 11 yıl önce
scripts 87762b4ddc upload script 11 yıl önce
.hgignore 83135b0027 hg cleanup' 11 yıl önce
ACKNOWLEDGEMENTS bc64088603 better hgignores explicit instanciation for doublearea 11 yıl önce
LICENSE.GPL 166ae80c7e strip copyrights 11 yıl önce
LICENSE.MPL2 166ae80c7e strip copyrights 11 yıl önce
LICENSE.TXT b473232452 preprend license header to every file 11 yıl önce
Makefile 5205c10219 cleaned up colored mesh example 11 yıl önce
Makefile.conf 5205c10219 cleaned up colored mesh example 11 yıl önce
RELEASE_HISTORY.txt d14905d818 migrated a lot of the FAST code including interface to Sifakis' fast 3x3 svd with SSE and AVX support (determined during compile) 11 yıl önce
VERSION.txt 87762b4ddc upload script 11 yıl önce
exclude.lst cb15a39694 better excludes and readme 11 yıl önce
libigl-dependency-diagram.ai.REMOVED.git-id 532720dc68 merge, orient_outward_ao compiles on mac os x 11 yıl önce
libigl-logo.ai.REMOVED.git-id 166a191467 clean up some headers, auto doc and todos 12 yıl önce
libigl-logo.jpg 96f38d6247 missing cpp files 12 yıl önce
libigl-teaser.pdf.REMOVED.git-id f182dbbfb5 header clustering scripts 11 yıl önce
matlab-to-eigen.html ae29184e91 draw skeleton with colors 11 yıl önce
readme.txt 8d773485f6 separted bbw as its own extra (mosek optional via IGL_NO_MOSEK), support for mosek 7, better control over verbosity in bbw 11 yıl önce
style.css 166ae80c7e strip copyrights 11 yıl önce
style_guidelines.html 166ae80c7e strip copyrights 11 yıl önce
todos.txt 865b841fb1 openmp if catch in project_to_line* 11 yıl önce
tutorial.html f92bae1b4f missing igl_no_opengl s 11 yıl önce

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.2

= Optional =
OpenGL (IGL_NO_OPENGL)
AntTweakBar (IGL_NO_ANTTWEAKBAR) Last tested 1.16 (see
libigl/external/AntTweakBar)
GLEW Windows only
OpenMP
libpng libiglpng extra only
Mosek libiglmosek extra only
Matlab libiglmatlab extra only
boost libboost extra only

= Optional (included in external/ =
TetGen libigltetgen extra only
Embree libiglembree extra only
tinyxml2 libiglxml 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 =

= Linux/Mac OS X/Cygwin =

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, lib/libiglmosek.a, etc.) 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.

= Windows (Experimental) =
To build a static library (.lib) on windows, open Visual Studio 2010.

New > Project ...
Visual C++ > Win32
Win32 Console Application
Name: libiglVisualStudio
Uncheck "Create directory for solution"

Then hit OK, and then Next

Check "Static Library"
Uncheck "Precompiled headers"

Add all include/igl/*.cpp to the sources directory
Add all include/igl/*.h to the headers directory

Open Project > libigl Properties...
Add the path to eigen3 to the include paths
Change the target name to libigl

Build and pray (this should create libigl.lib

= Source =
http://msdn.microsoft.com/en-us/library/ms235627(v=vs.80).aspx

= 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=@exclude.lst 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!