Alec Jacobson 9f0929b8b9 rm grad пре 12 година
..
bbw fa5c881909 extras in readme пре 12 година
boost 831ee69608 main makefile and example makefiles fixed, Extras are broken пре 12 година
cgal 831ee69608 main makefile and example makefiles fixed, Extras are broken пре 12 година
comiso 72e5248274 * completed tutorial example for frame fields пре 12 година
embree 831ee69608 main makefile and example makefiles fixed, Extras are broken пре 12 година
matlab 831ee69608 main makefile and example makefiles fixed, Extras are broken пре 12 година
mosek 831ee69608 main makefile and example makefiles fixed, Extras are broken пре 12 година
png 831ee69608 main makefile and example makefiles fixed, Extras are broken пре 12 година
svd3x3 831ee69608 main makefile and example makefiles fixed, Extras are broken пре 12 година
tetgen 831ee69608 main makefile and example makefiles fixed, Extras are broken пре 12 година
triangle 78edcb4470 triangle_wrapper -> triangulate пре 12 година
viewer 831ee69608 main makefile and example makefiles fixed, Extras are broken пре 12 година
xml 831ee69608 main makefile and example makefiles fixed, Extras are broken пре 12 година
ARAPEnergyType.h 6025da57dc ARAp example пре 12 година
C_STR.h c39ca7747a fixed many style issues, missing copyrights, inlines пре 12 година
Camera.h b3914046f0 fix alignment in Camera пре 12 година
EPS.cpp b473232452 preprend license header to every file пре 12 година
EPS.h b473232452 preprend license header to every file пре 12 година
HalfEdgeIterator.h e840ce962e pos -> HalfEdgeIterator пре 12 година
IO 78edcb4470 triangle_wrapper -> triangulate пре 12 година
InElementAABB.h e44af8ca3f Fixed what Alec changed before, lib compiles with the new files. Made пре 12 година
IndexComparison.h b473232452 preprend license header to every file пре 12 година
MCTables.hh c39ca7747a fixed many style issues, missing copyrights, inlines пре 12 година
MouseController.h c39ca7747a fixed many style issues, missing copyrights, inlines пре 12 година
NormalType.h b2b071dc31 desaturate disabled rotate wdiget пре 12 година
ONE.h b473232452 preprend license header to every file пре 12 година
OpenGL_convenience.h c39ca7747a fixed many style issues, missing copyrights, inlines пре 12 година
PI.h b473232452 preprend license header to every file пре 12 година
REDRUM.h b473232452 preprend license header to every file пре 12 година
ReAntTweakBar.cpp c2646d97f6 medit пре 12 година
ReAntTweakBar.h c2646d97f6 medit пре 12 година
RotateWidget.h 3c1a54ee20 init order in RotateWidget пре 12 година
STR.h c39ca7747a fixed many style issues, missing copyrights, inlines пре 12 година
SolverStatus.h b473232452 preprend license header to every file пре 12 година
SortableRow.h c39ca7747a fixed many style issues, missing copyrights, inlines пре 12 година
Timer.h d10afaa873 fixed many missing IGL_INLINEs пре 12 година
Viewport.h 072cde3df4 bug fixes in rotate wiget, templates пре 12 година
WindingNumberAABB.h 946a60f916 mv most winding number code from project пре 12 година
WindingNumberMethod.h 946a60f916 mv most winding number code from project пре 12 година
WindingNumberTree.h c3325c9d16 duplicate vertex support in selfintersect пре 12 година
ZERO.h b473232452 preprend license header to every file пре 12 година
active_set.cpp ffa5ff4677 bug fix in active set, qp tutorial example пре 12 година
active_set.h fde20c73d9 Merge branch 'master' of https://github.com/libigl/libigl пре 12 година
add_barycenter.cpp c39ca7747a fixed many style issues, missing copyrights, inlines пре 12 година
add_barycenter.h e421bba4f7 cleanup пре 12 година
adjacency_list.cpp 450d22530b clean up principal curvature example пре 12 година
adjacency_list.h b473232452 preprend license header to every file пре 12 година
adjacency_matrix.cpp dd6bcb61bd non deprecated adjacency matrix пре 12 година
adjacency_matrix.h b473232452 preprend license header to every file пре 12 година
all_edges.cpp b473232452 preprend license header to every file пре 12 година
all_edges.h b473232452 preprend license header to every file пре 12 година
all_pairs_distances.cpp b473232452 preprend license header to every file пре 12 година
all_pairs_distances.h b473232452 preprend license header to every file пре 12 година
angular_distance.cpp d10afaa873 fixed many missing IGL_INLINEs пре 12 година
angular_distance.h d10afaa873 fixed many missing IGL_INLINEs пре 12 година
any_of.cpp b0f3bad258 added mouse controller and any_of wrapper and license пре 12 година
any_of.h b0f3bad258 added mouse controller and any_of wrapper and license пре 12 година
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) пре 12 година
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) пре 12 година
arap_rhs.cpp 49dadb340c arap parameterization working, really пре 12 година
arap_rhs.h ac36e0fddb arap works as parameterization (note interface changes) пре 12 година
areamatrix.cpp 6ccca30cba clean up lscm and areamatrix пре 12 година
areamatrix.h 6ccca30cba clean up lscm and areamatrix пре 12 година
avg_edge_length.cpp 05628ba8dc missing igl inlines пре 12 година
avg_edge_length.h 5b5f473c0d fixed weird include situation in avg_edge_length пре 12 година
axis_angle_to_quat.cpp b473232452 preprend license header to every file пре 12 година
axis_angle_to_quat.h b473232452 preprend license header to every file пре 12 година
barycenter.cpp b473232452 preprend license header to every file пре 12 година
barycenter.h 2a3196e770 * added partial tutorial example for tetgen пре 12 година
barycentric2global.cpp 4582a4f49d added a function that projects a mesh onto another using embree пре 12 година
barycentric2global.h c39ca7747a fixed many style issues, missing copyrights, inlines пре 12 година
barycentric_coordinates.cpp aba141dec1 support for 2d bary coords пре 12 година
barycentric_coordinates.h aba141dec1 support for 2d bary coords пре 12 година
basename.cpp b473232452 preprend license header to every file пре 12 година
basename.h b473232452 preprend license header to every file пре 12 година
boundary_conditions.cpp 5c04a7b9d2 Removed overzealous check in boundary_conditions when there's only a single point handle. пре 12 година
boundary_conditions.h b473232452 preprend license header to every file пре 12 година
boundary_faces.cpp e100aa33d6 note in reanttweakbar and boundary faces assertion пре 12 година
boundary_faces.h b473232452 preprend license header to every file пре 12 година
boundary_vertices_sorted.cpp 5e19828a07 vf -> vertex_triangle_adjacency пре 12 година
boundary_vertices_sorted.h 3674980304 comments in boundary* and map_vert* пре 12 година
bounding_box_diagonal.cpp b473232452 preprend license header to every file пре 12 година
bounding_box_diagonal.h b473232452 preprend license header to every file пре 12 година
canonical_quaternions.cpp b473232452 preprend license header to every file пре 12 година
canonical_quaternions.h 5b73716bcf major camera refactor пре 12 година
cat.cpp b473232452 preprend license header to every file пре 12 година
cat.h b473232452 preprend license header to every file пре 12 година
ceil.cpp 88a01da152 floor/ceil, slice and sort exampels пре 12 година
ceil.h 88a01da152 floor/ceil, slice and sort exampels пре 12 година
cocoa_key_to_anttweakbar_key.cpp b473232452 preprend license header to every file пре 12 година
cocoa_key_to_anttweakbar_key.h b473232452 preprend license header to every file пре 12 година
colon.cpp 780357a444 linear equality constraints пре 12 година
colon.h b473232452 preprend license header to every file пре 12 година
column_to_quats.cpp 3ee6fa10ec mouse controller and quaternion io пре 12 година
column_to_quats.h 3ee6fa10ec mouse controller and quaternion io пре 12 година
columnize.cpp 04d3a59a57 floats and doubles for arap_dof пре 12 година
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) пре 12 година
comb_cross_field.cpp 8f57abacbc tt -> triangle_triangle_adjacency пре 12 година
comb_cross_field.h e44af8ca3f Fixed what Alec changed before, lib compiles with the new files. Made пре 12 година
comb_frame_field.cpp e44af8ca3f Fixed what Alec changed before, lib compiles with the new files. Made пре 12 година
comb_frame_field.h e44af8ca3f Fixed what Alec changed before, lib compiles with the new files. Made пре 12 година
compute_frame_field_bisectors.cpp e44af8ca3f Fixed what Alec changed before, lib compiles with the new files. Made пре 12 година
compute_frame_field_bisectors.h e44af8ca3f Fixed what Alec changed before, lib compiles with the new files. Made пре 12 година
cotangent.cpp 11efa92d41 added cot3 references пре 12 година
cotangent.h 05628ba8dc missing igl inlines пре 12 година
cotmatrix.cpp 7801bae065 fix slow cotmatrix пре 12 година
cotmatrix.h 1de0c75000 arap parameterization no longer allowing reflections, using ref triangles пре 12 година
covariance_scatter_matrix.cpp 49dadb340c arap parameterization working, really пре 12 година
covariance_scatter_matrix.h 49dadb340c arap parameterization working, really пре 12 година
create_index_vbo.cpp b473232452 preprend license header to every file пре 12 година
create_index_vbo.h b473232452 preprend license header to every file пре 12 година
create_mesh_vbo.cpp b473232452 preprend license header to every file пре 12 година
create_mesh_vbo.h b473232452 preprend license header to every file пре 12 година
create_shader_program.cpp b473232452 preprend license header to every file пре 12 година
create_shader_program.h b473232452 preprend license header to every file пре 12 година
create_vector_vbo.cpp b473232452 preprend license header to every file пре 12 година
create_vector_vbo.h b473232452 preprend license header to every file пре 12 година
cross.cpp 38cd4684cd better cross, volume and new barycentric coordinates (tets only) пре 12 година
cross.h 38cd4684cd better cross, volume and new barycentric coordinates (tets only) пре 12 година
cross_field_missmatch.cpp 5e19828a07 vf -> vertex_triangle_adjacency пре 12 година
cross_field_missmatch.h e44af8ca3f Fixed what Alec changed before, lib compiles with the new files. Made пре 12 година
cumsum.cpp 83135b0027 hg cleanup' пре 12 година
cumsum.h b4b18430fd sample mesh, cumulative sum, histogram пре 12 година
cut_mesh_from_singularities.cpp 2c9843f164 * greatly improved the tutorial MIQ example пре 12 година
cut_mesh_from_singularities.h 2c9843f164 * greatly improved the tutorial MIQ example пре 12 година
dated_copy.cpp c39ca7747a fixed many style issues, missing copyrights, inlines пре 12 година
dated_copy.h d10afaa873 fixed many missing IGL_INLINEs пре 12 година
destroy_shader_program.cpp b473232452 preprend license header to every file пре 12 година
destroy_shader_program.h b473232452 preprend license header to every file пре 12 година
diag.cpp b473232452 preprend license header to every file пре 12 година
diag.h 88a01da152 floor/ceil, slice and sort exampels пре 12 година
dihedral_angles.cpp 2cbb9c856b geometric cotangent, volume, face areas, edge lengths for tet meshes пре 12 година
dihedral_angles.h 2cbb9c856b geometric cotangent, volume, face areas, edge lengths for tet meshes пре 12 година
dirname.cpp b473232452 preprend license header to every file пре 12 година
dirname.h b473232452 preprend license header to every file пре 12 година
dot.cpp b473232452 preprend license header to every file пре 12 година
dot.h b473232452 preprend license header to every file пре 12 година
dot_row.cpp ae16793345 fix new bug in dot_row пре 12 година
dot_row.h ec849e97dc cleaning up global using namespace and namespace in cpp пре 12 година
doublearea.cpp aba141dec1 support for 2d bary coords пре 12 година
doublearea.h aba141dec1 support for 2d bary coords пре 12 година
dqs.cpp c39ca7747a fixed many style issues, missing copyrights, inlines пре 12 година
dqs.h c39ca7747a fixed many style issues, missing copyrights, inlines пре 12 година
draw_beach_ball.cpp b473232452 preprend license header to every file пре 12 година
draw_beach_ball.h f733e02c0a bug fix пре 12 година
draw_floor.cpp ccbdc48e71 fixed bug in camera and better parameterization of draw floor пре 12 година
draw_floor.h ccbdc48e71 fixed bug in camera and better parameterization of draw floor пре 12 година
draw_mesh.cpp 404a719d25 stl file format пре 12 година
draw_mesh.h b473232452 preprend license header to every file пре 12 година
draw_point.cpp b473232452 preprend license header to every file пре 12 година
draw_point.h b473232452 preprend license header to every file пре 12 година
draw_rectangular_marquee.cpp d10afaa873 fixed many missing IGL_INLINEs пре 12 година
draw_rectangular_marquee.h d10afaa873 fixed many missing IGL_INLINEs пре 12 година
draw_skeleton_3d.cpp 865b841fb1 openmp if catch in project_to_line* пре 12 година
draw_skeleton_3d.h ae29184e91 draw skeleton with colors пре 12 година
draw_skeleton_vector_graphics.cpp 072cde3df4 bug fixes in rotate wiget, templates пре 12 година
draw_skeleton_vector_graphics.h 072cde3df4 bug fixes in rotate wiget, templates пре 12 година
edge_lengths.cpp 2cbb9c856b geometric cotangent, volume, face areas, edge lengths for tet meshes пре 12 година
edge_lengths.h 2cbb9c856b geometric cotangent, volume, face areas, edge lengths for tet meshes пре 12 година
edges.cpp b473232452 preprend license header to every file пре 12 година
edges.h b473232452 preprend license header to every file пре 12 година
edgetopology.cpp b473232452 preprend license header to every file пре 12 година
edgetopology.h b473232452 preprend license header to every file пре 12 година
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) пре 12 година
example_fun.h b473232452 preprend license header to every file пре 12 година
exterior_edges.cpp 946a60f916 mv most winding number code from project пре 12 година
exterior_edges.h 946a60f916 mv most winding number code from project пре 12 година
face_areas.cpp c39ca7747a fixed many style issues, missing copyrights, inlines пре 12 година
face_areas.h 2cbb9c856b geometric cotangent, volume, face areas, edge lengths for tet meshes пре 12 година
face_occurences.cpp b473232452 preprend license header to every file пре 12 година
face_occurences.h b473232452 preprend license header to every file пре 12 година
faces_first.cpp b473232452 preprend license header to every file пре 12 година
faces_first.h b473232452 preprend license header to every file пре 12 година
file_contents_as_string.cpp b473232452 preprend license header to every file пре 12 година
file_contents_as_string.h b473232452 preprend license header to every file пре 12 година
file_dialog_open.cpp 5c91e9cc07 viewer compiles on windows пре 12 година
file_dialog_open.h 1ca72046b6 fixed lots of issues with file_dialog.*, template in tt пре 12 година
file_dialog_save.cpp 5c91e9cc07 viewer compiles on windows пре 12 година
file_dialog_save.h 1ca72046b6 fixed lots of issues with file_dialog.*, template in tt пре 12 година
file_exists.cpp b473232452 preprend license header to every file пре 12 година
file_exists.h b473232452 preprend license header to every file пре 12 година
find.cpp ffa5ff4677 bug fix in active set, qp tutorial example пре 12 година
find.h b473232452 preprend license header to every file пре 12 година
find_cross_field_singularities.cpp 5e19828a07 vf -> vertex_triangle_adjacency пре 12 година
find_cross_field_singularities.h e44af8ca3f Fixed what Alec changed before, lib compiles with the new files. Made пре 12 година
fit_plane.cpp 05628ba8dc missing igl inlines пре 12 година
fit_plane.h 5e6a231f3f updated template types in removeUnreference and fixed a minor bug пре 12 година
flare_textures.h.REMOVED.git-id c39ca7747a fixed many style issues, missing copyrights, inlines пре 12 година
floor.cpp 88a01da152 floor/ceil, slice and sort exampels пре 12 година
floor.h 88a01da152 floor/ceil, slice and sort exampels пре 12 година
forward_kinematics.cpp 3ee6fa10ec mouse controller and quaternion io пре 12 година
forward_kinematics.h 3ee6fa10ec mouse controller and quaternion io пре 12 година
frame_field_deformer.cpp 5e19828a07 vf -> vertex_triangle_adjacency пре 12 година
frame_field_deformer.h 1326c0ee3b * new tutorial example for frame fields пре 12 година
frame_to_cross_field.cpp 72e5248274 * completed tutorial example for frame fields пре 12 година
frame_to_cross_field.h 72e5248274 * completed tutorial example for frame fields пре 12 година
full.cpp b473232452 preprend license header to every file пре 12 година
full.h b473232452 preprend license header to every file пре 12 година
gaussian_curvature.cpp 43ed3636e1 gaussian curvature and internal angles пре 12 година
gaussian_curvature.h 43ed3636e1 gaussian curvature and internal angles пре 12 година
get_seconds.cpp b473232452 preprend license header to every file пре 12 година
get_seconds.h b473232452 preprend license header to every file пре 12 година
get_seconds_hires.cpp b473232452 preprend license header to every file пре 12 година
get_seconds_hires.h b473232452 preprend license header to every file пре 12 година
gl_type_size.cpp b473232452 preprend license header to every file пре 12 година
gl_type_size.h b473232452 preprend license header to every file пре 12 година
gradMat.cpp cac3b04a2a Gradient example пре 12 година
gradMat.h b473232452 preprend license header to every file пре 12 година
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) пре 12 година
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) пре 12 година
harmonic.cpp 39dd224f64 fixed some bugs in arap пре 12 година
harmonic.h 2608885ba3 harmonic weights пре 12 година
harwell_boeing.cpp b473232452 preprend license header to every file пре 12 година
harwell_boeing.h b473232452 preprend license header to every file пре 12 година
histc.cpp c39ca7747a fixed many style issues, missing copyrights, inlines пре 12 година
histc.h aebcaf8c6d better histc prototype, fixed warnings пре 12 година
hsv_to_rgb.cpp d10afaa873 fixed many missing IGL_INLINEs пре 12 година
hsv_to_rgb.h d10afaa873 fixed many missing IGL_INLINEs пре 12 година
igl_inline.h b473232452 preprend license header to every file пре 12 година
in_element.cpp a1e3e14eb0 in element пре 12 година
in_element.h a1e3e14eb0 in element пре 12 година
internal_angles.cpp 43ed3636e1 gaussian curvature and internal angles пре 12 година
internal_angles.h 43ed3636e1 gaussian curvature and internal angles пре 12 година
intersect.cpp f659637d6f laplace equation example пре 12 година
intersect.h df7b363ece rotation widget example пре 12 година
invert_diag.cpp b473232452 preprend license header to every file пре 12 година
invert_diag.h b473232452 preprend license header to every file пре 12 година
is_border_vertex.cpp 8f57abacbc tt -> triangle_triangle_adjacency пре 12 година
is_border_vertex.h f659637d6f laplace equation example пре 12 година
is_dir.cpp b473232452 preprend license header to every file пре 12 година
is_dir.h b473232452 preprend license header to every file пре 12 година
is_file.cpp b473232452 preprend license header to every file пре 12 година
is_file.h b473232452 preprend license header to every file пре 12 година
is_manifold.cpp b473232452 preprend license header to every file пре 12 година
is_manifold.h b473232452 preprend license header to every file пре 12 година
is_planar.cpp c39ca7747a fixed many style issues, missing copyrights, inlines пре 12 година
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) пре 12 година
is_readable.cpp b473232452 preprend license header to every file пре 12 година
is_readable.h b473232452 preprend license header to every file пре 12 година
is_sparse.cpp b473232452 preprend license header to every file пре 12 година
is_sparse.h b473232452 preprend license header to every file пре 12 година
is_symmetric.cpp ffa5ff4677 bug fix in active set, qp tutorial example пре 12 година
is_symmetric.h b473232452 preprend license header to every file пре 12 година
is_writable.cpp b473232452 preprend license header to every file пре 12 година
is_writable.h b473232452 preprend license header to every file пре 12 година
jet.cpp 780357a444 linear equality constraints пре 12 година
jet.h 780357a444 linear equality constraints пре 12 година
kronecker_product.cpp efa240a2a5 kronecker product exists already in Eigen пре 12 година
kronecker_product.h efa240a2a5 kronecker product exists already in Eigen пре 12 година
launch_medit.cpp b473232452 preprend license header to every file пре 12 година
launch_medit.h b473232452 preprend license header to every file пре 12 година
lbs_matrix.cpp c39ca7747a fixed many style issues, missing copyrights, inlines пре 12 година
lbs_matrix.h fddb3d6563 lbs_matrix overloads for different style output пре 12 година
lens_flare.cpp d10afaa873 fixed many missing IGL_INLINEs пре 12 година
lens_flare.h d10afaa873 fixed many missing IGL_INLINEs пре 12 година
limit_faces.cpp b473232452 preprend license header to every file пре 12 година
limit_faces.h b473232452 preprend license header to every file пре 12 година
line_segment_in_rectangle.cpp 3ee6fa10ec mouse controller and quaternion io пре 12 година
line_segment_in_rectangle.h 3ee6fa10ec mouse controller and quaternion io пре 12 година
list_to_matrix.cpp f659637d6f laplace equation example пре 12 година
list_to_matrix.h b473232452 preprend license header to every file пре 12 година
load_shader.cpp b473232452 preprend license header to every file пре 12 година
load_shader.h b473232452 preprend license header to every file пре 12 година
local_basis.cpp c41326ae56 Merge branch 'master' of https://github.com/libigl/libigl пре 12 година
local_basis.h c39ca7747a fixed many style issues, missing copyrights, inlines пре 12 година
lscm.cpp 6ccca30cba clean up lscm and areamatrix пре 12 година
lscm.h 6ccca30cba clean up lscm and areamatrix пре 12 година
lu_lagrange.cpp b473232452 preprend license header to every file пре 12 година
lu_lagrange.h b473232452 preprend license header to every file пре 12 година
map_vertices_to_circle.cpp 4ee4da98b0 rm sign/unsign warning пре 12 година
map_vertices_to_circle.h ae03f73648 * added tutorial for ARAP parametrization (broken) пре 12 година
marching_cubes.cpp 9f80dbdd02 minor updates to marching cubes пре 14 година
marching_cubes.h c39ca7747a fixed many style issues, missing copyrights, inlines пре 12 година
massmatrix.cpp e33308c77d dynamics in arap пре 12 година
massmatrix.h e33308c77d dynamics in arap пре 12 година
mat_max.cpp b473232452 preprend license header to every file пре 12 година
mat_max.h b473232452 preprend license header to every file пре 12 година
mat_min.cpp b473232452 preprend license header to every file пре 12 година
mat_min.h b473232452 preprend license header to every file пре 12 година
mat_to_quat.cpp b473232452 preprend license header to every file пре 12 година
mat_to_quat.h b473232452 preprend license header to every file пре 12 година
material_colors.h ae29184e91 draw skeleton with colors пре 12 година
matlab_format.cpp 49dadb340c arap parameterization working, really пре 12 година
matlab_format.h b473232452 preprend license header to every file пре 12 година
matrix_to_list.cpp f659637d6f laplace equation example пре 12 година
matrix_to_list.h b473232452 preprend license header to every file пре 12 година
max_size.cpp b473232452 preprend license header to every file пре 12 година
max_size.h b473232452 preprend license header to every file пре 12 година
median.cpp a8a2ca6d03 fix median for even input пре 12 година
median.h b473232452 preprend license header to every file пре 12 година
min_quad_dense.cpp b473232452 preprend license header to every file пре 12 година
min_quad_dense.h b473232452 preprend license header to every file пре 12 година
min_quad_with_fixed.cpp ffa5ff4677 bug fix in active set, qp tutorial example пре 12 година
min_quad_with_fixed.h abd3989efb - new tutorial example for harmonic parametrization пре 12 година
min_size.cpp b473232452 preprend license header to every file пре 12 година
min_size.h b473232452 preprend license header to every file пре 12 година
mode.cpp b473232452 preprend license header to every file пре 12 година
mode.h b473232452 preprend license header to every file пре 12 година
moveFV.cpp b473232452 preprend license header to every file пре 12 година
moveFV.h b473232452 preprend license header to every file пре 12 година
moveVF.cpp b473232452 preprend license header to every file пре 12 година
moveVF.h b473232452 preprend license header to every file пре 12 година
mvc.cpp f12fa9bd9d some linux compilation fixes.. пре 12 година
mvc.h b473232452 preprend license header to every file пре 12 година
normalize_quat.cpp b473232452 preprend license header to every file пре 12 година
normalize_quat.h b473232452 preprend license header to every file пре 12 година
normalize_row_lengths.cpp b473232452 preprend license header to every file пре 12 година
normalize_row_lengths.h 43b01106e9 normals example пре 12 година
normalize_row_sums.cpp df7b363ece rotation widget example пре 12 година
normalize_row_sums.h df7b363ece rotation widget example пре 12 година
on_boundary.cpp b473232452 preprend license header to every file пре 12 година
on_boundary.h b473232452 preprend license header to every file пре 12 година
orient_outward.cpp b473232452 preprend license header to every file пре 12 година
orient_outward.h 2c48365937 fix examples пре 12 година
orth.cpp b473232452 preprend license header to every file пре 12 година
orth.h b473232452 preprend license header to every file пре 12 година
partition.cpp c39ca7747a fixed many style issues, missing copyrights, inlines пре 12 година
partition.h c39ca7747a fixed many style issues, missing copyrights, inlines пре 12 година
path_to_executable.cpp c39ca7747a fixed many style issues, missing copyrights, inlines пре 12 година
path_to_executable.h d10afaa873 fixed many missing IGL_INLINEs пре 12 година
pathinfo.cpp b473232452 preprend license header to every file пре 12 година
pathinfo.h b3914046f0 fix alignment in Camera пре 12 година
per_corner_normals.cpp 5e19828a07 vf -> vertex_triangle_adjacency пре 12 година
per_corner_normals.h b473232452 preprend license header to every file пре 12 година
per_face_normals.cpp 43ed3636e1 gaussian curvature and internal angles пре 12 година
per_face_normals.h f4ee805a31 fixed bug in quicklook пре 12 година
per_vertex_attribute_smoothing.cpp b473232452 preprend license header to every file пре 12 година
per_vertex_attribute_smoothing.h b473232452 preprend license header to every file пре 12 година
per_vertex_normals.cpp 43b01106e9 normals example пре 12 година
per_vertex_normals.h 43ed3636e1 gaussian curvature and internal angles пре 12 година
planarize_quad_mesh.cpp e44af8ca3f Fixed what Alec changed before, lib compiles with the new files. Made пре 12 година
planarize_quad_mesh.h f2050e5a81 quadrangulation, planarization, various other VF functionalities пре 12 година
plane_project.cpp c16084d7e6 minor fix in an assert in plane_project.cpp пре 12 година
plane_project.h 1de0c75000 arap parameterization no longer allowing reflections, using ref triangles пре 12 година
plot_vector.cpp b473232452 preprend license header to every file пре 12 година
plot_vector.h b473232452 preprend license header to every file пре 12 година
point_in_circle.cpp b473232452 preprend license header to every file пре 12 година
point_in_circle.h b473232452 preprend license header to every file пре 12 година
point_in_poly.cpp b473232452 preprend license header to every file пре 12 година
point_in_poly.h b473232452 preprend license header to every file пре 12 година
polar_dec.cpp 5ff15963aa polar_dec produces rotations пре 12 година
polar_dec.h b473232452 preprend license header to every file пре 12 година
polar_svd.cpp 5ff15963aa polar_dec produces rotations пре 12 година
polar_svd.h 8ef0b823ea polar_svd always returns rotation. пре 12 година
polygon_mesh_to_triangle_mesh.cpp 9a9b58b84b triangulate -> polygon_mesh_to_triangle_mesh пре 12 година
polygon_mesh_to_triangle_mesh.h 9a9b58b84b triangulate -> polygon_mesh_to_triangle_mesh пре 12 година
principal_curvature.cpp 5e19828a07 vf -> vertex_triangle_adjacency пре 12 година
principal_curvature.h 450d22530b clean up principal curvature example пре 12 година
print_gl_get.cpp b473232452 preprend license header to every file пре 12 година
print_gl_get.h b473232452 preprend license header to every file пре 12 година
print_ijv.cpp b473232452 preprend license header to every file пре 12 година
print_ijv.h b473232452 preprend license header to every file пре 12 година
print_program_info_log.cpp b473232452 preprend license header to every file пре 12 година
print_program_info_log.h b473232452 preprend license header to every file пре 12 година
print_shader_info_log.cpp b473232452 preprend license header to every file пре 12 година
print_shader_info_log.h b473232452 preprend license header to every file пре 12 година
project.cpp 404a719d25 stl file format пре 12 година
project.h b473232452 preprend license header to every file пре 12 година
project_to_line.cpp 865b841fb1 openmp if catch in project_to_line* пре 12 година
project_to_line.h df7b363ece rotation widget example пре 12 година
project_to_line_segment.cpp 865b841fb1 openmp if catch in project_to_line* пре 12 година
project_to_line_segment.h e5bca62822 wrong include пре 12 година
quad_planarity.cpp f2050e5a81 quadrangulation, planarization, various other VF functionalities пре 12 година
quad_planarity.h f2050e5a81 quadrangulation, planarization, various other VF functionalities пре 12 година
quat_conjugate.cpp b473232452 preprend license header to every file пре 12 година
quat_conjugate.h b473232452 preprend license header to every file пре 12 година
quat_mult.cpp b473232452 preprend license header to every file пре 12 година
quat_mult.h b473232452 preprend license header to every file пре 12 година
quat_to_axis_angle.cpp b473232452 preprend license header to every file пре 12 година
quat_to_axis_angle.h b473232452 preprend license header to every file пре 12 година
quat_to_mat.cpp b473232452 preprend license header to every file пре 12 година
quat_to_mat.h b473232452 preprend license header to every file пре 12 година
quats_to_column.cpp 3ee6fa10ec mouse controller and quaternion io пре 12 година
quats_to_column.h 3ee6fa10ec mouse controller and quaternion io пре 12 година
random_dir.cpp d10afaa873 fixed many missing IGL_INLINEs пре 12 година
random_dir.h d10afaa873 fixed many missing IGL_INLINEs пре 12 година
random_points_on_mesh.cpp b9babab1cf note in random_points_on_mesh about alias table method пре 12 година
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) пре 12 година
randperm.cpp 3d9295b22a templates пре 12 година
randperm.h b473232452 preprend license header to every file пре 12 година
ray_sphere_intersect.cpp c39ca7747a fixed many style issues, missing copyrights, inlines пре 12 година
ray_sphere_intersect.h 609c7351ec rotating widget example with dependencies пре 12 година
readCSV.cpp 7afa4c43c9 renamed read_eigen... to readCSV to match others пре 12 година
readCSV.h 7afa4c43c9 renamed read_eigen... to readCSV to match others пре 12 година
readDMAT.cpp 6025da57dc ARAp example пре 12 година
readDMAT.h b473232452 preprend license header to every file пре 12 година
readMESH.cpp b473232452 preprend license header to every file пре 12 година
readMESH.h b473232452 preprend license header to every file пре 12 година
readNODE.cpp b473232452 preprend license header to every file пре 12 година
readNODE.h b473232452 preprend license header to every file пре 12 година
readOBJ.cpp 9af8e5234a cleanup new code mess enough to compile пре 12 година
readOBJ.h b473232452 preprend license header to every file пре 12 година
readOFF.cpp 027a77cb5c readOFF: quenched a warning пре 12 година
readOFF.h b473232452 preprend license header to every file пре 12 година
readSTL.cpp 9af8e5234a cleanup new code mess enough to compile пре 12 година
readSTL.h 404a719d25 stl file format пре 12 година
readTGF.cpp df7b363ece rotation widget example пре 12 година
readTGF.h df7b363ece rotation widget example пре 12 година
readWRL.cpp b473232452 preprend license header to every file пре 12 година
readWRL.h b473232452 preprend license header to every file пре 12 година
read_triangle_mesh.cpp bafcdc9311 read -> read_triangle_mesh пре 12 година
read_triangle_mesh.h bafcdc9311 read -> read_triangle_mesh пре 12 година
removeDuplicates.cpp b473232452 preprend license header to every file пре 12 година
removeDuplicates.h b473232452 preprend license header to every file пре 12 година
removeUnreferenced.cpp 306c5b7a31 cleaned up removeUnreferenced (we should rename this remove_unreferenced to match style and the corresponding matlab func) пре 12 година
removeUnreferenced.h 306c5b7a31 cleaned up removeUnreferenced (we should rename this remove_unreferenced to match style and the corresponding matlab func) пре 12 година
remove_duplicate_vertices.cpp b473232452 preprend license header to every file пре 12 година
remove_duplicate_vertices.h b473232452 preprend license header to every file пре 12 година
render_to_tga.cpp c39ca7747a fixed many style issues, missing copyrights, inlines пре 12 година
render_to_tga.h c39ca7747a fixed many style issues, missing copyrights, inlines пре 12 година
reorder.cpp c39ca7747a fixed many style issues, missing copyrights, inlines пре 12 година
reorder.h 88a01da152 floor/ceil, slice and sort exampels пре 12 година
repdiag.cpp e949333582 rm dynamic matrix from repdiag пре 12 година
repdiag.h b473232452 preprend license header to every file пре 12 година
repmat.cpp b473232452 preprend license header to every file пре 12 година
repmat.h 0d2b528651 path to executable (working on OSX), dated copy of file with permissions, draw_mesh less kruft пре 12 година
report_gl_error.cpp 1a493e2836 template пре 12 година
report_gl_error.h 1a493e2836 template пре 12 година
rgb_to_hsv.cpp d10afaa873 fixed many missing IGL_INLINEs пре 12 година
rgb_to_hsv.h d10afaa873 fixed many missing IGL_INLINEs пре 12 година
right_axis.cpp b473232452 preprend license header to every file пре 12 година
right_axis.h b473232452 preprend license header to every file пре 12 година
rotate_by_quat.cpp b473232452 preprend license header to every file пре 12 година
rotate_by_quat.h b473232452 preprend license header to every file пре 12 година
rotate_vectors.cpp 24c94073b6 fixed bug in rotate vectors пре 12 година
rotate_vectors.h dc860aa29b cross field code still not compiling. fixed warnings пре 12 година
rotation_matrix_from_directions.cpp e44af8ca3f Fixed what Alec changed before, lib compiles with the new files. Made пре 12 година
rotation_matrix_from_directions.h e44af8ca3f Fixed what Alec changed before, lib compiles with the new files. Made пре 12 година
round.cpp b473232452 preprend license header to every file пре 12 година
round.h b473232452 preprend license header to every file пре 12 година
rows_to_matrix.cpp b473232452 preprend license header to every file пре 12 година
rows_to_matrix.h b473232452 preprend license header to every file пре 12 година
sample_edges.cpp b473232452 preprend license header to every file пре 12 година
sample_edges.h d10afaa873 fixed many missing IGL_INLINEs пре 12 година
setdiff.cpp ea69cf7a04 setdiff function like matlab пре 12 година
setdiff.h ea69cf7a04 setdiff function like matlab пре 12 година
shine_textures.h.REMOVED.git-id c39ca7747a fixed many style issues, missing copyrights, inlines пре 12 година
slice.cpp 3d9295b22a templates пре 12 година
slice.h 3d9295b22a templates пре 12 година
slice_into.cpp 88a01da152 floor/ceil, slice and sort exampels пре 12 година
slice_into.h 88a01da152 floor/ceil, slice and sort exampels пре 12 година
snap_points.cpp 801315915a snap points and templates пре 12 година
snap_points.h 801315915a snap points and templates пре 12 година
snap_to_canonical_view_quat.cpp 5b73716bcf major camera refactor пре 12 година
snap_to_canonical_view_quat.h ecf569d7bf improved documentation snap_to_canonical_view_quat пре 12 година
snap_to_fixed_up.cpp 4d48550bb1 camera example with twbar пре 12 година
snap_to_fixed_up.h 4d48550bb1 camera example with twbar пре 12 година
sort.cpp f659637d6f laplace equation example пре 12 година
sort.h b473232452 preprend license header to every file пре 12 година
sort_triangles.cpp b473232452 preprend license header to every file пре 12 година
sort_triangles.h b473232452 preprend license header to every file пре 12 година
sortrows.cpp b473232452 preprend license header to every file пре 12 година
sortrows.h b473232452 preprend license header to every file пре 12 година
sparse.cpp b473232452 preprend license header to every file пре 12 година
sparse.h b473232452 preprend license header to every file пре 12 година
speye.cpp b473232452 preprend license header to every file пре 12 година
speye.h b473232452 preprend license header to every file пре 12 година
stdin_to_temp.cpp b473232452 preprend license header to every file пре 12 година
stdin_to_temp.h b473232452 preprend license header to every file пре 12 година
sum.cpp b473232452 preprend license header to every file пре 12 година
sum.h b473232452 preprend license header to every file пре 12 година
texture_from_tga.cpp c39ca7747a fixed many style issues, missing copyrights, inlines пре 12 година
texture_from_tga.h c39ca7747a fixed many style issues, missing copyrights, inlines пре 12 година
tga.cpp 05628ba8dc missing igl inlines пре 12 година
tga.h 05628ba8dc missing igl inlines пре 12 година
trackball.cpp 2b40471f2b trackball: int to double пре 12 година
trackball.h 2b40471f2b trackball: int to double пре 12 година
transpose_blocks.cpp b473232452 preprend license header to every file пре 12 година
transpose_blocks.h b473232452 preprend license header to every file пре 12 година
triangle_fan.cpp 946a60f916 mv most winding number code from project пре 12 година
triangle_fan.h 946a60f916 mv most winding number code from project пре 12 година
triangle_triangle_adjacency.cpp 8f57abacbc tt -> triangle_triangle_adjacency пре 12 година
triangle_triangle_adjacency.h 8f57abacbc tt -> triangle_triangle_adjacency пре 12 година
two_axis_valuator_fixed_up.cpp 4d48550bb1 camera example with twbar пре 12 година
two_axis_valuator_fixed_up.h 4d48550bb1 camera example with twbar пре 12 година
uniform_type_to_string.cpp b473232452 preprend license header to every file пре 12 година
uniform_type_to_string.h b473232452 preprend license header to every file пре 12 година
uniformly_sample_two_manifold.cpp 5e19828a07 vf -> vertex_triangle_adjacency пре 12 година
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) пре 12 година
unique.cpp f659637d6f laplace equation example пре 12 година
unique.h f659637d6f laplace equation example пре 12 година
unique_simplices.cpp b473232452 preprend license header to every file пре 12 година
unique_simplices.h b473232452 preprend license header to every file пре 12 година
unproject.cpp 1a493e2836 template пре 12 година
unproject.h b473232452 preprend license header to every file пре 12 година
unproject_to_zero_plane.cpp 801315915a snap points and templates пре 12 година
unproject_to_zero_plane.h b473232452 preprend license header to every file пре 12 година
up_axis.cpp b473232452 preprend license header to every file пре 12 година
up_axis.h b473232452 preprend license header to every file пре 12 година
upsample.cpp 5e19828a07 vf -> vertex_triangle_adjacency пре 12 година
upsample.h b473232452 preprend license header to every file пре 12 година
verbose.h b473232452 preprend license header to every file пре 12 година
vertex_triangle_adjacency.cpp 5e19828a07 vf -> vertex_triangle_adjacency пре 12 година
vertex_triangle_adjacency.h 5e19828a07 vf -> vertex_triangle_adjacency пре 12 година
view_axis.cpp df7b363ece rotation widget example пре 12 година
view_axis.h df7b363ece rotation widget example пре 12 година
volume.cpp 38cd4684cd better cross, volume and new barycentric coordinates (tets only) пре 12 година
volume.h 38cd4684cd better cross, volume and new barycentric coordinates (tets only) пре 12 година
winding_number.cpp 946a60f916 mv most winding number code from project пре 12 година
winding_number.h 946a60f916 mv most winding number code from project пре 12 година
writeDMAT.cpp b473232452 preprend license header to every file пре 12 година
writeDMAT.h b473232452 preprend license header to every file пре 12 година
writeMESH.cpp b473232452 preprend license header to every file пре 12 година
writeMESH.h b473232452 preprend license header to every file пре 12 година
writeOBJ.cpp dc860aa29b cross field code still not compiling. fixed warnings пре 12 година
writeOBJ.h b473232452 preprend license header to every file пре 12 година
writeOFF.cpp dc860aa29b cross field code still not compiling. fixed warnings пре 12 година
writeOFF.h b473232452 preprend license header to every file пре 12 година
writeSTL.cpp c39ca7747a fixed many style issues, missing copyrights, inlines пре 12 година
writeSTL.h 404a719d25 stl file format пре 12 година
writeTGF.cpp b473232452 preprend license header to every file пре 12 година
writeTGF.h b473232452 preprend license header to every file пре 12 година
write_triangle_mesh.cpp 86e8846fe2 write -> write_triangle_mesh пре 12 година
write_triangle_mesh.h 86e8846fe2 write -> write_triangle_mesh пре 12 година

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