Simple MPL-2.0-licensed C++ geometry processing library.

website: libigl.github.io/libigl/

Topics:

#geometry-processing #3d #gamedev #mesh #editor #assets #tooling #internal #graphics

dpanozzo fe734a87bf Added basic mesh navigation primitives (not fully tested) %!s(int64=14) %!d(string=hai) anos
examples 84e0ce7b52 replaced buggy readOBJ with wrapper to vector of vectors readobj %!s(int64=14) %!d(string=hai) anos
EPS.h f9c9115e03 Templated the quaternion functions and EPS, a few more quaternion functions, fixed prototypes and header defines in writeOBJ %!s(int64=14) %!d(string=hai) anos
PI.h abd98b398b added a bunch of quaternion math, vector math and trackball %!s(int64=14) %!d(string=hai) anos
ReAntTweakBar.h 47136a5d14 get_seconds example, still not sure why ctime is not working with GLUT... %!s(int64=14) %!d(string=hai) anos
ZERO.h 67da1c1e96 added header files: %!s(int64=14) %!d(string=hai) anos
adjacency_list.h fe734a87bf Added basic mesh navigation primitives (not fully tested) %!s(int64=14) %!d(string=hai) anos
adjacency_matrix.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) %!s(int64=14) %!d(string=hai) anos
axis_angle_to_quat.h f9c9115e03 Templated the quaternion functions and EPS, a few more quaternion functions, fixed prototypes and header defines in writeOBJ %!s(int64=14) %!d(string=hai) anos
basename.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) %!s(int64=14) %!d(string=hai) anos
canonical_quaternions.h 4dfd20d527 Templatized (or began to at least) canonical_quaternions %!s(int64=14) %!d(string=hai) anos
cocoa_key_to_anttweakbar_key.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) %!s(int64=14) %!d(string=hai) anos
colon.h a62d483b1c colon, full and speye functions to match matlab %!s(int64=14) %!d(string=hai) anos
cotmatrix.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) %!s(int64=14) %!d(string=hai) anos
create_index_vbo.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) %!s(int64=14) %!d(string=hai) anos
create_mesh_vbo.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) %!s(int64=14) %!d(string=hai) anos
create_shader_program.h 0289f43a50 missing inlines and organization %!s(int64=14) %!d(string=hai) anos
create_vector_vbo.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) %!s(int64=14) %!d(string=hai) anos
cross.h abd98b398b added a bunch of quaternion math, vector math and trackball %!s(int64=14) %!d(string=hai) anos
destroy_shader_program.h 57d8e1844b added file -> string function and example, %!s(int64=14) %!d(string=hai) anos
diag.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) %!s(int64=14) %!d(string=hai) anos
dirname.h 0289f43a50 missing inlines and organization %!s(int64=14) %!d(string=hai) anos
dot.h abd98b398b added a bunch of quaternion math, vector math and trackball %!s(int64=14) %!d(string=hai) anos
edges.h 19fc88d42f bug fixes and clean up for cotmatrix, %!s(int64=14) %!d(string=hai) anos
edgetopology.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) %!s(int64=14) %!d(string=hai) anos
file_contents_as_string.h 57d8e1844b added file -> string function and example, %!s(int64=14) %!d(string=hai) anos
file_exists.h 8fc2d636da Added more php-like file permissions/existence checkers. And an example which tests them against their php cousins. %!s(int64=14) %!d(string=hai) anos
find.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) %!s(int64=14) %!d(string=hai) anos
full.h a62d483b1c colon, full and speye functions to match matlab %!s(int64=14) %!d(string=hai) anos
get_seconds.h 47136a5d14 get_seconds example, still not sure why ctime is not working with GLUT... %!s(int64=14) %!d(string=hai) anos
gl_type_size.h 206e6bc0eb fixed some template issues and strict warnings, gl type to string, type to size, matlab to eigen html doc %!s(int64=14) %!d(string=hai) anos
grad.h 7bebe9005d moveFV, grad, WA: dist and grad %!s(int64=14) %!d(string=hai) anos
is_dir.h 8fc2d636da Added more php-like file permissions/existence checkers. And an example which tests them against their php cousins. %!s(int64=14) %!d(string=hai) anos
is_file.h 8fc2d636da Added more php-like file permissions/existence checkers. And an example which tests them against their php cousins. %!s(int64=14) %!d(string=hai) anos
is_readable.h 8fc2d636da Added more php-like file permissions/existence checkers. And an example which tests them against their php cousins. %!s(int64=14) %!d(string=hai) anos
is_symmetric.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) %!s(int64=14) %!d(string=hai) anos
is_writable.h 8fc2d636da Added more php-like file permissions/existence checkers. And an example which tests them against their php cousins. %!s(int64=14) %!d(string=hai) anos
ismanifold.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) %!s(int64=14) %!d(string=hai) anos
list_to_matrix.h 84e0ce7b52 replaced buggy readOBJ with wrapper to vector of vectors readobj %!s(int64=14) %!d(string=hai) anos
load_shader.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) %!s(int64=14) %!d(string=hai) anos
lu_lagrange.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) %!s(int64=14) %!d(string=hai) anos
mat_max.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) %!s(int64=14) %!d(string=hai) anos
mat_min.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) %!s(int64=14) %!d(string=hai) anos
material_colors.h 67da1c1e96 added header files: %!s(int64=14) %!d(string=hai) anos
matlab-to-eigen.html f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) %!s(int64=14) %!d(string=hai) anos
matlabinterface.h a57964985b fixed wireframe for polygons %!s(int64=14) %!d(string=hai) anos
max_size.h 84e0ce7b52 replaced buggy readOBJ with wrapper to vector of vectors readobj %!s(int64=14) %!d(string=hai) anos
min_quad_with_fixed.h 5f4ec9681d possible bug fix in slice, minor other changes %!s(int64=14) %!d(string=hai) anos
min_size.h 84e0ce7b52 replaced buggy readOBJ with wrapper to vector of vectors readobj %!s(int64=14) %!d(string=hai) anos
moveFV.h 7bebe9005d moveFV, grad, WA: dist and grad %!s(int64=14) %!d(string=hai) anos
mvc.h 9ad2006bba WA cleanup %!s(int64=14) %!d(string=hai) anos
normalize_quat.h f9c9115e03 Templated the quaternion functions and EPS, a few more quaternion functions, fixed prototypes and header defines in writeOBJ %!s(int64=14) %!d(string=hai) anos
normalize_rows.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) %!s(int64=14) %!d(string=hai) anos
orth.h 9ad2006bba WA cleanup %!s(int64=14) %!d(string=hai) anos
pathinfo.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) %!s(int64=14) %!d(string=hai) anos
per_face_normals.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) %!s(int64=14) %!d(string=hai) anos
per_vertex_normals.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) %!s(int64=14) %!d(string=hai) anos
plot_vector.h fe734a87bf Added basic mesh navigation primitives (not fully tested) %!s(int64=14) %!d(string=hai) anos
point_in_circle.h b7e523aec7 project/unproject wrappers, 2d point in circle test and eigen affine matrix example %!s(int64=14) %!d(string=hai) anos
pos.h fe734a87bf Added basic mesh navigation primitives (not fully tested) %!s(int64=14) %!d(string=hai) anos
print_gl_get.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) %!s(int64=14) %!d(string=hai) anos
print_ijv.h 19fc88d42f bug fixes and clean up for cotmatrix, %!s(int64=14) %!d(string=hai) anos
print_program_info_log.h 57d8e1844b added file -> string function and example, %!s(int64=14) %!d(string=hai) anos
print_shader_info_log.h 57d8e1844b added file -> string function and example, %!s(int64=14) %!d(string=hai) anos
project.h b7e523aec7 project/unproject wrappers, 2d point in circle test and eigen affine matrix example %!s(int64=14) %!d(string=hai) anos
quat_conjugate.h f9c9115e03 Templated the quaternion functions and EPS, a few more quaternion functions, fixed prototypes and header defines in writeOBJ %!s(int64=14) %!d(string=hai) anos
quat_mult.h f9c9115e03 Templated the quaternion functions and EPS, a few more quaternion functions, fixed prototypes and header defines in writeOBJ %!s(int64=14) %!d(string=hai) anos
quat_to_mat.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) %!s(int64=14) %!d(string=hai) anos
read.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) %!s(int64=14) %!d(string=hai) anos
readDMAT.h b7e523aec7 project/unproject wrappers, 2d point in circle test and eigen affine matrix example %!s(int64=14) %!d(string=hai) anos
readOBJ.h 84e0ce7b52 replaced buggy readOBJ with wrapper to vector of vectors readobj %!s(int64=14) %!d(string=hai) anos
readOFF.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) %!s(int64=14) %!d(string=hai) anos
readme.txt 6a75c9f30c initial import igl_lib %!s(int64=14) %!d(string=hai) anos
reorder.h 206e6bc0eb fixed some template issues and strict warnings, gl type to string, type to size, matlab to eigen html doc %!s(int64=14) %!d(string=hai) anos
repdiag.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) %!s(int64=14) %!d(string=hai) anos
repmat.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) %!s(int64=14) %!d(string=hai) anos
report_gl_error.h 5f4ec9681d possible bug fix in slice, minor other changes %!s(int64=14) %!d(string=hai) anos
rotate_by_quat.h f9c9115e03 Templated the quaternion functions and EPS, a few more quaternion functions, fixed prototypes and header defines in writeOBJ %!s(int64=14) %!d(string=hai) anos
rows_to_matrix.h 84e0ce7b52 replaced buggy readOBJ with wrapper to vector of vectors readobj %!s(int64=14) %!d(string=hai) anos
slice.h 5f4ec9681d possible bug fix in slice, minor other changes %!s(int64=14) %!d(string=hai) anos
slice_into.h 8302a36e26 slice into %!s(int64=14) %!d(string=hai) anos
snap_to_canonical_view_quat.h 206e6bc0eb fixed some template issues and strict warnings, gl type to string, type to size, matlab to eigen html doc %!s(int64=14) %!d(string=hai) anos
sort.h 19fc88d42f bug fixes and clean up for cotmatrix, %!s(int64=14) %!d(string=hai) anos
sparse.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) %!s(int64=14) %!d(string=hai) anos
speye.h a62d483b1c colon, full and speye functions to match matlab %!s(int64=14) %!d(string=hai) anos
stdin_to_temp.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) %!s(int64=14) %!d(string=hai) anos
sum.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) %!s(int64=14) %!d(string=hai) anos
trackball.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) %!s(int64=14) %!d(string=hai) anos
transpose_blocks.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) %!s(int64=14) %!d(string=hai) anos
tt.h fe734a87bf Added basic mesh navigation primitives (not fully tested) %!s(int64=14) %!d(string=hai) anos
uniform_type_to_string.h 206e6bc0eb fixed some template issues and strict warnings, gl type to string, type to size, matlab to eigen html doc %!s(int64=14) %!d(string=hai) anos
unproject.h b7e523aec7 project/unproject wrappers, 2d point in circle test and eigen affine matrix example %!s(int64=14) %!d(string=hai) anos
verbose.h 0abb7a4d3c changed interfaces of read*.h to return bool, %!s(int64=14) %!d(string=hai) anos
vf.h fe734a87bf Added basic mesh navigation primitives (not fully tested) %!s(int64=14) %!d(string=hai) anos
write.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) %!s(int64=14) %!d(string=hai) anos
writeDMAT.h fa03862cee dmat matrix file format reader, writer and example %!s(int64=14) %!d(string=hai) anos
writeOBJ.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) %!s(int64=14) %!d(string=hai) anos
writeOFF.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) %!s(int64=14) %!d(string=hai) anos

readme.txt

igl Library - A simple c++ mesh library
Copyright 2011 - Daniele Panozzo, Alec Jacobson, Olga Diamanti
Interactive Geometry Lab - ETH Zurich

Naming standards:

- Every function must be written in a .h file with the same name of the function
- cpp files are NOT allowed
- A function can return a value only if it is a single scalar, elsewhere
the output parameters must be passed as references.
- Pointers are not allowed, if you need to make optional parameters
you should prepare a wrapper for any possible combination of them
- If an external dependency is needed it must be clearly stated at the
top of the file. If the dependency is header only it must be placed in the "external"
folder
- Do not use the using namespace directive anywhere. The only exception is for
the igl namespace

Allowed types:

- Eigen Matrices
- Eigen Sparse Matrices
- bool
- int
- unsigned int
- double (float is NOT allowed)
- string