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

jalec 9efa0aedcd bugs in readOFF 14 vuotta sitten
examples 8988a40736 example fun example shows benefit of header only library 14 vuotta sitten
EPS.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
EPS.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
Makefile a982a13696 makefile, h2pair and todos before trying to convert all 14 vuotta sitten
ONE.h c66820d5e3 clean up all around 14 vuotta sitten
PI.h 9f4b4acd36 per corner normals, texture mapping 14 vuotta sitten
ReAntTweakBar.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
ReAntTweakBar.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
Timer.h c66820d5e3 clean up all around 14 vuotta sitten
ZERO.h c66820d5e3 clean up all around 14 vuotta sitten
adjacency_list.cpp b06ba7383e templates mesh reading/writing and normal computation functions 14 vuotta sitten
adjacency_list.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
adjacency_matrix.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
adjacency_matrix.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
all_pairs_distances.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
all_pairs_distances.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
axis_angle_to_quat.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
axis_angle_to_quat.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
basename.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
basename.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
canonical_quaternions.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
canonical_quaternions.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
cat.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
cat.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
cocoa_key_to_anttweakbar_key.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
cocoa_key_to_anttweakbar_key.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
colon.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
colon.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
concat.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
concat.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
cotangent.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
cotangent.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
cotmatrix.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
cotmatrix.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
create_index_vbo.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
create_index_vbo.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
create_mesh_vbo.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
create_mesh_vbo.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
create_shader_program.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
create_shader_program.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
create_vector_vbo.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
create_vector_vbo.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
cross.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
cross.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
destroy_shader_program.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
destroy_shader_program.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
diag.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
diag.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
dirname.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
dirname.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
dot.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
dot.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
edges.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
edges.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
edgetopology.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
example_fun.cpp cfb91ba04f script to separate .h into .h and .cpp pair 14 vuotta sitten
example_fun.h cfb91ba04f script to separate .h into .h and .cpp pair 14 vuotta sitten
faces_first.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
faces_first.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
file_contents_as_string.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
file_contents_as_string.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
file_exists.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
file_exists.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
find.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
find.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
full.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
full.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
get_seconds.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
get_seconds.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
get_seconds_hires.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
get_seconds_hires.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
gl_type_size.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
gl_type_size.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
grad.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
grad.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
h2pair.sh f3fc7367a6 fixed bug in h2pair and create* header include lines 14 vuotta sitten
igl_inline.h b06ba7383e templates mesh reading/writing and normal computation functions 14 vuotta sitten
is_border_vertex.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
is_border_vertex.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
is_dir.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
is_dir.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
is_file.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
is_file.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
is_manifold.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
is_manifold.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
is_readable.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
is_readable.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
is_symmetric.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
is_symmetric.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
is_writable.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
is_writable.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
limit_faces.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
limit_faces.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
list_to_matrix.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
list_to_matrix.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
load_shader.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
load_shader.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
lu_lagrange.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
lu_lagrange.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
mat_max.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
mat_max.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
mat_min.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
mat_min.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
material_colors.h c66820d5e3 clean up all around 14 vuotta sitten
matlab-to-eigen.html 618e148359 cat and .mesh reader writer 14 vuotta sitten
matlabinterface.h c66820d5e3 clean up all around 14 vuotta sitten
max_size.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
max_size.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
min_quad_dense.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
min_quad_dense.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
min_quad_with_fixed.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
min_quad_with_fixed.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
min_size.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
min_size.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
mode.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
mode.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
moveFV.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
moveFV.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
mvc.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
normalize_quat.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
normalize_quat.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
normalize_rows.cpp b06ba7383e templates mesh reading/writing and normal computation functions 14 vuotta sitten
normalize_rows.h b06ba7383e templates mesh reading/writing and normal computation functions 14 vuotta sitten
orth.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
pathinfo.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
pathinfo.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
per_corner_normals.cpp b06ba7383e templates mesh reading/writing and normal computation functions 14 vuotta sitten
per_corner_normals.h b06ba7383e templates mesh reading/writing and normal computation functions 14 vuotta sitten
per_face_normals.cpp b06ba7383e templates mesh reading/writing and normal computation functions 14 vuotta sitten
per_face_normals.h b06ba7383e templates mesh reading/writing and normal computation functions 14 vuotta sitten
per_vertex_normals.cpp b06ba7383e templates mesh reading/writing and normal computation functions 14 vuotta sitten
per_vertex_normals.h b06ba7383e templates mesh reading/writing and normal computation functions 14 vuotta sitten
plot_vector.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
plot_vector.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
point_in_circle.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
point_in_circle.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
pos.h c66820d5e3 clean up all around 14 vuotta sitten
print_gl_get.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
print_gl_get.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
print_ijv.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
print_ijv.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
print_program_info_log.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
print_program_info_log.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
print_shader_info_log.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
print_shader_info_log.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
project.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
project.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
quat_conjugate.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
quat_conjugate.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
quat_mult.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
quat_mult.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
quat_to_mat.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
quat_to_mat.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
read.cpp b06ba7383e templates mesh reading/writing and normal computation functions 14 vuotta sitten
read.h b06ba7383e templates mesh reading/writing and normal computation functions 14 vuotta sitten
readDMAT.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
readDMAT.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
readMESH.cpp b06ba7383e templates mesh reading/writing and normal computation functions 14 vuotta sitten
readMESH.h b06ba7383e templates mesh reading/writing and normal computation functions 14 vuotta sitten
readOBJ.cpp b06ba7383e templates mesh reading/writing and normal computation functions 14 vuotta sitten
readOBJ.h b06ba7383e templates mesh reading/writing and normal computation functions 14 vuotta sitten
readOFF.cpp 9efa0aedcd bugs in readOFF 14 vuotta sitten
readOFF.h 9efa0aedcd bugs in readOFF 14 vuotta sitten
readme.txt 2910231501 readme and fixed a bunch of ifndef headers 14 vuotta sitten
removeDuplicates.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
removeDuplicates.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
removeUnreferenced.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
removeUnreferenced.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
reorder.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
reorder.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
repdiag.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
repdiag.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
repmat.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
repmat.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
report_gl_error.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
report_gl_error.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
rotate_by_quat.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
rotate_by_quat.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
rows_to_matrix.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
rows_to_matrix.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
slice.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
slice.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
slice_into.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
slice_into.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
snap_to_canonical_view_quat.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
snap_to_canonical_view_quat.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
sort.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
sort.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
sparse.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
sparse.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
speye.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
speye.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
stdin_to_temp.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
stdin_to_temp.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
sum.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
sum.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
texture_from_tga.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
texture_from_tga.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
tga.h c66820d5e3 clean up all around 14 vuotta sitten
todos.txt c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
trackball.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
trackball.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
transpose_blocks.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
transpose_blocks.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
tt.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
tt.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
tutorial.html b7e15806e8 tutorial 14 vuotta sitten
uniform_type_to_string.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
uniform_type_to_string.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
unproject.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
unproject.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
upsample.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
upsample.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
verbose.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
verbose.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
vf.cpp b06ba7383e templates mesh reading/writing and normal computation functions 14 vuotta sitten
vf.h b06ba7383e templates mesh reading/writing and normal computation functions 14 vuotta sitten
write.cpp b06ba7383e templates mesh reading/writing and normal computation functions 14 vuotta sitten
write.h b06ba7383e templates mesh reading/writing and normal computation functions 14 vuotta sitten
writeDMAT.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
writeDMAT.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
writeMESH.cpp c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
writeMESH.h c3aa5c391c split most .h files into .h and .cpp, most templated .cpp are missing any explicit instanciations so libigl.a builds but is rather useless 14 vuotta sitten
writeOBJ.cpp b06ba7383e templates mesh reading/writing and normal computation functions 14 vuotta sitten
writeOBJ.h b06ba7383e templates mesh reading/writing and normal computation functions 14 vuotta sitten
writeOFF.cpp b06ba7383e templates mesh reading/writing and normal computation functions 14 vuotta sitten
writeOFF.h b06ba7383e templates mesh reading/writing and normal computation functions 14 vuotta sitten

