Skip to content

kyeshmz/ofxLibigl

Repository files navigation

ofxLibigl

libigl - A simple C++ geometry processing library

Will support both Libigl-legacy and Libigl as we go further Currently using d4b67260855fe901541f2949ff21819147c08a4d tree on master branch

libigl is a simple C++ geometry processing library. We have a wide functionality including construction of sparse discrete differential geometry operators and finite-elements matrices such as the cotangent Laplacian and diagonalized mass matrix, simple facet and edge-based topology data structures, mesh-viewing utilities for OpenGL and GLSL, and many core functions for matrix manipulation which make Eigen feel a lot more like MATLAB.

It is a header-only library. You do not need to compile anything to use, just include igl headers (e.g. #include <igl/cotmatrix.h>) and run. Each header file contains a single function (e.g. igl/cotmatrix.h contains igl::cotmatrix()). Most are tailored to operate on a generic triangle mesh stored in an n-by-3 matrix of vertex positions V and an m-by-3 matrix of triangle indices F.

Dependencies

Dependencies are on a per-include basis and the majority of the functions in libigl depends only on the Eigen library.

For more information see our tutorial.

Optional Dependencies

Libigl compartmentalizes its optional dependences via its directory organization in the include/ folder. All header files located directly in the include/igl/ folder have only stl and Eigen as dependencies. For example, all of the headers that depend on CGAL are located in include/igl/copyleft/cgal. For a full list of optional dependencies check optional/CMakeLists.txt.

License

libigl is primarily MPL2 licensed (FAQ). Some files contain third-party code under other licenses. We're currently in the processes of identifying these and marking appropriately.

Attribution

If you use libigl in your academic projects, please cite the papers we implement as appropriate. To cite the library in general, you could use this BibTeX entry:

@misc{libigl,
  title = {{libigl}: A simple {C++} geometry processing library},
  author = {Alec Jacobson and Daniele Panozzo and others},
  note = {http://libigl.github.io/libigl/},
  year = {2017},
}

Copyright

2017 Alec Jacobson, Daniele Panozzo, Christian Schüller, Olga Diamanti, Qingnan Zhou, Sebastian Koch, Jeremie Dumas, Amir Vaxman, Nico Pietroni, Stefan Brugger, Kenshi Takayama, Wenzel Jakob, Nikolas De Giorgis, Luigi Rocca, Leonardo Sacht, Kevin Walliman, Olga Sorkine-Hornung, and others.

Please see individual files for appropriate copyright notices.

About

Wrapper around libigl and libigl legacy, currently supporting only legacy

Resources

License

GPL-3.0, MPL-2.0 licenses found

Licenses found

GPL-3.0
LICENSE.GPL
MPL-2.0
LICENSE.MPL2

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages