Alec Jacobson (jalec 8b9b21e163 added warning in sparse 12 éve
..
embree 81c3eb0fdd example for render to png 12 éve
matlab f64f623a31 more explicits, transitioning min_quad_with_fixed (sparse), lu lagrange is broken for constraints, is_symmetric with threshold, full from sparse 12 éve
mosek 020369bc7e write TGF graphs, mesh with sampled skeleton edges, tiny xml 12 éve
png e0a98389cb fixed bugs caught with gcc 12 éve
tetgen f6d07e01d1 * fixed bug in hsv_to_rgb function 12 éve
xml 6ef83ce82d explicit templates for xml (not quite working yet, but compiling) 12 éve
C_STR.h f361d3afe1 fixed bullshit min/max undef in medit. Hot dog slices work on cap 12 éve
Camera.cpp 9bc7464767 compile on windows with visual studio 12 éve
Camera.h 09ef1c952b camera class, render to png extra, yimg external, more material colors (those used in FAST paper), 13 éve
EPS.cpp 918eb788b0 medit with reantweakbar 12 éve
EPS.h 918eb788b0 medit with reantweakbar 12 éve
IndexComparison.h 1a5dd79889 optimize performance on sorting and unique routines 12 éve
MCTables.hh 9f80dbdd02 minor updates to marching cubes 13 éve
NormalType.h 4c00932f06 normal type 13 éve
ONE.h bd4d115fea major reorganization of directory structure 13 éve
PI.h bd4d115fea major reorganization of directory structure 13 éve
REDRUM.h 81c3eb0fdd example for render to png 12 éve
ReAntTweakBar.cpp d0b39290b1 bug fixes per 12 éve
ReAntTweakBar.h d0b39290b1 bug fixes per 12 éve
STR.h 6548d97306 string magic 12 éve
SortableRow.h b7fe54e95c higher precision writeoff and writedmat, fixed bug in mat_max, more templates, sort rows, unique rows, double area 12 éve
Timer.h 929bd03e21 * Fixed XMLSerializer to compile with gcc 12 éve
ZERO.h bd4d115fea major reorganization of directory structure 13 éve
adjacency_list.cpp 21f9758feb added a few specializations 13 éve
adjacency_list.h bd4d115fea major reorganization of directory structure 13 éve
adjacency_matrix.cpp 0b404948e7 fix bug in reantweakbar, better draw mesh and generalized adjacnecy matrix 12 éve
adjacency_matrix.h 0b404948e7 fix bug in reantweakbar, better draw mesh and generalized adjacnecy matrix 12 éve
all_edges.cpp 90c610c06b mv from volume project 12 éve
all_edges.h 90c610c06b mv from volume project 12 éve
all_pairs_distances.cpp bd4d115fea major reorganization of directory structure 13 éve
all_pairs_distances.h bd4d115fea major reorganization of directory structure 13 éve
axis_angle_to_quat.cpp 918eb788b0 medit with reantweakbar 12 éve
axis_angle_to_quat.h 918eb788b0 medit with reantweakbar 12 éve
barycenter.cpp d0b39290b1 bug fixes per 12 éve
barycenter.h 90c610c06b mv from volume project 12 éve
basename.cpp bd4d115fea major reorganization of directory structure 13 éve
basename.h bd4d115fea major reorganization of directory structure 13 éve
boundary_conditions.cpp 6095905162 fixed bug in boundary_conditions 12 éve
boundary_conditions.h 6348ff07eb added boundary conditions from FAST 12 éve
boundary_faces.cpp f911a43b02 explicit instances 12 éve
boundary_faces.h f911a43b02 explicit instances 12 éve
bounding_box_diagonal.cpp 027c6c3e0c embree hits 12 éve
bounding_box_diagonal.h 027c6c3e0c embree hits 12 éve
canonical_quaternions.cpp 5f7bb2d694 support for double quats in reanttweakbar and some templates 13 éve
canonical_quaternions.h 5f7bb2d694 support for double quats in reanttweakbar and some templates 13 éve
cat.cpp 13020d0872 libigl.a and mosek/tetgen extras compile on redhat (with some warnings and removed deprecations), static library makefile for anttweakbar 13 éve
cat.h bd4d115fea major reorganization of directory structure 13 éve
cocoa_key_to_anttweakbar_key.cpp 430c37544c ci before daniele moves to hg 13 éve
cocoa_key_to_anttweakbar_key.h bd4d115fea major reorganization of directory structure 13 éve
colon.cpp 1a5dd79889 optimize performance on sorting and unique routines 12 éve
colon.h bd4d115fea major reorganization of directory structure 13 éve
concat.cpp bd4d115fea major reorganization of directory structure 13 éve
concat.h bd4d115fea major reorganization of directory structure 13 éve
cotangent.cpp a1b5fdeea3 explicit instanciation 12 éve
cotangent.h bd4d115fea major reorganization of directory structure 13 éve
cotmatrix.cpp 13020d0872 libigl.a and mosek/tetgen extras compile on redhat (with some warnings and removed deprecations), static library makefile for anttweakbar 13 éve
cotmatrix.h 020369bc7e write TGF graphs, mesh with sampled skeleton edges, tiny xml 12 éve
create_index_vbo.cpp bd4d115fea major reorganization of directory structure 13 éve
create_index_vbo.h 9bc7464767 compile on windows with visual studio 12 éve
create_mesh_vbo.cpp bd4d115fea major reorganization of directory structure 13 éve
create_mesh_vbo.h 9bc7464767 compile on windows with visual studio 12 éve
create_shader_program.cpp bd4d115fea major reorganization of directory structure 13 éve
create_shader_program.h 9bc7464767 compile on windows with visual studio 12 éve
create_vector_vbo.cpp bd4d115fea major reorganization of directory structure 13 éve
create_vector_vbo.h 9bc7464767 compile on windows with visual studio 12 éve
cross.cpp bd4d115fea major reorganization of directory structure 13 éve
cross.h bd4d115fea major reorganization of directory structure 13 éve
destroy_shader_program.cpp 9bc7464767 compile on windows with visual studio 12 éve
destroy_shader_program.h 9bc7464767 compile on windows with visual studio 12 éve
diag.cpp 93b617064b draw mesh functions (from autodof/FAST code) and fixed bug in ReAntTweakbar and fixed warning in writeDMAT 13 éve
diag.h b46010fc5f massmatrix 13 éve
dirname.cpp 9e49a8d87b fixed verbose and merged 13 éve
dirname.h bd4d115fea major reorganization of directory structure 13 éve
dot.cpp bd4d115fea major reorganization of directory structure 13 éve
dot.h bd4d115fea major reorganization of directory structure 13 éve
doublearea.cpp a1b5fdeea3 explicit instanciation 12 éve
doublearea.h d0b39290b1 bug fixes per 12 éve
draw_beach_ball.cpp 00138fe83b draw_beach_ball fix 12 éve
draw_beach_ball.h cd699ac561 matrix to quaternion converter and draw beach ball glyph from anttweakbar 12 éve
draw_mesh.cpp 0b404948e7 fix bug in reantweakbar, better draw mesh and generalized adjacnecy matrix 12 éve
draw_mesh.h 9bc7464767 compile on windows with visual studio 12 éve
draw_point.cpp 9bc7464767 compile on windows with visual studio 12 éve
draw_point.h 430c37544c ci before daniele moves to hg 13 éve
edge_lengths.cpp a1b5fdeea3 explicit instanciation 12 éve
edge_lengths.h bd4d115fea major reorganization of directory structure 13 éve
edges.cpp 0232b4419d updated bbw demo (need to test again 12 éve
edges.h bd4d115fea major reorganization of directory structure 13 éve
edgetopology.cpp 9a5a4b544a edge topology clean up and mexErrMsgTxt 12 éve
edgetopology.h 9a5a4b544a edge topology clean up and mexErrMsgTxt 12 éve
example_fun.cpp 2a4bcd5c5a more documentation, fixed bug in reanttweakbar 12 éve
example_fun.h bd4d115fea major reorganization of directory structure 13 éve
face_occurences.cpp bd4d115fea major reorganization of directory structure 13 éve
face_occurences.h bd4d115fea major reorganization of directory structure 13 éve
faces_first.cpp 1f70076a7a fixed optimization flags in some Makefiles, tetgen wraper, launch medit, mosek wrapper 13 éve
faces_first.h 1a95558933 anttweakbar patch 12 éve
file_contents_as_string.cpp bd4d115fea major reorganization of directory structure 13 éve
file_contents_as_string.h bd4d115fea major reorganization of directory structure 13 éve
file_exists.cpp bd4d115fea major reorganization of directory structure 13 éve
file_exists.h bd4d115fea major reorganization of directory structure 13 éve
find.cpp fb286e6f8f matlab formating for printing 12 éve
find.h 98be5f8569 fixed bug in render to tga 13 éve
full.cpp f64f623a31 more explicits, transitioning min_quad_with_fixed (sparse), lu lagrange is broken for constraints, is_symmetric with threshold, full from sparse 12 éve
full.h f64f623a31 more explicits, transitioning min_quad_with_fixed (sparse), lu lagrange is broken for constraints, is_symmetric with threshold, full from sparse 12 éve
get_seconds.cpp 13020d0872 libigl.a and mosek/tetgen extras compile on redhat (with some warnings and removed deprecations), static library makefile for anttweakbar 13 éve
get_seconds.h bd4d115fea major reorganization of directory structure 13 éve
get_seconds_hires.cpp 9bc7464767 compile on windows with visual studio 12 éve
get_seconds_hires.h bd4d115fea major reorganization of directory structure 13 éve
gl_type_size.cpp bd4d115fea major reorganization of directory structure 13 éve
gl_type_size.h ad715f0020 hopefully fixed a bunch of missing includes for windows 13 éve
grad.cpp bd4d115fea major reorganization of directory structure 13 éve
grad.h 166a191467 clean up some headers, auto doc and todos 12 éve
gradMat.cpp 7838aaf443 added missing includes in gradmat 12 éve
gradMat.h 7838aaf443 added missing includes in gradmat 12 éve
harwell_boeing.cpp 98be5f8569 fixed bug in render to tga 13 éve
harwell_boeing.h 98be5f8569 fixed bug in render to tga 13 éve
hsv_to_rgb.cpp f6d07e01d1 * fixed bug in hsv_to_rgb function 12 éve
hsv_to_rgb.h 2355a62a2d oops, missing rgb2fromhsv 12 éve
igl_inline.h bd4d115fea major reorganization of directory structure 13 éve
invert_diag.cpp 8220c18253 explicit 12 éve
invert_diag.h 15ccf65951 invert diag 13 éve
is_border_vertex.cpp f7d4aaeaf3 make is_border_vertex() + tt() work for general face matrix types 13 éve
is_border_vertex.h 166a191467 clean up some headers, auto doc and todos 12 éve
is_dir.cpp bd4d115fea major reorganization of directory structure 13 éve
is_dir.h bd4d115fea major reorganization of directory structure 13 éve
is_file.cpp 9bc7464767 compile on windows with visual studio 12 éve
is_file.h bd4d115fea major reorganization of directory structure 13 éve
is_manifold.cpp a1b5fdeea3 explicit instanciation 12 éve
is_manifold.h 1f7f30930c changed templates for tt to enable different types for F and TT,TTi (F might be unsigned but TT has to contain -1's) 13 éve
is_readable.cpp 88ab84a1d9 readDMAT binary 13 éve
is_readable.h bd4d115fea major reorganization of directory structure 13 éve
is_sparse.cpp dd6d4ac69b is sparse and full templtated to work even if already full 12 éve
is_sparse.h dd6d4ac69b is sparse and full templtated to work even if already full 12 éve
is_symmetric.cpp f64f623a31 more explicits, transitioning min_quad_with_fixed (sparse), lu lagrange is broken for constraints, is_symmetric with threshold, full from sparse 12 éve
is_symmetric.h f64f623a31 more explicits, transitioning min_quad_with_fixed (sparse), lu lagrange is broken for constraints, is_symmetric with threshold, full from sparse 12 éve
is_writable.cpp bd4d115fea major reorganization of directory structure 13 éve
is_writable.h bd4d115fea major reorganization of directory structure 13 éve
jet.cpp 2355a62a2d oops, missing rgb2fromhsv 12 éve
jet.h 2355a62a2d oops, missing rgb2fromhsv 12 éve
launch_medit.cpp 6b9a74a8e3 bug fix in readDMAT 12 éve
launch_medit.h 6b9a74a8e3 bug fix in readDMAT 12 éve
limit_faces.cpp bd4d115fea major reorganization of directory structure 13 éve
limit_faces.h bd4d115fea major reorganization of directory structure 13 éve
list_to_matrix.cpp f911a43b02 explicit instances 12 éve
list_to_matrix.h 166a191467 clean up some headers, auto doc and todos 12 éve
load_shader.cpp bd4d115fea major reorganization of directory structure 13 éve
load_shader.h 9bc7464767 compile on windows with visual studio 12 éve
lu_lagrange.cpp f64f623a31 more explicits, transitioning min_quad_with_fixed (sparse), lu lagrange is broken for constraints, is_symmetric with threshold, full from sparse 12 éve
lu_lagrange.h f64f623a31 more explicits, transitioning min_quad_with_fixed (sparse), lu lagrange is broken for constraints, is_symmetric with threshold, full from sparse 12 éve
marching_cubes.cpp 9f80dbdd02 minor updates to marching cubes 13 éve
marching_cubes.h 166a191467 clean up some headers, auto doc and todos 12 éve
massmatrix.cpp 84b995054f fixed massmatrix 13 éve
massmatrix.h 020369bc7e write TGF graphs, mesh with sampled skeleton edges, tiny xml 12 éve
mat_max.cpp b7fe54e95c higher precision writeoff and writedmat, fixed bug in mat_max, more templates, sort rows, unique rows, double area 12 éve
mat_max.h bd4d115fea major reorganization of directory structure 13 éve
mat_min.cpp f911a43b02 explicit instances 12 éve
mat_min.h f911a43b02 explicit instances 12 éve
mat_to_quat.cpp 918eb788b0 medit with reantweakbar 12 éve
mat_to_quat.h cd699ac561 matrix to quaternion converter and draw beach ball glyph from anttweakbar 12 éve
material_colors.h b2673a24de embree 12 éve
matlab_format.cpp f64f623a31 more explicits, transitioning min_quad_with_fixed (sparse), lu lagrange is broken for constraints, is_symmetric with threshold, full from sparse 12 éve
matlab_format.h c6d497be0b missing include 12 éve
matrix_to_list.cpp 5af95b7828 merge 12 éve
matrix_to_list.h 98be5f8569 fixed bug in render to tga 13 éve
max_size.cpp bd4d115fea major reorganization of directory structure 13 éve
max_size.h bd4d115fea major reorganization of directory structure 13 éve
median.cpp 90c610c06b mv from volume project 12 éve
median.h 90c610c06b mv from volume project 12 éve
min_quad_dense.cpp 13020d0872 libigl.a and mosek/tetgen extras compile on redhat (with some warnings and removed deprecations), static library makefile for anttweakbar 13 éve
min_quad_dense.h 97e8cb20bd add use_lu as parameter to min_quad_dense 13 éve
min_quad_with_fixed.cpp 8d7630d99a min_quad_with_fixed is now truly sparse (still at least 4x slower than matlab) 12 éve
min_quad_with_fixed.h 8d7630d99a min_quad_with_fixed is now truly sparse (still at least 4x slower than matlab) 12 éve
min_size.cpp bd4d115fea major reorganization of directory structure 13 éve
min_size.h bd4d115fea major reorganization of directory structure 13 éve
mode.cpp bd4d115fea major reorganization of directory structure 13 éve
mode.h bd4d115fea major reorganization of directory structure 13 éve
moveFV.cpp bd4d115fea major reorganization of directory structure 13 éve
moveFV.h 166a191467 clean up some headers, auto doc and todos 12 éve
mvc.cpp 96f38d6247 missing cpp files 12 éve
mvc.h 166a191467 clean up some headers, auto doc and todos 12 éve
normalize_quat.cpp bd4d115fea major reorganization of directory structure 13 éve
normalize_quat.h bd4d115fea major reorganization of directory structure 13 éve
normalize_row_lengths.cpp 20641d7778 normalize rows disambiguation 13 éve
normalize_row_lengths.h 20641d7778 normalize rows disambiguation 13 éve
normalize_row_sums.cpp 98be5f8569 fixed bug in render to tga 13 éve
normalize_row_sums.h 98be5f8569 fixed bug in render to tga 13 éve
on_boundary.cpp 0232b4419d updated bbw demo (need to test again 12 éve
on_boundary.h bd4d115fea major reorganization of directory structure 13 éve
orth.cpp 96f38d6247 missing cpp files 12 éve
orth.h 166a191467 clean up some headers, auto doc and todos 12 éve
pathinfo.cpp 13020d0872 libigl.a and mosek/tetgen extras compile on redhat (with some warnings and removed deprecations), static library makefile for anttweakbar 13 éve
pathinfo.h bd4d115fea major reorganization of directory structure 13 éve
per_corner_normals.cpp 2032eaf5a1 found missing style sheet 13 éve
per_corner_normals.h 166a191467 clean up some headers, auto doc and todos 12 éve
per_face_normals.cpp 42942b051b parallel upsample 12 éve
per_face_normals.h 98be5f8569 fixed bug in render to tga 13 éve
per_vertex_attribute_smoothing.cpp b0c36fb339 per vertex attribute smoothing 13 éve
per_vertex_attribute_smoothing.h b0c36fb339 per vertex attribute smoothing 13 éve
per_vertex_normals.cpp e48ffaad49 removed debugging output 12 éve
per_vertex_normals.h 5aaf034493 indentation in per_vertex_normals 13 éve
plot_vector.cpp bd4d115fea major reorganization of directory structure 13 éve
plot_vector.h 166a191467 clean up some headers, auto doc and todos 12 éve
point_in_circle.cpp bd4d115fea major reorganization of directory structure 13 éve
point_in_circle.h bd4d115fea major reorganization of directory structure 13 éve
pos.h bd4d115fea major reorganization of directory structure 13 éve
print_gl_get.cpp bd4d115fea major reorganization of directory structure 13 éve
print_gl_get.h ad715f0020 hopefully fixed a bunch of missing includes for windows 13 éve
print_ijv.cpp bd4d115fea major reorganization of directory structure 13 éve
print_ijv.h bd4d115fea major reorganization of directory structure 13 éve
print_program_info_log.cpp bd4d115fea major reorganization of directory structure 13 éve
print_program_info_log.h 9bc7464767 compile on windows with visual studio 12 éve
print_shader_info_log.cpp bd4d115fea major reorganization of directory structure 13 éve
print_shader_info_log.h 9bc7464767 compile on windows with visual studio 12 éve
project.cpp 9e49a8d87b fixed verbose and merged 13 éve
project.h bd4d115fea major reorganization of directory structure 13 éve
project_to_line.cpp bb63394f8d project to lines better prototypes 12 éve
project_to_line.h bb63394f8d project to lines better prototypes 12 éve
quat_conjugate.cpp 09ef1c952b camera class, render to png extra, yimg external, more material colors (those used in FAST paper), 13 éve
quat_conjugate.h bd4d115fea major reorganization of directory structure 13 éve
quat_mult.cpp bd4d115fea major reorganization of directory structure 13 éve
quat_mult.h bd4d115fea major reorganization of directory structure 13 éve
quat_to_axis_angle.cpp 918eb788b0 medit with reantweakbar 12 éve
quat_to_axis_angle.h 918eb788b0 medit with reantweakbar 12 éve
quat_to_mat.cpp 09ef1c952b camera class, render to png extra, yimg external, more material colors (those used in FAST paper), 13 éve
quat_to_mat.h bd4d115fea major reorganization of directory structure 13 éve
read.cpp df3470adb9 read works with vector of vector 13 éve
read.h df3470adb9 read works with vector of vector 13 éve
readDMAT.cpp 6b9a74a8e3 bug fix in readDMAT 12 éve
readDMAT.h d8c6aebae3 readDMAT for vectors of vectors 13 éve
readMESH.cpp 974039f95c faster file formats 12 éve
readMESH.h 974039f95c faster file formats 12 éve
readNODE.cpp 929bd03e21 * Fixed XMLSerializer to compile with gcc 12 éve
readNODE.h dc620a9324 btter file formats, readNODE 12 éve
readOBJ.cpp 974039f95c faster file formats 12 éve
readOBJ.h 166a191467 clean up some headers, auto doc and todos 12 éve
readOFF.cpp 47eca76c0f Fixed bug in readoff that cast input to single precision float 12 éve
readOFF.h df3470adb9 read works with vector of vector 13 éve
readTGF.cpp 9bc7464767 compile on windows with visual studio 12 éve
readTGF.h b7c14347a1 sample edges from FAST 12 éve
removeDuplicates.cpp a3fa057018 templates for removeDuplicates 12 éve
removeDuplicates.h a3fa057018 templates for removeDuplicates 12 éve
removeUnreferenced.cpp dc620a9324 btter file formats, readNODE 12 éve
removeUnreferenced.h dc620a9324 btter file formats, readNODE 12 éve
remove_duplicate_vertices.cpp 67944859f5 fixed bug in remove_duplicate_vertices for windows 12 éve
remove_duplicate_vertices.h 90c610c06b mv from volume project 12 éve
render_to_tga.cpp 9bc7464767 compile on windows with visual studio 12 éve
render_to_tga.h 09ef1c952b camera class, render to png extra, yimg external, more material colors (those used in FAST paper), 13 éve
reorder.cpp 5af95b7828 merge 12 éve
reorder.h 3a23f100c2 merge 12 éve
repdiag.cpp 13020d0872 libigl.a and mosek/tetgen extras compile on redhat (with some warnings and removed deprecations), static library makefile for anttweakbar 13 éve
repdiag.h bd4d115fea major reorganization of directory structure 13 éve
repmat.cpp e0e76523a5 explicit 12 éve
repmat.h f64f623a31 more explicits, transitioning min_quad_with_fixed (sparse), lu lagrange is broken for constraints, is_symmetric with threshold, full from sparse 12 éve
report_gl_error.cpp bd4d115fea major reorganization of directory structure 13 éve
report_gl_error.h bd4d115fea major reorganization of directory structure 13 éve
rgb_to_hsv.cpp 2355a62a2d oops, missing rgb2fromhsv 12 éve
rgb_to_hsv.h 2355a62a2d oops, missing rgb2fromhsv 12 éve
right_axis.cpp e8ea1f9c76 axes from autodof 12 éve
right_axis.h e8ea1f9c76 axes from autodof 12 éve
rotate_by_quat.cpp 09ef1c952b camera class, render to png extra, yimg external, more material colors (those used in FAST paper), 13 éve
rotate_by_quat.h bd4d115fea major reorganization of directory structure 13 éve
round.cpp 90c610c06b mv from volume project 12 éve
round.h 90c610c06b mv from volume project 12 éve
rows_to_matrix.cpp bd4d115fea major reorganization of directory structure 13 éve
rows_to_matrix.h bd4d115fea major reorganization of directory structure 13 éve
sample_edges.cpp b7c14347a1 sample edges from FAST 12 éve
sample_edges.h b7c14347a1 sample edges from FAST 12 éve
slice.cpp 88d917db2b slice template 13 éve
slice.h a1b5fdeea3 explicit instanciation 12 éve
slice_into.cpp 13020d0872 libigl.a and mosek/tetgen extras compile on redhat (with some warnings and removed deprecations), static library makefile for anttweakbar 13 éve
slice_into.h bd4d115fea major reorganization of directory structure 13 éve
snap_to_canonical_view_quat.cpp 09ef1c952b camera class, render to png extra, yimg external, more material colors (those used in FAST paper), 13 éve
snap_to_canonical_view_quat.h bd4d115fea major reorganization of directory structure 13 éve
sort.cpp 1a5dd79889 optimize performance on sorting and unique routines 12 éve
sort.h 1a5dd79889 optimize performance on sorting and unique routines 12 éve
sortrows.cpp 1a5dd79889 optimize performance on sorting and unique routines 12 éve
sortrows.h 1a5dd79889 optimize performance on sorting and unique routines 12 éve
sparse.cpp 8b9b21e163 added warning in sparse 12 éve
sparse.h 8b9b21e163 added warning in sparse 12 éve
speye.cpp bd4d115fea major reorganization of directory structure 13 éve
speye.h bd4d115fea major reorganization of directory structure 13 éve
stdin_to_temp.cpp bd4d115fea major reorganization of directory structure 13 éve
stdin_to_temp.h bd4d115fea major reorganization of directory structure 13 éve
sum.cpp bd4d115fea major reorganization of directory structure 13 éve
sum.h bd4d115fea major reorganization of directory structure 13 éve
svd.cpp 9bc7464767 compile on windows with visual studio 12 éve
svd.h 9bc7464767 compile on windows with visual studio 12 éve
texture_from_tga.cpp 13020d0872 libigl.a and mosek/tetgen extras compile on redhat (with some warnings and removed deprecations), static library makefile for anttweakbar 13 éve
texture_from_tga.h 9bc7464767 compile on windows with visual studio 12 éve
tga.cpp bd4d115fea major reorganization of directory structure 13 éve
tga.h 9bc7464767 compile on windows with visual studio 12 éve
trackball.cpp cd699ac561 matrix to quaternion converter and draw beach ball glyph from anttweakbar 12 éve
trackball.h cd699ac561 matrix to quaternion converter and draw beach ball glyph from anttweakbar 12 éve
transpose_blocks.cpp 0c24b8bf32 fixed size_t 12 éve
transpose_blocks.h bd4d115fea major reorganization of directory structure 13 éve
tt.cpp f7d4aaeaf3 make is_border_vertex() + tt() work for general face matrix types 13 éve
tt.h 1f7f30930c changed templates for tt to enable different types for F and TT,TTi (F might be unsigned but TT has to contain -1's) 13 éve
uniform_type_to_string.cpp bd4d115fea major reorganization of directory structure 13 éve
uniform_type_to_string.h 9bc7464767 compile on windows with visual studio 12 éve
unique.cpp 1a5dd79889 optimize performance on sorting and unique routines 12 éve
unique.h 1a5dd79889 optimize performance on sorting and unique routines 12 éve
unique_simplices.cpp 90c610c06b mv from volume project 12 éve
unique_simplices.h 90c610c06b mv from volume project 12 éve
unproject.cpp bd4d115fea major reorganization of directory structure 13 éve
unproject.h 1d90da86f8 unproject to zero plane 13 éve
unproject_to_zero_plane.cpp 1d90da86f8 unproject to zero plane 13 éve
unproject_to_zero_plane.h 1d90da86f8 unproject to zero plane 13 éve
up_axis.cpp e8ea1f9c76 axes from autodof 12 éve
up_axis.h e8ea1f9c76 axes from autodof 12 éve
upsample.cpp 42942b051b parallel upsample 12 éve
upsample.h 42942b051b parallel upsample 12 éve
verbose.h 64cc763dd8 compiles on mac (bug fix in upsample) 13 éve
vf.cpp 21f9758feb added a few specializations 13 éve
vf.h bd4d115fea major reorganization of directory structure 13 éve
view_axis.cpp e8ea1f9c76 axes from autodof 12 éve
view_axis.h e8ea1f9c76 axes from autodof 12 éve
write.cpp bd4d115fea major reorganization of directory structure 13 éve
write.h bd4d115fea major reorganization of directory structure 13 éve
writeDMAT.cpp 96227047f8 performance tuning and explicits 12 éve
writeDMAT.h 974039f95c faster file formats 12 éve
writeMESH.cpp 974039f95c faster file formats 12 éve
writeMESH.h 974039f95c faster file formats 12 éve
writeOBJ.cpp 6de18dc9df more explicits 12 éve
writeOBJ.h bd4d115fea major reorganization of directory structure 13 éve
writeOFF.cpp 6de18dc9df more explicits 12 éve
writeOFF.h bd4d115fea major reorganization of directory structure 13 éve
writeTGF.cpp 52e50cdba2 clean up tinyxml make 12 éve
writeTGF.h 020369bc7e write TGF graphs, mesh with sampled skeleton edges, tiny xml 12 éve

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);

int number_of_vertices;
if(1 != fscanf(mesh_file," %d",&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));
int extra;
for(int i = 0;i {
double x,y,z;
if(4 != fscanf(mesh_file," %lg %lg %lg %d",&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;
}
int number_of_triangles;
if(1 != fscanf(mesh_file," %d",&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
int tri[3];
for(int i = 0;i {
if(4 != fscanf(mesh_file," %d %d %d %d",&tri[0],&tri[1],&tri[2],&extra))
{
printf("Error: expecting triangle indices...\n");
return false;
}
for(int 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;
}
int number_of_tetrahedra;
if(1 != fscanf(mesh_file," %d",&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
int a,b,c,d;
for(int i = 0;i {
if(5 != fscanf(mesh_file," %d %d %d %d %d",&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 mesh_file_name,
Eigen::PlainObjectBase& V,
Eigen::PlainObjectBase& T,
Eigen::PlainObjectBase& 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;

// 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);

int number_of_vertices;
if(1 != fscanf(mesh_file," %d",&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,3);
int extra;
for(int i = 0;i {
double x,y,z;
if(4 != fscanf(mesh_file," %lg %lg %lg %d",&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;
}
int number_of_triangles;
if(1 != fscanf(mesh_file," %d",&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,3);
// triangle indices
int tri[3];
for(int i = 0;i {
if(4 != fscanf(mesh_file," %d %d %d %d",&tri[0],&tri[1],&tri[2],&extra))
{
printf("Error: expecting triangle indices...\n");
return false;
}
for(int 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;
}
int number_of_tetrahedra;
if(1 != fscanf(mesh_file," %d",&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,4);
// tet indices
int a,b,c,d;
for(int i = 0;i {
if(5 != fscanf(mesh_file," %d %d %d %d %d",&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;
}
//{
// std::vector > vV,vT,vF;
// bool success = igl::readMESH(mesh_file_name,vV,vT,vF);
// if(!success)
// {
// // readMESH already printed error message to std err
// 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