Daniele Panozzo 1326c0ee3b * new tutorial example for frame fields 11 سال پیش
..
bbw df7b363ece rotation widget example 11 سال پیش
boost c39ca7747a fixed many style issues, missing copyrights, inlines 11 سال پیش
cgal c3325c9d16 duplicate vertex support in selfintersect 11 سال پیش
comiso 1326c0ee3b * new tutorial example for frame fields 11 سال پیش
embree 1de0c75000 arap parameterization no longer allowing reflections, using ref triangles 11 سال پیش
matlab 889234511e Merge branch 'master' of https://github.com/libigl/libigl 11 سال پیش
mosek b473232452 preprend license header to every file 11 سال پیش
png c39ca7747a fixed many style issues, missing copyrights, inlines 11 سال پیش
svd3x3 363027c9ff fixed bug in arap for *not* parameterizing 11 سال پیش
tetgen c39ca7747a fixed many style issues, missing copyrights, inlines 11 سال پیش
viewer 2c9843f164 * greatly improved the tutorial MIQ example 11 سال پیش
xml 50665ab20a Merge branch 'master' of https://github.com/libigl/libigl 11 سال پیش
ARAPEnergyType.h 6025da57dc ARAp example 11 سال پیش
C_STR.h c39ca7747a fixed many style issues, missing copyrights, inlines 11 سال پیش
Camera.h b3914046f0 fix alignment in Camera 11 سال پیش
EPS.cpp b473232452 preprend license header to every file 11 سال پیش
EPS.h b473232452 preprend license header to every file 11 سال پیش
IO 40aa09d1f3 templates and clean up 11 سال پیش
InElementAABB.h e44af8ca3f Fixed what Alec changed before, lib compiles with the new files. Made 11 سال پیش
IndexComparison.h b473232452 preprend license header to every file 11 سال پیش
MCTables.hh c39ca7747a fixed many style issues, missing copyrights, inlines 11 سال پیش
MouseController.h c39ca7747a fixed many style issues, missing copyrights, inlines 11 سال پیش
NormalType.h b2b071dc31 desaturate disabled rotate wdiget 11 سال پیش
ONE.h b473232452 preprend license header to every file 11 سال پیش
OpenGL_convenience.h c39ca7747a fixed many style issues, missing copyrights, inlines 11 سال پیش
PI.h b473232452 preprend license header to every file 11 سال پیش
REDRUM.h b473232452 preprend license header to every file 11 سال پیش
ReAntTweakBar.cpp c2646d97f6 medit 11 سال پیش
ReAntTweakBar.h c2646d97f6 medit 11 سال پیش
RotateWidget.h 3c1a54ee20 init order in RotateWidget 11 سال پیش
STR.h c39ca7747a fixed many style issues, missing copyrights, inlines 11 سال پیش
SolverStatus.h b473232452 preprend license header to every file 11 سال پیش
SortableRow.h c39ca7747a fixed many style issues, missing copyrights, inlines 11 سال پیش
Timer.h d10afaa873 fixed many missing IGL_INLINEs 11 سال پیش
Viewport.h 072cde3df4 bug fixes in rotate wiget, templates 11 سال پیش
WindingNumberAABB.h 946a60f916 mv most winding number code from project 11 سال پیش
WindingNumberMethod.h 946a60f916 mv most winding number code from project 11 سال پیش
WindingNumberTree.h c3325c9d16 duplicate vertex support in selfintersect 11 سال پیش
ZERO.h b473232452 preprend license header to every file 11 سال پیش
active_set.cpp 0f69e26554 Started camera example (not working correctly yet) 11 سال پیش
active_set.h fde20c73d9 Merge branch 'master' of https://github.com/libigl/libigl 11 سال پیش
add_barycenter.cpp c39ca7747a fixed many style issues, missing copyrights, inlines 11 سال پیش
add_barycenter.h e421bba4f7 cleanup 11 سال پیش
adjacency_list.cpp 450d22530b clean up principal curvature example 11 سال پیش
adjacency_list.h b473232452 preprend license header to every file 11 سال پیش
adjacency_matrix.cpp dd6bcb61bd non deprecated adjacency matrix 11 سال پیش
adjacency_matrix.h b473232452 preprend license header to every file 11 سال پیش
all_edges.cpp b473232452 preprend license header to every file 11 سال پیش
all_edges.h b473232452 preprend license header to every file 11 سال پیش
all_pairs_distances.cpp b473232452 preprend license header to every file 11 سال پیش
all_pairs_distances.h b473232452 preprend license header to every file 11 سال پیش
angular_distance.cpp d10afaa873 fixed many missing IGL_INLINEs 11 سال پیش
angular_distance.h d10afaa873 fixed many missing IGL_INLINEs 11 سال پیش
any_of.cpp b0f3bad258 added mouse controller and any_of wrapper and license 11 سال پیش
any_of.h b0f3bad258 added mouse controller and any_of wrapper and license 11 سال پیش
arap_linear_block.cpp d14905d818 migrated a lot of the FAST code including interface to Sifakis' fast 3x3 svd with SSE and AVX support (determined during compile) 11 سال پیش
arap_linear_block.h d14905d818 migrated a lot of the FAST code including interface to Sifakis' fast 3x3 svd with SSE and AVX support (determined during compile) 11 سال پیش
arap_rhs.cpp 49dadb340c arap parameterization working, really 11 سال پیش
arap_rhs.h ac36e0fddb arap works as parameterization (note interface changes) 11 سال پیش
areamatrix.cpp 6ccca30cba clean up lscm and areamatrix 11 سال پیش
areamatrix.h 6ccca30cba clean up lscm and areamatrix 11 سال پیش
avg_edge_length.cpp 450d22530b clean up principal curvature example 11 سال پیش
avg_edge_length.h 5b5f473c0d fixed weird include situation in avg_edge_length 11 سال پیش
axis_angle_to_quat.cpp b473232452 preprend license header to every file 11 سال پیش
axis_angle_to_quat.h b473232452 preprend license header to every file 11 سال پیش
barycenter.cpp b473232452 preprend license header to every file 11 سال پیش
barycenter.h b473232452 preprend license header to every file 11 سال پیش
barycentric2global.cpp 4582a4f49d added a function that projects a mesh onto another using embree 11 سال پیش
barycentric2global.h c39ca7747a fixed many style issues, missing copyrights, inlines 11 سال پیش
barycentric_coordinates.cpp aba141dec1 support for 2d bary coords 11 سال پیش
barycentric_coordinates.h aba141dec1 support for 2d bary coords 11 سال پیش
basename.cpp b473232452 preprend license header to every file 11 سال پیش
basename.h b473232452 preprend license header to every file 11 سال پیش
boundary_conditions.cpp 5c04a7b9d2 Removed overzealous check in boundary_conditions when there's only a single point handle. 11 سال پیش
boundary_conditions.h b473232452 preprend license header to every file 11 سال پیش
boundary_faces.cpp e100aa33d6 note in reanttweakbar and boundary faces assertion 11 سال پیش
boundary_faces.h b473232452 preprend license header to every file 11 سال پیش
boundary_vertices_sorted.cpp 3674980304 comments in boundary* and map_vert* 11 سال پیش
boundary_vertices_sorted.h 3674980304 comments in boundary* and map_vert* 11 سال پیش
bounding_box_diagonal.cpp b473232452 preprend license header to every file 11 سال پیش
bounding_box_diagonal.h b473232452 preprend license header to every file 11 سال پیش
canonical_quaternions.cpp b473232452 preprend license header to every file 11 سال پیش
canonical_quaternions.h 5b73716bcf major camera refactor 11 سال پیش
cat.cpp b473232452 preprend license header to every file 11 سال پیش
cat.h b473232452 preprend license header to every file 11 سال پیش
cocoa_key_to_anttweakbar_key.cpp b473232452 preprend license header to every file 11 سال پیش
cocoa_key_to_anttweakbar_key.h b473232452 preprend license header to every file 11 سال پیش
colon.cpp 0176fe9813 removed colon error message, color example 11 سال پیش
colon.h b473232452 preprend license header to every file 11 سال پیش
column_to_quats.cpp 3ee6fa10ec mouse controller and quaternion io 11 سال پیش
column_to_quats.h 3ee6fa10ec mouse controller and quaternion io 11 سال پیش
columnize.cpp 04d3a59a57 floats and doubles for arap_dof 11 سال پیش
columnize.h d14905d818 migrated a lot of the FAST code including interface to Sifakis' fast 3x3 svd with SSE and AVX support (determined during compile) 11 سال پیش
comb_cross_field.cpp e44af8ca3f Fixed what Alec changed before, lib compiles with the new files. Made 11 سال پیش
comb_cross_field.h e44af8ca3f Fixed what Alec changed before, lib compiles with the new files. Made 11 سال پیش
comb_frame_field.cpp e44af8ca3f Fixed what Alec changed before, lib compiles with the new files. Made 11 سال پیش
comb_frame_field.h e44af8ca3f Fixed what Alec changed before, lib compiles with the new files. Made 11 سال پیش
compute_frame_field_bisectors.cpp e44af8ca3f Fixed what Alec changed before, lib compiles with the new files. Made 11 سال پیش
compute_frame_field_bisectors.h e44af8ca3f Fixed what Alec changed before, lib compiles with the new files. Made 11 سال پیش
cotangent.cpp 11efa92d41 added cot3 references 11 سال پیش
cotangent.h 2cbb9c856b geometric cotangent, volume, face areas, edge lengths for tet meshes 11 سال پیش
cotmatrix.cpp 7801bae065 fix slow cotmatrix 11 سال پیش
cotmatrix.h 1de0c75000 arap parameterization no longer allowing reflections, using ref triangles 11 سال پیش
covariance_scatter_matrix.cpp 49dadb340c arap parameterization working, really 11 سال پیش
covariance_scatter_matrix.h 49dadb340c arap parameterization working, really 11 سال پیش
create_index_vbo.cpp b473232452 preprend license header to every file 11 سال پیش
create_index_vbo.h b473232452 preprend license header to every file 11 سال پیش
create_mesh_vbo.cpp b473232452 preprend license header to every file 11 سال پیش
create_mesh_vbo.h b473232452 preprend license header to every file 11 سال پیش
create_shader_program.cpp b473232452 preprend license header to every file 11 سال پیش
create_shader_program.h b473232452 preprend license header to every file 11 سال پیش
create_vector_vbo.cpp b473232452 preprend license header to every file 11 سال پیش
create_vector_vbo.h b473232452 preprend license header to every file 11 سال پیش
cross.cpp 38cd4684cd better cross, volume and new barycentric coordinates (tets only) 11 سال پیش
cross.h 38cd4684cd better cross, volume and new barycentric coordinates (tets only) 11 سال پیش
cross_field_missmatch.cpp e44af8ca3f Fixed what Alec changed before, lib compiles with the new files. Made 11 سال پیش
cross_field_missmatch.h e44af8ca3f Fixed what Alec changed before, lib compiles with the new files. Made 11 سال پیش
cumsum.cpp 83135b0027 hg cleanup' 11 سال پیش
cumsum.h b4b18430fd sample mesh, cumulative sum, histogram 11 سال پیش
cut_mesh_from_singularities.cpp 2c9843f164 * greatly improved the tutorial MIQ example 11 سال پیش
cut_mesh_from_singularities.h 2c9843f164 * greatly improved the tutorial MIQ example 11 سال پیش
dated_copy.cpp c39ca7747a fixed many style issues, missing copyrights, inlines 11 سال پیش
dated_copy.h d10afaa873 fixed many missing IGL_INLINEs 11 سال پیش
destroy_shader_program.cpp b473232452 preprend license header to every file 11 سال پیش
destroy_shader_program.h b473232452 preprend license header to every file 11 سال پیش
diag.cpp b473232452 preprend license header to every file 11 سال پیش
diag.h b473232452 preprend license header to every file 11 سال پیش
dihedral_angles.cpp 2cbb9c856b geometric cotangent, volume, face areas, edge lengths for tet meshes 11 سال پیش
dihedral_angles.h 2cbb9c856b geometric cotangent, volume, face areas, edge lengths for tet meshes 11 سال پیش
dirname.cpp b473232452 preprend license header to every file 11 سال پیش
dirname.h b473232452 preprend license header to every file 11 سال پیش
dot.cpp b473232452 preprend license header to every file 11 سال پیش
dot.h b473232452 preprend license header to every file 11 سال پیش
doublearea.cpp aba141dec1 support for 2d bary coords 11 سال پیش
doublearea.h aba141dec1 support for 2d bary coords 11 سال پیش
dqs.cpp c39ca7747a fixed many style issues, missing copyrights, inlines 11 سال پیش
dqs.h c39ca7747a fixed many style issues, missing copyrights, inlines 11 سال پیش
draw_beach_ball.cpp b473232452 preprend license header to every file 11 سال پیش
draw_beach_ball.h f733e02c0a bug fix 11 سال پیش
draw_floor.cpp ccbdc48e71 fixed bug in camera and better parameterization of draw floor 11 سال پیش
draw_floor.h ccbdc48e71 fixed bug in camera and better parameterization of draw floor 11 سال پیش
draw_mesh.cpp 404a719d25 stl file format 11 سال پیش
draw_mesh.h b473232452 preprend license header to every file 11 سال پیش
draw_point.cpp b473232452 preprend license header to every file 11 سال پیش
draw_point.h b473232452 preprend license header to every file 11 سال پیش
draw_rectangular_marquee.cpp d10afaa873 fixed many missing IGL_INLINEs 11 سال پیش
draw_rectangular_marquee.h d10afaa873 fixed many missing IGL_INLINEs 11 سال پیش
draw_skeleton_3d.cpp 865b841fb1 openmp if catch in project_to_line* 11 سال پیش
draw_skeleton_3d.h ae29184e91 draw skeleton with colors 11 سال پیش
draw_skeleton_vector_graphics.cpp 072cde3df4 bug fixes in rotate wiget, templates 11 سال پیش
draw_skeleton_vector_graphics.h 072cde3df4 bug fixes in rotate wiget, templates 11 سال پیش
edge_lengths.cpp 2cbb9c856b geometric cotangent, volume, face areas, edge lengths for tet meshes 11 سال پیش
edge_lengths.h 2cbb9c856b geometric cotangent, volume, face areas, edge lengths for tet meshes 11 سال پیش
edges.cpp b473232452 preprend license header to every file 11 سال پیش
edges.h b473232452 preprend license header to every file 11 سال پیش
edgetopology.cpp b473232452 preprend license header to every file 11 سال پیش
edgetopology.h b473232452 preprend license header to every file 11 سال پیش
example_fun.cpp d14905d818 migrated a lot of the FAST code including interface to Sifakis' fast 3x3 svd with SSE and AVX support (determined during compile) 11 سال پیش
example_fun.h b473232452 preprend license header to every file 11 سال پیش
exterior_edges.cpp 946a60f916 mv most winding number code from project 11 سال پیش
exterior_edges.h 946a60f916 mv most winding number code from project 11 سال پیش
face_areas.cpp c39ca7747a fixed many style issues, missing copyrights, inlines 11 سال پیش
face_areas.h 2cbb9c856b geometric cotangent, volume, face areas, edge lengths for tet meshes 11 سال پیش
face_occurences.cpp b473232452 preprend license header to every file 11 سال پیش
face_occurences.h b473232452 preprend license header to every file 11 سال پیش
faces_first.cpp b473232452 preprend license header to every file 11 سال پیش
faces_first.h b473232452 preprend license header to every file 11 سال پیش
file_contents_as_string.cpp b473232452 preprend license header to every file 11 سال پیش
file_contents_as_string.h b473232452 preprend license header to every file 11 سال پیش
file_dialog_open.cpp 5c91e9cc07 viewer compiles on windows 11 سال پیش
file_dialog_open.h 1ca72046b6 fixed lots of issues with file_dialog.*, template in tt 11 سال پیش
file_dialog_save.cpp 5c91e9cc07 viewer compiles on windows 11 سال پیش
file_dialog_save.h 1ca72046b6 fixed lots of issues with file_dialog.*, template in tt 11 سال پیش
file_exists.cpp b473232452 preprend license header to every file 11 سال پیش
file_exists.h b473232452 preprend license header to every file 11 سال پیش
find.cpp b473232452 preprend license header to every file 11 سال پیش
find.h b473232452 preprend license header to every file 11 سال پیش
find_cross_field_singularities.cpp e44af8ca3f Fixed what Alec changed before, lib compiles with the new files. Made 11 سال پیش
find_cross_field_singularities.h e44af8ca3f Fixed what Alec changed before, lib compiles with the new files. Made 11 سال پیش
fit_plane.cpp c39ca7747a fixed many style issues, missing copyrights, inlines 11 سال پیش
fit_plane.h 5e6a231f3f updated template types in removeUnreference and fixed a minor bug 11 سال پیش
flare_textures.h.REMOVED.git-id c39ca7747a fixed many style issues, missing copyrights, inlines 11 سال پیش
forward_kinematics.cpp 3ee6fa10ec mouse controller and quaternion io 11 سال پیش
forward_kinematics.h 3ee6fa10ec mouse controller and quaternion io 11 سال پیش
frame_field_deformer.cpp 1326c0ee3b * new tutorial example for frame fields 11 سال پیش
frame_field_deformer.h 1326c0ee3b * new tutorial example for frame fields 11 سال پیش
full.cpp b473232452 preprend license header to every file 11 سال پیش
full.h b473232452 preprend license header to every file 11 سال پیش
gaussian_curvature.cpp 43ed3636e1 gaussian curvature and internal angles 11 سال پیش
gaussian_curvature.h 43ed3636e1 gaussian curvature and internal angles 11 سال پیش
get_seconds.cpp b473232452 preprend license header to every file 11 سال پیش
get_seconds.h b473232452 preprend license header to every file 11 سال پیش
get_seconds_hires.cpp b473232452 preprend license header to every file 11 سال پیش
get_seconds_hires.h b473232452 preprend license header to every file 11 سال پیش
gl_type_size.cpp b473232452 preprend license header to every file 11 سال پیش
gl_type_size.h b473232452 preprend license header to every file 11 سال پیش
grad.cpp b473232452 preprend license header to every file 11 سال پیش
grad.h b473232452 preprend license header to every file 11 سال پیش
gradMat.cpp cac3b04a2a Gradient example 11 سال پیش
gradMat.h b473232452 preprend license header to every file 11 سال پیش
group_sum_matrix.cpp d14905d818 migrated a lot of the FAST code including interface to Sifakis' fast 3x3 svd with SSE and AVX support (determined during compile) 11 سال پیش
group_sum_matrix.h d14905d818 migrated a lot of the FAST code including interface to Sifakis' fast 3x3 svd with SSE and AVX support (determined during compile) 11 سال پیش
harmonic.cpp 39dd224f64 fixed some bugs in arap 11 سال پیش
harmonic.h 2608885ba3 harmonic weights 11 سال پیش
harwell_boeing.cpp b473232452 preprend license header to every file 11 سال پیش
harwell_boeing.h b473232452 preprend license header to every file 11 سال پیش
histc.cpp c39ca7747a fixed many style issues, missing copyrights, inlines 11 سال پیش
histc.h aebcaf8c6d better histc prototype, fixed warnings 11 سال پیش
hsv_to_rgb.cpp d10afaa873 fixed many missing IGL_INLINEs 11 سال پیش
hsv_to_rgb.h d10afaa873 fixed many missing IGL_INLINEs 11 سال پیش
igl_inline.h b473232452 preprend license header to every file 11 سال پیش
in_element.cpp a1e3e14eb0 in element 11 سال پیش
in_element.h a1e3e14eb0 in element 11 سال پیش
internal_angles.cpp 43ed3636e1 gaussian curvature and internal angles 11 سال پیش
internal_angles.h 43ed3636e1 gaussian curvature and internal angles 11 سال پیش
intersect.cpp df7b363ece rotation widget example 11 سال پیش
intersect.h df7b363ece rotation widget example 11 سال پیش
invert_diag.cpp b473232452 preprend license header to every file 11 سال پیش
invert_diag.h b473232452 preprend license header to every file 11 سال پیش
is_border_vertex.cpp 2513a565df added some template instantiations 11 سال پیش
is_border_vertex.h b473232452 preprend license header to every file 11 سال پیش
is_dir.cpp b473232452 preprend license header to every file 11 سال پیش
is_dir.h b473232452 preprend license header to every file 11 سال پیش
is_file.cpp b473232452 preprend license header to every file 11 سال پیش
is_file.h b473232452 preprend license header to every file 11 سال پیش
is_manifold.cpp b473232452 preprend license header to every file 11 سال پیش
is_manifold.h b473232452 preprend license header to every file 11 سال پیش
is_planar.cpp c39ca7747a fixed many style issues, missing copyrights, inlines 11 سال پیش
is_planar.h d14905d818 migrated a lot of the FAST code including interface to Sifakis' fast 3x3 svd with SSE and AVX support (determined during compile) 11 سال پیش
is_readable.cpp b473232452 preprend license header to every file 11 سال پیش
is_readable.h b473232452 preprend license header to every file 11 سال پیش
is_sparse.cpp b473232452 preprend license header to every file 11 سال پیش
is_sparse.h b473232452 preprend license header to every file 11 سال پیش
is_symmetric.cpp a6c7612f3f is symmetric is not defined for empty input 11 سال پیش
is_symmetric.h b473232452 preprend license header to every file 11 سال پیش
is_writable.cpp b473232452 preprend license header to every file 11 سال پیش
is_writable.h b473232452 preprend license header to every file 11 سال پیش
jet.cpp cac3b04a2a Gradient example 11 سال پیش
jet.h 643bb356eb gaussian curvature example in tutorial 11 سال پیش
kronecker_product.cpp efa240a2a5 kronecker product exists already in Eigen 11 سال پیش
kronecker_product.h efa240a2a5 kronecker product exists already in Eigen 11 سال پیش
launch_medit.cpp b473232452 preprend license header to every file 11 سال پیش
launch_medit.h b473232452 preprend license header to every file 11 سال پیش
lbs_matrix.cpp c39ca7747a fixed many style issues, missing copyrights, inlines 11 سال پیش
lbs_matrix.h fddb3d6563 lbs_matrix overloads for different style output 11 سال پیش
lens_flare.cpp d10afaa873 fixed many missing IGL_INLINEs 11 سال پیش
lens_flare.h d10afaa873 fixed many missing IGL_INLINEs 11 سال پیش
limit_faces.cpp b473232452 preprend license header to every file 11 سال پیش
limit_faces.h b473232452 preprend license header to every file 11 سال پیش
line_segment_in_rectangle.cpp 3ee6fa10ec mouse controller and quaternion io 11 سال پیش
line_segment_in_rectangle.h 3ee6fa10ec mouse controller and quaternion io 11 سال پیش
list_to_matrix.cpp 9af8e5234a cleanup new code mess enough to compile 11 سال پیش
list_to_matrix.h b473232452 preprend license header to every file 11 سال پیش
load_shader.cpp b473232452 preprend license header to every file 11 سال پیش
load_shader.h b473232452 preprend license header to every file 11 سال پیش
local_basis.cpp c41326ae56 Merge branch 'master' of https://github.com/libigl/libigl 11 سال پیش
local_basis.h c39ca7747a fixed many style issues, missing copyrights, inlines 11 سال پیش
lscm.cpp 6ccca30cba clean up lscm and areamatrix 11 سال پیش
lscm.h 6ccca30cba clean up lscm and areamatrix 11 سال پیش
lu_lagrange.cpp b473232452 preprend license header to every file 11 سال پیش
lu_lagrange.h b473232452 preprend license header to every file 11 سال پیش
map_vertices_to_circle.cpp 4ee4da98b0 rm sign/unsign warning 11 سال پیش
map_vertices_to_circle.h ae03f73648 * added tutorial for ARAP parametrization (broken) 11 سال پیش
marching_cubes.cpp 9f80dbdd02 minor updates to marching cubes 13 سال پیش
marching_cubes.h c39ca7747a fixed many style issues, missing copyrights, inlines 11 سال پیش
massmatrix.cpp e33308c77d dynamics in arap 11 سال پیش
massmatrix.h e33308c77d dynamics in arap 11 سال پیش
mat_max.cpp b473232452 preprend license header to every file 11 سال پیش
mat_max.h b473232452 preprend license header to every file 11 سال پیش
mat_min.cpp b473232452 preprend license header to every file 11 سال پیش
mat_min.h b473232452 preprend license header to every file 11 سال پیش
mat_to_quat.cpp b473232452 preprend license header to every file 11 سال پیش
mat_to_quat.h b473232452 preprend license header to every file 11 سال پیش
material_colors.h ae29184e91 draw skeleton with colors 11 سال پیش
matlab_format.cpp 49dadb340c arap parameterization working, really 11 سال پیش
matlab_format.h b473232452 preprend license header to every file 11 سال پیش
matrix_to_list.cpp b473232452 preprend license header to every file 11 سال پیش
matrix_to_list.h b473232452 preprend license header to every file 11 سال پیش
max_size.cpp b473232452 preprend license header to every file 11 سال پیش
max_size.h b473232452 preprend license header to every file 11 سال پیش
median.cpp a8a2ca6d03 fix median for even input 11 سال پیش
median.h b473232452 preprend license header to every file 11 سال پیش
min_quad_dense.cpp b473232452 preprend license header to every file 11 سال پیش
min_quad_dense.h b473232452 preprend license header to every file 11 سال پیش
min_quad_with_fixed.cpp 6ccca30cba clean up lscm and areamatrix 11 سال پیش
min_quad_with_fixed.h abd3989efb - new tutorial example for harmonic parametrization 11 سال پیش
min_size.cpp b473232452 preprend license header to every file 11 سال پیش
min_size.h b473232452 preprend license header to every file 11 سال پیش
mode.cpp b473232452 preprend license header to every file 11 سال پیش
mode.h b473232452 preprend license header to every file 11 سال پیش
moveFV.cpp b473232452 preprend license header to every file 11 سال پیش
moveFV.h b473232452 preprend license header to every file 11 سال پیش
moveVF.cpp b473232452 preprend license header to every file 11 سال پیش
moveVF.h b473232452 preprend license header to every file 11 سال پیش
mvc.cpp f12fa9bd9d some linux compilation fixes.. 11 سال پیش
mvc.h b473232452 preprend license header to every file 11 سال پیش
normalize_quat.cpp b473232452 preprend license header to every file 11 سال پیش
normalize_quat.h b473232452 preprend license header to every file 11 سال پیش
normalize_row_lengths.cpp b473232452 preprend license header to every file 11 سال پیش
normalize_row_lengths.h 43b01106e9 normals example 11 سال پیش
normalize_row_sums.cpp df7b363ece rotation widget example 11 سال پیش
normalize_row_sums.h df7b363ece rotation widget example 11 سال پیش
on_boundary.cpp b473232452 preprend license header to every file 11 سال پیش
on_boundary.h b473232452 preprend license header to every file 11 سال پیش
orient_outward.cpp b473232452 preprend license header to every file 11 سال پیش
orient_outward.h b473232452 preprend license header to every file 11 سال پیش
orth.cpp b473232452 preprend license header to every file 11 سال پیش
orth.h b473232452 preprend license header to every file 11 سال پیش
partition.cpp c39ca7747a fixed many style issues, missing copyrights, inlines 11 سال پیش
partition.h c39ca7747a fixed many style issues, missing copyrights, inlines 11 سال پیش
path_to_executable.cpp c39ca7747a fixed many style issues, missing copyrights, inlines 11 سال پیش
path_to_executable.h d10afaa873 fixed many missing IGL_INLINEs 11 سال پیش
pathinfo.cpp b473232452 preprend license header to every file 11 سال پیش
pathinfo.h b3914046f0 fix alignment in Camera 11 سال پیش
per_corner_normals.cpp 2513a565df added some template instantiations 11 سال پیش
per_corner_normals.h b473232452 preprend license header to every file 11 سال پیش
per_face_normals.cpp 43ed3636e1 gaussian curvature and internal angles 11 سال پیش
per_face_normals.h f4ee805a31 fixed bug in quicklook 11 سال پیش
per_vertex_attribute_smoothing.cpp b473232452 preprend license header to every file 11 سال پیش
per_vertex_attribute_smoothing.h b473232452 preprend license header to every file 11 سال پیش
per_vertex_normals.cpp 43b01106e9 normals example 11 سال پیش
per_vertex_normals.h 43ed3636e1 gaussian curvature and internal angles 11 سال پیش
planarize_quad_mesh.cpp e44af8ca3f Fixed what Alec changed before, lib compiles with the new files. Made 11 سال پیش
planarize_quad_mesh.h f2050e5a81 quadrangulation, planarization, various other VF functionalities 11 سال پیش
plane_project.cpp c16084d7e6 minor fix in an assert in plane_project.cpp 11 سال پیش
plane_project.h 1de0c75000 arap parameterization no longer allowing reflections, using ref triangles 11 سال پیش
plot_vector.cpp b473232452 preprend license header to every file 11 سال پیش
plot_vector.h b473232452 preprend license header to every file 11 سال پیش
point_in_circle.cpp b473232452 preprend license header to every file 11 سال پیش
point_in_circle.h b473232452 preprend license header to every file 11 سال پیش
point_in_poly.cpp b473232452 preprend license header to every file 11 سال پیش
point_in_poly.h b473232452 preprend license header to every file 11 سال پیش
polar_dec.cpp b473232452 preprend license header to every file 11 سال پیش
polar_dec.h b473232452 preprend license header to every file 11 سال پیش
polar_svd.cpp dedfa7e1e7 arap works in 2D (bug fix in fit_rotations_planar) 11 سال پیش
polar_svd.h b473232452 preprend license header to every file 11 سال پیش
pos.h e421bba4f7 cleanup 11 سال پیش
principal_curvature.cpp 450d22530b clean up principal curvature example 11 سال پیش
principal_curvature.h 450d22530b clean up principal curvature example 11 سال پیش
print_gl_get.cpp b473232452 preprend license header to every file 11 سال پیش
print_gl_get.h b473232452 preprend license header to every file 11 سال پیش
print_ijv.cpp b473232452 preprend license header to every file 11 سال پیش
print_ijv.h b473232452 preprend license header to every file 11 سال پیش
print_program_info_log.cpp b473232452 preprend license header to every file 11 سال پیش
print_program_info_log.h b473232452 preprend license header to every file 11 سال پیش
print_shader_info_log.cpp b473232452 preprend license header to every file 11 سال پیش
print_shader_info_log.h b473232452 preprend license header to every file 11 سال پیش
project.cpp 404a719d25 stl file format 11 سال پیش
project.h b473232452 preprend license header to every file 11 سال پیش
project_to_line.cpp 865b841fb1 openmp if catch in project_to_line* 11 سال پیش
project_to_line.h df7b363ece rotation widget example 11 سال پیش
project_to_line_segment.cpp 865b841fb1 openmp if catch in project_to_line* 11 سال پیش
project_to_line_segment.h e5bca62822 wrong include 11 سال پیش
quad_planarity.cpp f2050e5a81 quadrangulation, planarization, various other VF functionalities 11 سال پیش
quad_planarity.h f2050e5a81 quadrangulation, planarization, various other VF functionalities 11 سال پیش
quat_conjugate.cpp b473232452 preprend license header to every file 11 سال پیش
quat_conjugate.h b473232452 preprend license header to every file 11 سال پیش
quat_mult.cpp b473232452 preprend license header to every file 11 سال پیش
quat_mult.h b473232452 preprend license header to every file 11 سال پیش
quat_to_axis_angle.cpp b473232452 preprend license header to every file 11 سال پیش
quat_to_axis_angle.h b473232452 preprend license header to every file 11 سال پیش
quat_to_mat.cpp b473232452 preprend license header to every file 11 سال پیش
quat_to_mat.h b473232452 preprend license header to every file 11 سال پیش
quats_to_column.cpp 3ee6fa10ec mouse controller and quaternion io 11 سال پیش
quats_to_column.h 3ee6fa10ec mouse controller and quaternion io 11 سال پیش
random_dir.cpp d10afaa873 fixed many missing IGL_INLINEs 11 سال پیش
random_dir.h d10afaa873 fixed many missing IGL_INLINEs 11 سال پیش
random_points_on_mesh.cpp b9babab1cf note in random_points_on_mesh about alias table method 11 سال پیش
random_points_on_mesh.h d14905d818 migrated a lot of the FAST code including interface to Sifakis' fast 3x3 svd with SSE and AVX support (determined during compile) 11 سال پیش
randperm.cpp 3d9295b22a templates 11 سال پیش
randperm.h b473232452 preprend license header to every file 11 سال پیش
ray_sphere_intersect.cpp c39ca7747a fixed many style issues, missing copyrights, inlines 11 سال پیش
ray_sphere_intersect.h 609c7351ec rotating widget example with dependencies 11 سال پیش
read.cpp 2513a565df added some template instantiations 11 سال پیش
read.h b473232452 preprend license header to every file 11 سال پیش
readCSV.cpp 7afa4c43c9 renamed read_eigen... to readCSV to match others 11 سال پیش
readCSV.h 7afa4c43c9 renamed read_eigen... to readCSV to match others 11 سال پیش
readDMAT.cpp 6025da57dc ARAp example 11 سال پیش
readDMAT.h b473232452 preprend license header to every file 11 سال پیش
readMESH.cpp b473232452 preprend license header to every file 11 سال پیش
readMESH.h b473232452 preprend license header to every file 11 سال پیش
readNODE.cpp b473232452 preprend license header to every file 11 سال پیش
readNODE.h b473232452 preprend license header to every file 11 سال پیش
readOBJ.cpp 9af8e5234a cleanup new code mess enough to compile 11 سال پیش
readOBJ.h b473232452 preprend license header to every file 11 سال پیش
readOFF.cpp 027a77cb5c readOFF: quenched a warning 11 سال پیش
readOFF.h b473232452 preprend license header to every file 11 سال پیش
readSTL.cpp 9af8e5234a cleanup new code mess enough to compile 11 سال پیش
readSTL.h 404a719d25 stl file format 11 سال پیش
readTGF.cpp df7b363ece rotation widget example 11 سال پیش
readTGF.h df7b363ece rotation widget example 11 سال پیش
readWRL.cpp b473232452 preprend license header to every file 11 سال پیش
readWRL.h b473232452 preprend license header to every file 11 سال پیش
removeDuplicates.cpp b473232452 preprend license header to every file 11 سال پیش
removeDuplicates.h b473232452 preprend license header to every file 11 سال پیش
removeUnreferenced.cpp 306c5b7a31 cleaned up removeUnreferenced (we should rename this remove_unreferenced to match style and the corresponding matlab func) 11 سال پیش
removeUnreferenced.h 306c5b7a31 cleaned up removeUnreferenced (we should rename this remove_unreferenced to match style and the corresponding matlab func) 11 سال پیش
remove_duplicate_vertices.cpp b473232452 preprend license header to every file 11 سال پیش
remove_duplicate_vertices.h b473232452 preprend license header to every file 11 سال پیش
render_to_tga.cpp c39ca7747a fixed many style issues, missing copyrights, inlines 11 سال پیش
render_to_tga.h c39ca7747a fixed many style issues, missing copyrights, inlines 11 سال پیش
reorder.cpp c39ca7747a fixed many style issues, missing copyrights, inlines 11 سال پیش
reorder.h b473232452 preprend license header to every file 11 سال پیش
repdiag.cpp b473232452 preprend license header to every file 11 سال پیش
repdiag.h b473232452 preprend license header to every file 11 سال پیش
repmat.cpp b473232452 preprend license header to every file 11 سال پیش
repmat.h 0d2b528651 path to executable (working on OSX), dated copy of file with permissions, draw_mesh less kruft 11 سال پیش
report_gl_error.cpp 1a493e2836 template 11 سال پیش
report_gl_error.h 1a493e2836 template 11 سال پیش
rgb_to_hsv.cpp d10afaa873 fixed many missing IGL_INLINEs 11 سال پیش
rgb_to_hsv.h d10afaa873 fixed many missing IGL_INLINEs 11 سال پیش
right_axis.cpp b473232452 preprend license header to every file 11 سال پیش
right_axis.h b473232452 preprend license header to every file 11 سال پیش
rotate_by_quat.cpp b473232452 preprend license header to every file 11 سال پیش
rotate_by_quat.h b473232452 preprend license header to every file 11 سال پیش
rotate_vectors.cpp 99fcd9808b * clean up on miq code 11 سال پیش
rotate_vectors.h 99fcd9808b * clean up on miq code 11 سال پیش
rotation_matrix_from_directions.cpp e44af8ca3f Fixed what Alec changed before, lib compiles with the new files. Made 11 سال پیش
rotation_matrix_from_directions.h e44af8ca3f Fixed what Alec changed before, lib compiles with the new files. Made 11 سال پیش
round.cpp b473232452 preprend license header to every file 11 سال پیش
round.h b473232452 preprend license header to every file 11 سال پیش
rows_to_matrix.cpp b473232452 preprend license header to every file 11 سال پیش
rows_to_matrix.h b473232452 preprend license header to every file 11 سال پیش
sample_edges.cpp b473232452 preprend license header to every file 11 سال پیش
sample_edges.h d10afaa873 fixed many missing IGL_INLINEs 11 سال پیش
shine_textures.h.REMOVED.git-id c39ca7747a fixed many style issues, missing copyrights, inlines 11 سال پیش
slice.cpp 3d9295b22a templates 11 سال پیش
slice.h 3d9295b22a templates 11 سال پیش
slice_into.cpp b473232452 preprend license header to every file 11 سال پیش
slice_into.h b473232452 preprend license header to every file 11 سال پیش
snap_points.cpp 801315915a snap points and templates 11 سال پیش
snap_points.h 801315915a snap points and templates 11 سال پیش
snap_to_canonical_view_quat.cpp 5b73716bcf major camera refactor 11 سال پیش
snap_to_canonical_view_quat.h ecf569d7bf improved documentation snap_to_canonical_view_quat 11 سال پیش
snap_to_fixed_up.cpp 4d48550bb1 camera example with twbar 11 سال پیش
snap_to_fixed_up.h 4d48550bb1 camera example with twbar 11 سال پیش
sort.cpp c39ca7747a fixed many style issues, missing copyrights, inlines 11 سال پیش
sort.h b473232452 preprend license header to every file 11 سال پیش
sort_triangles.cpp b473232452 preprend license header to every file 11 سال پیش
sort_triangles.h b473232452 preprend license header to every file 11 سال پیش
sortrows.cpp b473232452 preprend license header to every file 11 سال پیش
sortrows.h b473232452 preprend license header to every file 11 سال پیش
sparse.cpp b473232452 preprend license header to every file 11 سال پیش
sparse.h b473232452 preprend license header to every file 11 سال پیش
speye.cpp b473232452 preprend license header to every file 11 سال پیش
speye.h b473232452 preprend license header to every file 11 سال پیش
stdin_to_temp.cpp b473232452 preprend license header to every file 11 سال پیش
stdin_to_temp.h b473232452 preprend license header to every file 11 سال پیش
sum.cpp b473232452 preprend license header to every file 11 سال پیش
sum.h b473232452 preprend license header to every file 11 سال پیش
svd.cpp b473232452 preprend license header to every file 11 سال پیش
svd.h b473232452 preprend license header to every file 11 سال پیش
texture_from_tga.cpp c39ca7747a fixed many style issues, missing copyrights, inlines 11 سال پیش
texture_from_tga.h c39ca7747a fixed many style issues, missing copyrights, inlines 11 سال پیش
tga.cpp 5e178e4771 fixed compilation error with clang 11 سال پیش
tga.h 79341b5bd6 compress in tutorial, better header in compress, ifndef IGL_NO_OPENGL and IGL_NO_ANTTWEAKBAR guards, compress compiles without these, undo svd 12 سال پیش
trackball.cpp 2b40471f2b trackball: int to double 11 سال پیش
trackball.h 2b40471f2b trackball: int to double 11 سال پیش
transpose_blocks.cpp b473232452 preprend license header to every file 11 سال پیش
transpose_blocks.h b473232452 preprend license header to every file 11 سال پیش
triangle_fan.cpp 946a60f916 mv most winding number code from project 11 سال پیش
triangle_fan.h 946a60f916 mv most winding number code from project 11 سال پیش
triangulate.cpp b473232452 preprend license header to every file 11 سال پیش
triangulate.h b473232452 preprend license header to every file 11 سال پیش
tt.cpp 1ca72046b6 fixed lots of issues with file_dialog.*, template in tt 11 سال پیش
tt.h b473232452 preprend license header to every file 11 سال پیش
two_axis_valuator_fixed_up.cpp 4d48550bb1 camera example with twbar 11 سال پیش
two_axis_valuator_fixed_up.h 4d48550bb1 camera example with twbar 11 سال پیش
uniform_type_to_string.cpp b473232452 preprend license header to every file 11 سال پیش
uniform_type_to_string.h b473232452 preprend license header to every file 11 سال پیش
uniformly_sample_two_manifold.cpp c39ca7747a fixed many style issues, missing copyrights, inlines 11 سال پیش
uniformly_sample_two_manifold.h d14905d818 migrated a lot of the FAST code including interface to Sifakis' fast 3x3 svd with SSE and AVX support (determined during compile) 11 سال پیش
unique.cpp b473232452 preprend license header to every file 11 سال پیش
unique.h b473232452 preprend license header to every file 11 سال پیش
unique_simplices.cpp b473232452 preprend license header to every file 11 سال پیش
unique_simplices.h b473232452 preprend license header to every file 11 سال پیش
unproject.cpp 1a493e2836 template 11 سال پیش
unproject.h b473232452 preprend license header to every file 11 سال پیش
unproject_to_zero_plane.cpp 801315915a snap points and templates 11 سال پیش
unproject_to_zero_plane.h b473232452 preprend license header to every file 11 سال پیش
up_axis.cpp b473232452 preprend license header to every file 11 سال پیش
up_axis.h b473232452 preprend license header to every file 11 سال پیش
upsample.cpp b473232452 preprend license header to every file 11 سال پیش
upsample.h b473232452 preprend license header to every file 11 سال پیش
verbose.h b473232452 preprend license header to every file 11 سال پیش
vf.cpp 2513a565df added some template instantiations 11 سال پیش
vf.h e74ac9d4df notes in vf.* 11 سال پیش
view_axis.cpp df7b363ece rotation widget example 11 سال پیش
view_axis.h df7b363ece rotation widget example 11 سال پیش
volume.cpp 38cd4684cd better cross, volume and new barycentric coordinates (tets only) 11 سال پیش
volume.h 38cd4684cd better cross, volume and new barycentric coordinates (tets only) 11 سال پیش
winding_number.cpp 946a60f916 mv most winding number code from project 11 سال پیش
winding_number.h 946a60f916 mv most winding number code from project 11 سال پیش
write.cpp b473232452 preprend license header to every file 11 سال پیش
write.h b473232452 preprend license header to every file 11 سال پیش
writeDMAT.cpp b473232452 preprend license header to every file 11 سال پیش
writeDMAT.h b473232452 preprend license header to every file 11 سال پیش
writeMESH.cpp b473232452 preprend license header to every file 11 سال پیش
writeMESH.h b473232452 preprend license header to every file 11 سال پیش
writeOBJ.cpp e44af8ca3f Fixed what Alec changed before, lib compiles with the new files. Made 11 سال پیش
writeOBJ.h b473232452 preprend license header to every file 11 سال پیش
writeOFF.cpp f2050e5a81 quadrangulation, planarization, various other VF functionalities 11 سال پیش
writeOFF.h b473232452 preprend license header to every file 11 سال پیش
writeSTL.cpp c39ca7747a fixed many style issues, missing copyrights, inlines 11 سال پیش
writeSTL.h 404a719d25 stl file format 11 سال پیش
writeTGF.cpp b473232452 preprend license header to every file 11 سال پیش
writeTGF.h b473232452 preprend license header to every file 11 سال پیش

readMESH.cpp

// This file is part of libigl, a simple c++ geometry processing library.
//
// Copyright (C) 2013 Alec Jacobson
//
// This Source Code Form is subject to the terms of the Mozilla Public License
// v. 2.0. If a copy of the MPL was not distributed with this file, You can
// obtain one at http://mozilla.org/MPL/2.0/.
#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