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

kavanl cc6f68da7c Get seconds using high resolution performance counter (Windows only). 13 tahun lalu
examples 83fccfe0f1 added slice example 13 tahun lalu
EPS.h f9c9115e03 Templated the quaternion functions and EPS, a few more quaternion functions, fixed prototypes and header defines in writeOBJ 14 tahun lalu
PI.h abd98b398b added a bunch of quaternion math, vector math and trackball 14 tahun lalu
ReAntTweakBar.h 47136a5d14 get_seconds example, still not sure why ctime is not working with GLUT... 14 tahun lalu
ZERO.h 67da1c1e96 added header files: 14 tahun lalu
adjacency_list.h 2ec5601563 added missing inlines 13 tahun lalu
adjacency_matrix.h 3a7e857da3 added reserves to functions using DynamicSparseMatrix, where appropriate 13 tahun lalu
axis_angle_to_quat.h 8df094f330 cleaned up verbose outputs 13 tahun lalu
basename.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) 13 tahun lalu
canonical_quaternions.h 4dfd20d527 Templatized (or began to at least) canonical_quaternions 14 tahun lalu
cocoa_key_to_anttweakbar_key.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) 13 tahun lalu
colon.h 8df094f330 cleaned up verbose outputs 13 tahun lalu
concat.h 2ec5601563 added missing inlines 13 tahun lalu
cotmatrix.h 3a7e857da3 added reserves to functions using DynamicSparseMatrix, where appropriate 13 tahun lalu
create_index_vbo.h 7e8e5ed1f1 fix unix dependencies and added ifdef include windows around opengl includes 13 tahun lalu
create_mesh_vbo.h 7e8e5ed1f1 fix unix dependencies and added ifdef include windows around opengl includes 13 tahun lalu
create_shader_program.h 7e8e5ed1f1 fix unix dependencies and added ifdef include windows around opengl includes 13 tahun lalu
create_vector_vbo.h 7e8e5ed1f1 fix unix dependencies and added ifdef include windows around opengl includes 13 tahun lalu
cross.h abd98b398b added a bunch of quaternion math, vector math and trackball 14 tahun lalu
destroy_shader_program.h 7e8e5ed1f1 fix unix dependencies and added ifdef include windows around opengl includes 13 tahun lalu
diag.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) 13 tahun lalu
dirname.h 0289f43a50 missing inlines and organization 14 tahun lalu
dot.h abd98b398b added a bunch of quaternion math, vector math and trackball 14 tahun lalu
edges.h 19fc88d42f bug fixes and clean up for cotmatrix, 14 tahun lalu
edgetopology.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) 13 tahun lalu
file_contents_as_string.h 57d8e1844b added file -> string function and example, 14 tahun lalu
file_exists.h 8fc2d636da Added more php-like file permissions/existence checkers. And an example which tests them against their php cousins. 14 tahun lalu
find.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) 13 tahun lalu
full.h a62d483b1c colon, full and speye functions to match matlab 13 tahun lalu
get_seconds.h 7e8e5ed1f1 fix unix dependencies and added ifdef include windows around opengl includes 13 tahun lalu
get_seconds_hires.h cc6f68da7c Get seconds using high resolution performance counter (Windows only). 13 tahun lalu
gl_type_size.h 7e8e5ed1f1 fix unix dependencies and added ifdef include windows around opengl includes 13 tahun lalu
grad.h 2b226c2772 WA with typedef for floats -- does not crash (smooth minimum does not produce nan's), but still issues with eigen svd 13 tahun lalu
is_dir.h 7e8e5ed1f1 fix unix dependencies and added ifdef include windows around opengl includes 13 tahun lalu
is_file.h 8fc2d636da Added more php-like file permissions/existence checkers. And an example which tests them against their php cousins. 14 tahun lalu
is_readable.h 7e8e5ed1f1 fix unix dependencies and added ifdef include windows around opengl includes 13 tahun lalu
is_symmetric.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) 13 tahun lalu
is_writable.h 7e8e5ed1f1 fix unix dependencies and added ifdef include windows around opengl includes 13 tahun lalu
ismanifold.h 2b226c2772 WA with typedef for floats -- does not crash (smooth minimum does not produce nan's), but still issues with eigen svd 13 tahun lalu
list_to_matrix.h 8df094f330 cleaned up verbose outputs 13 tahun lalu
load_shader.h 7e8e5ed1f1 fix unix dependencies and added ifdef include windows around opengl includes 13 tahun lalu
lu_lagrange.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) 13 tahun lalu
mat_max.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) 13 tahun lalu
mat_min.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) 13 tahun lalu
material_colors.h 67da1c1e96 added header files: 14 tahun lalu
matlab-to-eigen.html 8df094f330 cleaned up verbose outputs 13 tahun lalu
matlabinterface.h 2b226c2772 WA with typedef for floats -- does not crash (smooth minimum does not produce nan's), but still issues with eigen svd 13 tahun lalu
max_size.h 84e0ce7b52 replaced buggy readOBJ with wrapper to vector of vectors readobj 13 tahun lalu
min_quad_with_fixed.h 8df094f330 cleaned up verbose outputs 13 tahun lalu
min_size.h 84e0ce7b52 replaced buggy readOBJ with wrapper to vector of vectors readobj 13 tahun lalu
moveFV.h 2b226c2772 WA with typedef for floats -- does not crash (smooth minimum does not produce nan's), but still issues with eigen svd 13 tahun lalu
mvc.h 9ad2006bba WA cleanup 13 tahun lalu
normalize_quat.h f9c9115e03 Templated the quaternion functions and EPS, a few more quaternion functions, fixed prototypes and header defines in writeOBJ 14 tahun lalu
normalize_rows.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) 13 tahun lalu
orth.h 9ad2006bba WA cleanup 13 tahun lalu
pathinfo.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) 13 tahun lalu
per_face_normals.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) 13 tahun lalu
per_vertex_normals.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) 13 tahun lalu
plot_vector.h d288720c64 13 tahun lalu
point_in_circle.h b7e523aec7 project/unproject wrappers, 2d point in circle test and eigen affine matrix example 14 tahun lalu
pos.h d288720c64 13 tahun lalu
print_gl_get.h 7e8e5ed1f1 fix unix dependencies and added ifdef include windows around opengl includes 13 tahun lalu
print_ijv.h 19fc88d42f bug fixes and clean up for cotmatrix, 14 tahun lalu
print_program_info_log.h 7e8e5ed1f1 fix unix dependencies and added ifdef include windows around opengl includes 13 tahun lalu
print_shader_info_log.h 7e8e5ed1f1 fix unix dependencies and added ifdef include windows around opengl includes 13 tahun lalu
project.h 7e8e5ed1f1 fix unix dependencies and added ifdef include windows around opengl includes 13 tahun lalu
quat_conjugate.h f9c9115e03 Templated the quaternion functions and EPS, a few more quaternion functions, fixed prototypes and header defines in writeOBJ 14 tahun lalu
quat_mult.h f9c9115e03 Templated the quaternion functions and EPS, a few more quaternion functions, fixed prototypes and header defines in writeOBJ 14 tahun lalu
quat_to_mat.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) 13 tahun lalu
read.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) 13 tahun lalu
readDMAT.h b7e523aec7 project/unproject wrappers, 2d point in circle test and eigen affine matrix example 14 tahun lalu
readOBJ.h 84e0ce7b52 replaced buggy readOBJ with wrapper to vector of vectors readobj 13 tahun lalu
readOFF.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) 13 tahun lalu
readme.txt 3a7e857da3 added reserves to functions using DynamicSparseMatrix, where appropriate 13 tahun lalu
removeDuplicates.h 2b226c2772 WA with typedef for floats -- does not crash (smooth minimum does not produce nan's), but still issues with eigen svd 13 tahun lalu
removeUnreferenced.h 2b226c2772 WA with typedef for floats -- does not crash (smooth minimum does not produce nan's), but still issues with eigen svd 13 tahun lalu
reorder.h 206e6bc0eb fixed some template issues and strict warnings, gl type to string, type to size, matlab to eigen html doc 14 tahun lalu
repdiag.h 3a7e857da3 added reserves to functions using DynamicSparseMatrix, where appropriate 13 tahun lalu
repmat.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) 13 tahun lalu
report_gl_error.h 7e8e5ed1f1 fix unix dependencies and added ifdef include windows around opengl includes 13 tahun lalu
rotate_by_quat.h f9c9115e03 Templated the quaternion functions and EPS, a few more quaternion functions, fixed prototypes and header defines in writeOBJ 14 tahun lalu
rows_to_matrix.h 84e0ce7b52 replaced buggy readOBJ with wrapper to vector of vectors readobj 13 tahun lalu
slice.h 1e33670556 fixed bug in slice>sparse 13 tahun lalu
slice_into.h 8302a36e26 slice into 13 tahun lalu
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 14 tahun lalu
sort.h 19fc88d42f bug fixes and clean up for cotmatrix, 14 tahun lalu
sparse.h 8df094f330 cleaned up verbose outputs 13 tahun lalu
speye.h a62d483b1c colon, full and speye functions to match matlab 13 tahun lalu
stdin_to_temp.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) 13 tahun lalu
sum.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) 13 tahun lalu
trackball.h 8df094f330 cleaned up verbose outputs 13 tahun lalu
transpose_blocks.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) 13 tahun lalu
tt.h 2b226c2772 WA with typedef for floats -- does not crash (smooth minimum does not produce nan's), but still issues with eigen svd 13 tahun lalu
uniform_type_to_string.h 7e8e5ed1f1 fix unix dependencies and added ifdef include windows around opengl includes 13 tahun lalu
unproject.h 7e8e5ed1f1 fix unix dependencies and added ifdef include windows around opengl includes 13 tahun lalu
verbose.h 0abb7a4d3c changed interfaces of read*.h to return bool, 14 tahun lalu
vf.h 2b226c2772 WA with typedef for floats -- does not crash (smooth minimum does not produce nan's), but still issues with eigen svd 13 tahun lalu
write.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) 13 tahun lalu
writeDMAT.h 8df094f330 cleaned up verbose outputs 13 tahun lalu
writeOBJ.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) 13 tahun lalu
writeOFF.h f803e13d06 fixed min_quad_* to handle non positive definite systems (though falls back on dense decomposition) 13 tahun lalu

