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 cbfeadfbdb Last change before reorganizing directory structure há 13 anos atrás
examples b8c50e5f06 all examples build with static há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
Makefile 70ebc587cf changed path of anttweakbar há 13 anos atrás
ONE.h c66820d5e3 clean up all around há 13 anos atrás
PI.h 9f4b4acd36 per corner normals, texture mapping há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
Timer.h c66820d5e3 clean up all around há 13 anos atrás
ZERO.h c66820d5e3 clean up all around há 13 anos atrás
adjacency_list.cpp d255c7a574 templated face matrix data type há 13 anos atrás
adjacency_list.h d255c7a574 templated face matrix data type há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
all_pairs_distances.cpp b8c50e5f06 all examples build with static há 13 anos atrás
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 há 13 anos atrás
autoexplicit.sh b8c50e5f06 all examples build with static há 13 anos atrás
axis_angle_to_quat.cpp b8c50e5f06 all examples build with static há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
boundary_faces.cpp 1a030a7b2c face occurences, edge lengths, boundary faces and on boundary, no header widget in tutorial há 13 anos atrás
boundary_faces.h 1a030a7b2c face occurences, edge lengths, boundary faces and on boundary, no header widget in tutorial há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
cat.cpp b8c50e5f06 all examples build with static há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
colon.cpp b8c50e5f06 all examples build with static há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
cotangent.cpp 1a030a7b2c face occurences, edge lengths, boundary faces and on boundary, no header widget in tutorial há 13 anos atrás
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 há 13 anos atrás
cotmatrix.cpp b8c50e5f06 all examples build with static há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
create_vector_vbo.cpp b8c50e5f06 all examples build with static há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
edge_lengths.cpp 1a030a7b2c face occurences, edge lengths, boundary faces and on boundary, no header widget in tutorial há 13 anos atrás
edge_lengths.h 1a030a7b2c face occurences, edge lengths, boundary faces and on boundary, no header widget in tutorial há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
edgetopology.h b8c50e5f06 all examples build with static há 13 anos atrás
example_fun.cpp cfb91ba04f script to separate .h into .h and .cpp pair há 13 anos atrás
example_fun.h cfb91ba04f script to separate .h into .h and .cpp pair há 13 anos atrás
face_occurences.cpp 1a030a7b2c face occurences, edge lengths, boundary faces and on boundary, no header widget in tutorial há 13 anos atrás
face_occurences.h 1a030a7b2c face occurences, edge lengths, boundary faces and on boundary, no header widget in tutorial há 13 anos atrás
faces_first.cpp f30e1c69c9 boundary faces, matrix to list, fix tga, and now compiles (debug) with no warnings há 13 anos atrás
faces_first.h f30e1c69c9 boundary faces, matrix to list, fix tga, and now compiles (debug) with no warnings há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
find.cpp b8c50e5f06 all examples build with static há 13 anos atrás
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 há 13 anos atrás
full.cpp b8c50e5f06 all examples build with static há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
grad.cpp d255c7a574 templated face matrix data type há 13 anos atrás
grad.h d255c7a574 templated face matrix data type há 13 anos atrás
h2pair.sh f3fc7367a6 fixed bug in h2pair and create* header include lines há 13 anos atrás
igl_inline.h b06ba7383e templates mesh reading/writing and normal computation functions há 13 anos atrás
is_border_vertex.cpp d255c7a574 templated face matrix data type há 13 anos atrás
is_border_vertex.h d255c7a574 templated face matrix data type há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
is_manifold.cpp d255c7a574 templated face matrix data type há 13 anos atrás
is_manifold.h d255c7a574 templated face matrix data type há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
is_symmetric.cpp b8c50e5f06 all examples build with static há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
list_to_matrix.cpp cbfeadfbdb Last change before reorganizing directory structure há 13 anos atrás
list_to_matrix.h cbfeadfbdb Last change before reorganizing directory structure há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
mat_min.cpp b8c50e5f06 all examples build with static há 13 anos atrás
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 há 13 anos atrás
material_colors.h c66820d5e3 clean up all around há 13 anos atrás
matlab-to-eigen.html cbfeadfbdb Last change before reorganizing directory structure há 13 anos atrás
matlab_workspace.cpp cbfeadfbdb Last change before reorganizing directory structure há 13 anos atrás
matlab_workspace.h cbfeadfbdb Last change before reorganizing directory structure há 13 anos atrás
matlabinterface.h d255c7a574 templated face matrix data type há 13 anos atrás
matrix_to_list.cpp 1a030a7b2c face occurences, edge lengths, boundary faces and on boundary, no header widget in tutorial há 13 anos atrás
matrix_to_list.h f30e1c69c9 boundary faces, matrix to list, fix tga, and now compiles (debug) with no warnings há 13 anos atrás
max_size.cpp cbfeadfbdb Last change before reorganizing directory structure há 13 anos atrás
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 há 13 anos atrás
min_quad_dense.cpp b8c50e5f06 all examples build with static há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
min_size.cpp cbfeadfbdb Last change before reorganizing directory structure há 13 anos atrás
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 há 13 anos atrás
mode.cpp b8c50e5f06 all examples build with static há 13 anos atrás
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 há 13 anos atrás
moveFV.cpp d255c7a574 templated face matrix data type há 13 anos atrás
moveFV.h d255c7a574 templated face matrix data type há 13 anos atrás
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 há 13 anos atrás
normalize_quat.cpp b8c50e5f06 all examples build with static há 13 anos atrás
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 há 13 anos atrás
normalize_rows.cpp b8c50e5f06 all examples build with static há 13 anos atrás
normalize_rows.h b06ba7383e templates mesh reading/writing and normal computation functions há 13 anos atrás
on_boundary.cpp cbfeadfbdb Last change before reorganizing directory structure há 13 anos atrás
on_boundary.h 1a030a7b2c face occurences, edge lengths, boundary faces and on boundary, no header widget in tutorial há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
per_corner_normals.cpp f30e1c69c9 boundary faces, matrix to list, fix tga, and now compiles (debug) with no warnings há 13 anos atrás
per_corner_normals.h b06ba7383e templates mesh reading/writing and normal computation functions há 13 anos atrás
per_face_normals.cpp b8c50e5f06 all examples build with static há 13 anos atrás
per_face_normals.h b06ba7383e templates mesh reading/writing and normal computation functions há 13 anos atrás
per_vertex_normals.cpp b8c50e5f06 all examples build with static há 13 anos atrás
per_vertex_normals.h b06ba7383e templates mesh reading/writing and normal computation functions há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
pos.h d255c7a574 templated face matrix data type há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
print_ijv.cpp b8c50e5f06 all examples build with static há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
quat_conjugate.cpp b8c50e5f06 all examples build with static há 13 anos atrás
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 há 13 anos atrás
quat_mult.cpp b8c50e5f06 all examples build with static há 13 anos atrás
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 há 13 anos atrás
quat_to_mat.cpp b8c50e5f06 all examples build with static há 13 anos atrás
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 há 13 anos atrás
read.cpp b8c50e5f06 all examples build with static há 13 anos atrás
read.h f30e1c69c9 boundary faces, matrix to list, fix tga, and now compiles (debug) with no warnings há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
readMESH.cpp b8c50e5f06 all examples build with static há 13 anos atrás
readMESH.h b06ba7383e templates mesh reading/writing and normal computation functions há 13 anos atrás
readOBJ.cpp f30e1c69c9 boundary faces, matrix to list, fix tga, and now compiles (debug) with no warnings há 13 anos atrás
readOBJ.h f30e1c69c9 boundary faces, matrix to list, fix tga, and now compiles (debug) with no warnings há 13 anos atrás
readOFF.cpp b8c50e5f06 all examples build with static há 13 anos atrás
readOFF.h 9efa0aedcd bugs in readOFF há 13 anos atrás
readme.txt 2910231501 readme and fixed a bunch of ifndef headers há 13 anos atrás
removeDuplicates.cpp d255c7a574 templated face matrix data type há 13 anos atrás
removeDuplicates.h d255c7a574 templated face matrix data type há 13 anos atrás
removeUnreferenced.cpp d255c7a574 templated face matrix data type há 13 anos atrás
removeUnreferenced.h d255c7a574 templated face matrix data type há 13 anos atrás
reorder.cpp b8c50e5f06 all examples build with static há 13 anos atrás
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 há 13 anos atrás
repdiag.cpp b8c50e5f06 all examples build with static há 13 anos atrás
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 há 13 anos atrás
repmat.cpp b8c50e5f06 all examples build with static há 13 anos atrás
repmat.h b8c50e5f06 all examples build with static há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
rotate_by_quat.cpp b8c50e5f06 all examples build with static há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
slice.cpp b8c50e5f06 all examples build with static há 13 anos atrás
slice.h b8c50e5f06 all examples build with static há 13 anos atrás
slice_into.cpp b8c50e5f06 all examples build with static há 13 anos atrás
slice_into.h b8c50e5f06 all examples build with static há 13 anos atrás
snap_to_canonical_view_quat.cpp b8c50e5f06 all examples build with static há 13 anos atrás
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 há 13 anos atrás
sort.cpp f30e1c69c9 boundary faces, matrix to list, fix tga, and now compiles (debug) with no warnings há 13 anos atrás
sort.h f30e1c69c9 boundary faces, matrix to list, fix tga, and now compiles (debug) with no warnings há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
speye.cpp b8c50e5f06 all examples build with static há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
tga.cpp f30e1c69c9 boundary faces, matrix to list, fix tga, and now compiles (debug) with no warnings há 13 anos atrás
tga.h f30e1c69c9 boundary faces, matrix to list, fix tga, and now compiles (debug) with no warnings há 13 anos atrás
todos.txt b8c50e5f06 all examples build with static há 13 anos atrás
trackball.cpp b8c50e5f06 all examples build with static há 13 anos atrás
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 há 13 anos atrás
transpose_blocks.cpp b8c50e5f06 all examples build with static há 13 anos atrás
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 há 13 anos atrás
tt.cpp d255c7a574 templated face matrix data type há 13 anos atrás
tt.h d255c7a574 templated face matrix data type há 13 anos atrás
tutorial.html 1a030a7b2c face occurences, edge lengths, boundary faces and on boundary, no header widget in tutorial há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
vf.cpp b8c50e5f06 all examples build with static há 13 anos atrás
vf.h b06ba7383e templates mesh reading/writing and normal computation functions há 13 anos atrás
write.cpp f30e1c69c9 boundary faces, matrix to list, fix tga, and now compiles (debug) with no warnings há 13 anos atrás
write.h b06ba7383e templates mesh reading/writing and normal computation functions há 13 anos atrás
writeDMAT.cpp b8c50e5f06 all examples build with static há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
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 há 13 anos atrás
writeOBJ.cpp b8c50e5f06 all examples build with static há 13 anos atrás
writeOBJ.h f30e1c69c9 boundary faces, matrix to list, fix tga, and now compiles (debug) with no warnings há 13 anos atrás
writeOFF.cpp b8c50e5f06 all examples build with static há 13 anos atrás
writeOFF.h b06ba7383e templates mesh reading/writing and normal computation functions há 13 anos atrás

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
// generated by autoexplicit.sh
template bool igl::readMESH, Eigen::Matrix, Eigen::Matrix >(std::basic_string, std::allocator >, Eigen::PlainObjectBase >&, Eigen::PlainObjectBase >&, Eigen::PlainObjectBase >&);
#endif