readMESH.cpp

#include "readMESH.h"

#include
#include "verbose.h"

template
IGL_INLINE bool igl::readMESH(
const std::string mesh_file_name,
std::vector > & V,
std::vector > & T,
std::vector > & F)
{
using namespace std;
using namespace igl;
FILE * mesh_file = fopen(mesh_file_name.c_str(),"r");
if(NULL==mesh_file)
{
fprintf(stderr,"IOError: %s could not be opened...",mesh_file_name.c_str());
return false;
}
#ifndef LINE_MAX
# define LINE_MAX 2048
#endif
char line[LINE_MAX];
bool still_comments;
V.clear();
T.clear();
F.clear();

// eat comments at beginning of file
still_comments= true;
while(still_comments)
{
fgets(line,LINE_MAX,mesh_file);
still_comments = (line[0] == '#' || line[0] == '\n');
}

char str[LINE_MAX];
sscanf(line," %s",str);
// check that first word is MeshVersionFormatted
if(0!=strcmp(str,"MeshVersionFormatted"))
{
fprintf(stderr,
"Error: first word should be MeshVersionFormatted not %s\n",str);
fclose(mesh_file);
return false;
}
int one = -1;
if(2 != sscanf(line,"%s %d",str,&one))
{
// 1 appears on next line?
fscanf(mesh_file," %d",&one);
}
if(one != 1)
{
fprintf(stderr,"Error: second word should be 1 not %d\n",one);
fclose(mesh_file);
return false;
}

// eat comments
still_comments= true;
while(still_comments)
{
fgets(line,LINE_MAX,mesh_file);
still_comments = (line[0] == '#' || line[0] == '\n');
}

sscanf(line," %s",str);
// check that third word is Dimension
if(0!=strcmp(str,"Dimension"))
{
fprintf(stderr,"Error: third word should be Dimension not %s\n",str);
fclose(mesh_file);
return false;
}
int three = -1;
if(2 != sscanf(line,"%s %d",str,&three))
{
// 1 appears on next line?
fscanf(mesh_file," %d",&three);
}
if(three != 3)
{
fprintf(stderr,"Error: only Dimension 3 supported not %d\n",three);
fclose(mesh_file);
return false;
}

// eat comments
still_comments= true;
while(still_comments)
{
fgets(line,LINE_MAX,mesh_file);
still_comments = (line[0] == '#' || line[0] == '\n');
}

sscanf(line," %s",str);
// check that fifth word is Vertices
if(0!=strcmp(str,"Vertices"))
{
fprintf(stderr,"Error: fifth word should be Vertices not %s\n",str);
fclose(mesh_file);
return false;
}

//fgets(line,LINE_MAX,mesh_file);

#ifdef __APPLE__
size_t number_of_vertices;
#else
int number_of_vertices;
#endif
if(1 != fscanf(mesh_file," %ld",&number_of_vertices) || number_of_vertices > 1000000000)
{
fprintf(stderr,"Error: expecting number of vertices less than 10^9...\n");
fclose(mesh_file);
return false;
}
// allocate space for vertices
V.resize(number_of_vertices,vector(3,0));
#ifdef __APPLE__
size_t extra;
#else
int extra;
#endif
for(size_t i = 0;i {
double x,y,z;
if(4 != fscanf(mesh_file," %lg %lg %lg %ld",&x,&y,&z,&extra))
{
fprintf(stderr,"Error: expecting vertex position...\n");
fclose(mesh_file);
return false;
}
V[i][0] = x;
V[i][1] = y;
V[i][2] = z;
}

// eat comments
still_comments= true;
while(still_comments)
{
fgets(line,LINE_MAX,mesh_file);
still_comments = (line[0] == '#' || line[0] == '\n');
}

sscanf(line," %s",str);
// check that sixth word is Triangles
if(0!=strcmp(str,"Triangles"))
{
fprintf(stderr,"Error: sixth word should be Triangles not %s\n",str);
fclose(mesh_file);
return false;
}
#ifdef __APPLE__
size_t number_of_triangles;
#else
int number_of_triangles;
#endif
if(1 != fscanf(mesh_file," %ld",&number_of_triangles))
{
fprintf(stderr,"Error: expecting number of triangles...\n");
fclose(mesh_file);
return false;
}
// allocate space for triangles
F.resize(number_of_triangles,vector(3));
// triangle indices
#ifdef __APPLE__
size_t tri[3];
#else
int tri[3];
#endif
for(size_t i = 0;i {
if(4 != fscanf(mesh_file," %ld %ld %ld %ld",&tri[0],&tri[1],&tri[2],&extra))
{
printf("Error: expecting triangle indices...\n");
return false;
}
for(size_t j = 0;j<3;j++)
{
F[i][j] = tri[j]-1;
}
}

// eat comments
still_comments= true;
while(still_comments)
{
fgets(line,LINE_MAX,mesh_file);
still_comments = (line[0] == '#' || line[0] == '\n');
}

sscanf(line," %s",str);
// check that sixth word is Triangles
if(0!=strcmp(str,"Tetrahedra"))
{
fprintf(stderr,"Error: seventh word should be Tetrahedra not %s\n",str);
fclose(mesh_file);
return false;
}
#ifdef __APPLE__
size_t number_of_tetrahedra;
#else
int number_of_tetrahedra;
#endif
if(1 != fscanf(mesh_file," %ld",&number_of_tetrahedra))
{
fprintf(stderr,"Error: expecting number of tetrahedra...\n");
fclose(mesh_file);
return false;
}
// allocate space for tetrahedra
T.resize(number_of_tetrahedra,vector(4));
// tet indices
#ifdef __APPLE__
size_t a,b,c,d;
#else
int a,b,c,d;
#endif
for(size_t i = 0;i {
if(5 != fscanf(mesh_file," %ld %ld %ld %ld %ld",&a,&b,&c,&d,&extra))
{
fprintf(stderr,"Error: expecting tetrahedra indices...\n");
fclose(mesh_file);
return false;
}
T[i][0] = a-1;
T[i][1] = b-1;
T[i][2] = c-1;
T[i][3] = d-1;
}
fclose(mesh_file);
return true;
}

#include
#include "list_to_matrix.h"


template
IGL_INLINE bool igl::readMESH(
const std::string str,
Eigen::PlainObjectBase& V,
Eigen::PlainObjectBase& T,
Eigen::PlainObjectBase& F)
{
std::vector > vV,vT,vF;
bool success = igl::readMESH(str,vV,vT,vF);
if(!success)
{
// readOBJ(str,vV,vTC,vN,vF,vFTC,vFN) should have already printed an error
// message to stderr
return false;
}
bool V_rect = igl::list_to_matrix(vV,V);
if(!V_rect)
{
// igl::list_to_matrix(vV,V) already printed error message to std err
return false;
}
bool T_rect = igl::list_to_matrix(vT,T);
if(!T_rect)
{
// igl::list_to_matrix(vT,T) already printed error message to std err
return false;
}
bool F_rect = igl::list_to_matrix(vF,F);
if(!F_rect)
{
// igl::list_to_matrix(vF,F) already printed error message to std err
return false;
}
assert(V.cols() == 3);
assert(T.cols() == 4);
assert(F.cols() == 3);
return true;
}

#ifndef IGL_HEADER_ONLY
// Explicit template specialization
#endif