readme.txt

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

This is 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.

= Example =
The following is a toy example of a function called example() in the
file example.h:

#ifndef IGL_EXAMPLE_H
#define IGL_EXAMPLE_H
namespace igl
{
// An example function that prints "Hello, world"
inline void example();
}

// Implementation
#include
inline void igl::example()
{
std::cout<<"Hello, world"<}

= Standards =

This library is shared by many people. Each function prototype should be
well documented. Write a summary of what the function does and a
description of each template, input and output in each prototype.

- All functions must be inlined, otherwise there is trouble when
linking included headers used in multiple .cpp files
- Use a single .h file with the same name as the function
- Do *not* use any .cpp files (this is *header only* library)
- At least one version of the function should use references for all
outputs
- Use wrappers and additional prototypes for returning single-output
functions' outputs
- Use c++ references for inputs and outputs rather than pointers or
pass-by-copy
- Take the time to write multiple prototypes if you'd like to have
optional parameters with default values
- External dependencies (besides Eigen, OpenGL, etc.) are discouraged
- External dependencies must be clearly identified at the top of each
file.
- Single header external dependencies can go in the external/
directory
- Do not use the using namespace directive anywhere. This means never
write:
"using namespace std;"
or
"using namespace igl;"
etc.

= Specific style conventions =

Each file should be wrapped in an ifndef compiler directive. If the
file's (and function's) name is example.h, then the ifndef should
always begin with IGL_, then the function/file name in all caps then
_H. As in:
#ifndef IGL_EXAMPLE_H
#define IGL_EXAMPLE_H
...
#endif

Each file should begin with prototypes *without implementations* of
each version of the function. All defined in the igl namespace. Each
prototype should have its own comments describing what it is doing,
and its templates, inputs, outputs.

Implementations should be at the end of each file, separated from the
prototypes using:
// Implementation

Any includes, such as std libraries etc. should come after
the //Implementation separator (whenever feasibly possible).

Be generous by templating your inputs and outputs. If you do use
templates, you must document the template just as you document inputs
and outputs.