Alec Jacobson d10afaa873 fixed many missing IGL_INLINEs 11 ani în urmă
..
bbw df7b363ece rotation widget example 11 ani în urmă
boost b473232452 preprend license header to every file 11 ani în urmă
cgal d695449201 intersect_other compute intersections between two meshes 11 ani în urmă
embree d3976b86a5 removed obsolete orient_outward_ao.h 11 ani în urmă
matlab 2608885ba3 harmonic weights 11 ani în urmă
mosek b473232452 preprend license header to every file 11 ani în urmă
png cd3c29a54a comments in texture from file 11 ani în urmă
svd3x3 53d1068646 arap igl_header_only 11 ani în urmă
tetgen df7b363ece rotation widget example 11 ani în urmă
xml e678f4eb90 bugfix: XMLSerializer.h 11 ani în urmă
ARAPEnergyType.h 6025da57dc ARAp example 11 ani în urmă
C_STR.h b473232452 preprend license header to every file 11 ani în urmă
Camera.h b3914046f0 fix alignment in Camera 11 ani în urmă
EPS.cpp b473232452 preprend license header to every file 11 ani în urmă
EPS.h b473232452 preprend license header to every file 11 ani în urmă
IO 40aa09d1f3 templates and clean up 11 ani în urmă
IndexComparison.h b473232452 preprend license header to every file 11 ani în urmă
MCTables.hh 9f80dbdd02 minor updates to marching cubes 13 ani în urmă
MouseController.h 3ee6fa10ec mouse controller and quaternion io 11 ani în urmă
NormalType.h b2b071dc31 desaturate disabled rotate wdiget 11 ani în urmă
ONE.h b473232452 preprend license header to every file 11 ani în urmă
OpenGL_convenience.h b473232452 preprend license header to every file 11 ani în urmă
PI.h b473232452 preprend license header to every file 11 ani în urmă
REDRUM.h b473232452 preprend license header to every file 11 ani în urmă
ReAntTweakBar.cpp c2646d97f6 medit 11 ani în urmă
ReAntTweakBar.h c2646d97f6 medit 11 ani în urmă
RotateWidget.h 3c1a54ee20 init order in RotateWidget 11 ani în urmă
STR.h b473232452 preprend license header to every file 11 ani în urmă
SolverStatus.h b473232452 preprend license header to every file 11 ani în urmă
SortableRow.h b473232452 preprend license header to every file 11 ani în urmă
Timer.h d10afaa873 fixed many missing IGL_INLINEs 11 ani în urmă
Viewport.h 072cde3df4 bug fixes in rotate wiget, templates 11 ani în urmă
ZERO.h b473232452 preprend license header to every file 11 ani în urmă
active_set.cpp 0f69e26554 Started camera example (not working correctly yet) 11 ani în urmă
active_set.h fde20c73d9 Merge branch 'master' of https://github.com/libigl/libigl 11 ani în urmă
add_barycenter.cpp b473232452 preprend license header to every file 11 ani în urmă
add_barycenter.h b473232452 preprend license header to every file 11 ani în urmă
adjacency_list.cpp 2513a565df added some template instantiations 11 ani în urmă
adjacency_list.h b473232452 preprend license header to every file 11 ani în urmă
adjacency_matrix.cpp b473232452 preprend license header to every file 11 ani în urmă
adjacency_matrix.h b473232452 preprend license header to every file 11 ani în urmă
all_edges.cpp b473232452 preprend license header to every file 11 ani în urmă
all_edges.h b473232452 preprend license header to every file 11 ani în urmă
all_pairs_distances.cpp b473232452 preprend license header to every file 11 ani în urmă
all_pairs_distances.h b473232452 preprend license header to every file 11 ani în urmă
angular_distance.cpp d10afaa873 fixed many missing IGL_INLINEs 11 ani în urmă
angular_distance.h d10afaa873 fixed many missing IGL_INLINEs 11 ani în urmă
any_of.cpp b0f3bad258 added mouse controller and any_of wrapper and license 11 ani în urmă
any_of.h b0f3bad258 added mouse controller and any_of wrapper and license 11 ani în urmă
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 ani în urmă
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 ani în urmă
arap_rhs.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 ani în urmă
arap_rhs.h d10afaa873 fixed many missing IGL_INLINEs 11 ani în urmă
avg_edge_length.cpp 5b5f473c0d fixed weird include situation in avg_edge_length 11 ani în urmă
avg_edge_length.h 5b5f473c0d fixed weird include situation in avg_edge_length 11 ani în urmă
axis_angle_to_quat.cpp b473232452 preprend license header to every file 11 ani în urmă
axis_angle_to_quat.h b473232452 preprend license header to every file 11 ani în urmă
barycenter.cpp b473232452 preprend license header to every file 11 ani în urmă
barycenter.h b473232452 preprend license header to every file 11 ani în urmă
barycentric2global.cpp 4582a4f49d added a function that projects a mesh onto another using embree 11 ani în urmă
barycentric2global.h 4582a4f49d added a function that projects a mesh onto another using embree 11 ani în urmă
basename.cpp b473232452 preprend license header to every file 11 ani în urmă
basename.h b473232452 preprend license header to every file 11 ani în urmă
boundary_conditions.cpp 5c04a7b9d2 Removed overzealous check in boundary_conditions when there's only a single point handle. 11 ani în urmă
boundary_conditions.h b473232452 preprend license header to every file 11 ani în urmă
boundary_faces.cpp e100aa33d6 note in reanttweakbar and boundary faces assertion 11 ani în urmă
boundary_faces.h b473232452 preprend license header to every file 11 ani în urmă
bounding_box_diagonal.cpp b473232452 preprend license header to every file 11 ani în urmă
bounding_box_diagonal.h b473232452 preprend license header to every file 11 ani în urmă
canonical_quaternions.cpp b473232452 preprend license header to every file 11 ani în urmă
canonical_quaternions.h 5b73716bcf major camera refactor 11 ani în urmă
cat.cpp b473232452 preprend license header to every file 11 ani în urmă
cat.h b473232452 preprend license header to every file 11 ani în urmă
cocoa_key_to_anttweakbar_key.cpp b473232452 preprend license header to every file 11 ani în urmă
cocoa_key_to_anttweakbar_key.h b473232452 preprend license header to every file 11 ani în urmă
colon.cpp 0176fe9813 removed colon error message, color example 11 ani în urmă
colon.h b473232452 preprend license header to every file 11 ani în urmă
column_to_quats.cpp 3ee6fa10ec mouse controller and quaternion io 11 ani în urmă
column_to_quats.h 3ee6fa10ec mouse controller and quaternion io 11 ani în urmă
columnize.cpp 04d3a59a57 floats and doubles for arap_dof 11 ani în urmă
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 ani în urmă
cotangent.cpp 11efa92d41 added cot3 references 11 ani în urmă
cotangent.h 2cbb9c856b geometric cotangent, volume, face areas, edge lengths for tet meshes 11 ani în urmă
cotmatrix.cpp 2cbb9c856b geometric cotangent, volume, face areas, edge lengths for tet meshes 11 ani în urmă
cotmatrix.h 2cbb9c856b geometric cotangent, volume, face areas, edge lengths for tet meshes 11 ani în urmă
covariance_scatter_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 ani în urmă
covariance_scatter_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 ani în urmă
create_index_vbo.cpp b473232452 preprend license header to every file 11 ani în urmă
create_index_vbo.h b473232452 preprend license header to every file 11 ani în urmă
create_mesh_vbo.cpp b473232452 preprend license header to every file 11 ani în urmă
create_mesh_vbo.h b473232452 preprend license header to every file 11 ani în urmă
create_shader_program.cpp b473232452 preprend license header to every file 11 ani în urmă
create_shader_program.h b473232452 preprend license header to every file 11 ani în urmă
create_vector_vbo.cpp b473232452 preprend license header to every file 11 ani în urmă
create_vector_vbo.h b473232452 preprend license header to every file 11 ani în urmă
cross.cpp b473232452 preprend license header to every file 11 ani în urmă
cross.h b473232452 preprend license header to every file 11 ani în urmă
cumsum.cpp 83135b0027 hg cleanup' 11 ani în urmă
cumsum.h b4b18430fd sample mesh, cumulative sum, histogram 11 ani în urmă
dated_copy.cpp d10afaa873 fixed many missing IGL_INLINEs 11 ani în urmă
dated_copy.h d10afaa873 fixed many missing IGL_INLINEs 11 ani în urmă
destroy_shader_program.cpp b473232452 preprend license header to every file 11 ani în urmă
destroy_shader_program.h b473232452 preprend license header to every file 11 ani în urmă
diag.cpp b473232452 preprend license header to every file 11 ani în urmă
diag.h b473232452 preprend license header to every file 11 ani în urmă
dihedral_angles.cpp 2cbb9c856b geometric cotangent, volume, face areas, edge lengths for tet meshes 11 ani în urmă
dihedral_angles.h 2cbb9c856b geometric cotangent, volume, face areas, edge lengths for tet meshes 11 ani în urmă
dirname.cpp b473232452 preprend license header to every file 11 ani în urmă
dirname.h b473232452 preprend license header to every file 11 ani în urmă
dot.cpp b473232452 preprend license header to every file 11 ani în urmă
dot.h b473232452 preprend license header to every file 11 ani în urmă
doublearea.cpp 2cbb9c856b geometric cotangent, volume, face areas, edge lengths for tet meshes 11 ani în urmă
doublearea.h b473232452 preprend license header to every file 11 ani în urmă
dqs.cpp e57d75c473 add line seg inside and draw rect, use aligned alloc for quat in vector, better ignore 11 ani în urmă
dqs.h e57d75c473 add line seg inside and draw rect, use aligned alloc for quat in vector, better ignore 11 ani în urmă
draw_beach_ball.cpp b473232452 preprend license header to every file 11 ani în urmă
draw_beach_ball.h f733e02c0a bug fix 11 ani în urmă
draw_floor.cpp ccbdc48e71 fixed bug in camera and better parameterization of draw floor 11 ani în urmă
draw_floor.h ccbdc48e71 fixed bug in camera and better parameterization of draw floor 11 ani în urmă
draw_mesh.cpp 404a719d25 stl file format 11 ani în urmă
draw_mesh.h b473232452 preprend license header to every file 11 ani în urmă
draw_point.cpp b473232452 preprend license header to every file 11 ani în urmă
draw_point.h b473232452 preprend license header to every file 11 ani în urmă
draw_rectangular_marquee.cpp d10afaa873 fixed many missing IGL_INLINEs 11 ani în urmă
draw_rectangular_marquee.h d10afaa873 fixed many missing IGL_INLINEs 11 ani în urmă
draw_skeleton_3d.cpp 865b841fb1 openmp if catch in project_to_line* 11 ani în urmă
draw_skeleton_3d.h ae29184e91 draw skeleton with colors 11 ani în urmă
draw_skeleton_vector_graphics.cpp 072cde3df4 bug fixes in rotate wiget, templates 11 ani în urmă
draw_skeleton_vector_graphics.h 072cde3df4 bug fixes in rotate wiget, templates 11 ani în urmă
edge_lengths.cpp 2cbb9c856b geometric cotangent, volume, face areas, edge lengths for tet meshes 11 ani în urmă
edge_lengths.h 2cbb9c856b geometric cotangent, volume, face areas, edge lengths for tet meshes 11 ani în urmă
edges.cpp b473232452 preprend license header to every file 11 ani în urmă
edges.h b473232452 preprend license header to every file 11 ani în urmă
edgetopology.cpp b473232452 preprend license header to every file 11 ani în urmă
edgetopology.h b473232452 preprend license header to every file 11 ani în urmă
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 ani în urmă
example_fun.h b473232452 preprend license header to every file 11 ani în urmă
face_areas.cpp 2cbb9c856b geometric cotangent, volume, face areas, edge lengths for tet meshes 11 ani în urmă
face_areas.h 2cbb9c856b geometric cotangent, volume, face areas, edge lengths for tet meshes 11 ani în urmă
face_occurences.cpp b473232452 preprend license header to every file 11 ani în urmă
face_occurences.h b473232452 preprend license header to every file 11 ani în urmă
faces_first.cpp b473232452 preprend license header to every file 11 ani în urmă
faces_first.h b473232452 preprend license header to every file 11 ani în urmă
file_contents_as_string.cpp b473232452 preprend license header to every file 11 ani în urmă
file_contents_as_string.h b473232452 preprend license header to every file 11 ani în urmă
file_dialog_open.cpp 1ca72046b6 fixed lots of issues with file_dialog.*, template in tt 11 ani în urmă
file_dialog_open.h 1ca72046b6 fixed lots of issues with file_dialog.*, template in tt 11 ani în urmă
file_dialog_save.cpp 1ca72046b6 fixed lots of issues with file_dialog.*, template in tt 11 ani în urmă
file_dialog_save.h 1ca72046b6 fixed lots of issues with file_dialog.*, template in tt 11 ani în urmă
file_exists.cpp b473232452 preprend license header to every file 11 ani în urmă
file_exists.h b473232452 preprend license header to every file 11 ani în urmă
find.cpp b473232452 preprend license header to every file 11 ani în urmă
find.h b473232452 preprend license header to every file 11 ani în urmă
fit_plane.cpp 5e6a231f3f updated template types in removeUnreference and fixed a minor bug 11 ani în urmă
fit_plane.h 5e6a231f3f updated template types in removeUnreference and fixed a minor bug 11 ani în urmă
flare_textures.h.REMOVED.git-id d10afaa873 fixed many missing IGL_INLINEs 11 ani în urmă
forward_kinematics.cpp 3ee6fa10ec mouse controller and quaternion io 11 ani în urmă
forward_kinematics.h 3ee6fa10ec mouse controller and quaternion io 11 ani în urmă
full.cpp b473232452 preprend license header to every file 11 ani în urmă
full.h b473232452 preprend license header to every file 11 ani în urmă
get_seconds.cpp b473232452 preprend license header to every file 11 ani în urmă
get_seconds.h b473232452 preprend license header to every file 11 ani în urmă
get_seconds_hires.cpp b473232452 preprend license header to every file 11 ani în urmă
get_seconds_hires.h b473232452 preprend license header to every file 11 ani în urmă
gl_type_size.cpp b473232452 preprend license header to every file 11 ani în urmă
gl_type_size.h b473232452 preprend license header to every file 11 ani în urmă
grad.cpp b473232452 preprend license header to every file 11 ani în urmă
grad.h b473232452 preprend license header to every file 11 ani în urmă
gradMat.cpp 11efa92d41 added cot3 references 11 ani în urmă
gradMat.h b473232452 preprend license header to every file 11 ani în urmă
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 ani în urmă
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 ani în urmă
harmonic.cpp 2608885ba3 harmonic weights 11 ani în urmă
harmonic.h 2608885ba3 harmonic weights 11 ani în urmă
harwell_boeing.cpp b473232452 preprend license header to every file 11 ani în urmă
harwell_boeing.h b473232452 preprend license header to every file 11 ani în urmă
histc.cpp 62f4f49e30 bad templates in histc 11 ani în urmă
histc.h aebcaf8c6d better histc prototype, fixed warnings 11 ani în urmă
hsv_to_rgb.cpp d10afaa873 fixed many missing IGL_INLINEs 11 ani în urmă
hsv_to_rgb.h d10afaa873 fixed many missing IGL_INLINEs 11 ani în urmă
igl_inline.h b473232452 preprend license header to every file 11 ani în urmă
intersect.cpp df7b363ece rotation widget example 11 ani în urmă
intersect.h df7b363ece rotation widget example 11 ani în urmă
invert_diag.cpp b473232452 preprend license header to every file 11 ani în urmă
invert_diag.h b473232452 preprend license header to every file 11 ani în urmă
is_border_vertex.cpp 2513a565df added some template instantiations 11 ani în urmă
is_border_vertex.h b473232452 preprend license header to every file 11 ani în urmă
is_dir.cpp b473232452 preprend license header to every file 11 ani în urmă
is_dir.h b473232452 preprend license header to every file 11 ani în urmă
is_file.cpp b473232452 preprend license header to every file 11 ani în urmă
is_file.h b473232452 preprend license header to every file 11 ani în urmă
is_manifold.cpp b473232452 preprend license header to every file 11 ani în urmă
is_manifold.h b473232452 preprend license header to every file 11 ani în urmă
is_planar.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 ani în urmă
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 ani în urmă
is_readable.cpp b473232452 preprend license header to every file 11 ani în urmă
is_readable.h b473232452 preprend license header to every file 11 ani în urmă
is_sparse.cpp b473232452 preprend license header to every file 11 ani în urmă
is_sparse.h b473232452 preprend license header to every file 11 ani în urmă
is_symmetric.cpp b473232452 preprend license header to every file 11 ani în urmă
is_symmetric.h b473232452 preprend license header to every file 11 ani în urmă
is_writable.cpp b473232452 preprend license header to every file 11 ani în urmă
is_writable.h b473232452 preprend license header to every file 11 ani în urmă
jet.cpp d10afaa873 fixed many missing IGL_INLINEs 11 ani în urmă
jet.h d10afaa873 fixed many missing IGL_INLINEs 11 ani în urmă
launch_medit.cpp b473232452 preprend license header to every file 11 ani în urmă
launch_medit.h b473232452 preprend license header to every file 11 ani în urmă
lbs_matrix.cpp fddb3d6563 lbs_matrix overloads for different style output 11 ani în urmă
lbs_matrix.h fddb3d6563 lbs_matrix overloads for different style output 11 ani în urmă
lens_flare.cpp d10afaa873 fixed many missing IGL_INLINEs 11 ani în urmă
lens_flare.h d10afaa873 fixed many missing IGL_INLINEs 11 ani în urmă
limit_faces.cpp b473232452 preprend license header to every file 11 ani în urmă
limit_faces.h b473232452 preprend license header to every file 11 ani în urmă
line_segment_in_rectangle.cpp 3ee6fa10ec mouse controller and quaternion io 11 ani în urmă
line_segment_in_rectangle.h 3ee6fa10ec mouse controller and quaternion io 11 ani în urmă
linsolve_with_fixed.h 80eb660b63 Added linsolve_with_fixed function 11 ani în urmă
list_to_matrix.cpp 865b841fb1 openmp if catch in project_to_line* 11 ani în urmă
list_to_matrix.h b473232452 preprend license header to every file 11 ani în urmă
load_shader.cpp b473232452 preprend license header to every file 11 ani în urmă
load_shader.h b473232452 preprend license header to every file 11 ani în urmă
local_basis.cpp 346f7db74b added function to compute local basis for each triangle 11 ani în urmă
local_basis.h 346f7db74b added function to compute local basis for each triangle 11 ani în urmă
lu_lagrange.cpp b473232452 preprend license header to every file 11 ani în urmă
lu_lagrange.h b473232452 preprend license header to every file 11 ani în urmă
marching_cubes.cpp 9f80dbdd02 minor updates to marching cubes 13 ani în urmă
marching_cubes.h 166a191467 clean up some headers, auto doc and todos 12 ani în urmă
massmatrix.cpp b473232452 preprend license header to every file 11 ani în urmă
massmatrix.h b473232452 preprend license header to every file 11 ani în urmă
mat_max.cpp b473232452 preprend license header to every file 11 ani în urmă
mat_max.h b473232452 preprend license header to every file 11 ani în urmă
mat_min.cpp b473232452 preprend license header to every file 11 ani în urmă
mat_min.h b473232452 preprend license header to every file 11 ani în urmă
mat_to_quat.cpp b473232452 preprend license header to every file 11 ani în urmă
mat_to_quat.h b473232452 preprend license header to every file 11 ani în urmă
material_colors.h ae29184e91 draw skeleton with colors 11 ani în urmă
matlab_format.cpp 9552b88f01 upright glutpostredisplay, templates 11 ani în urmă
matlab_format.h b473232452 preprend license header to every file 11 ani în urmă
matrix_to_list.cpp b473232452 preprend license header to every file 11 ani în urmă
matrix_to_list.h b473232452 preprend license header to every file 11 ani în urmă
max_size.cpp b473232452 preprend license header to every file 11 ani în urmă
max_size.h b473232452 preprend license header to every file 11 ani în urmă
median.cpp b473232452 preprend license header to every file 11 ani în urmă
median.h b473232452 preprend license header to every file 11 ani în urmă
min_quad_dense.cpp b473232452 preprend license header to every file 11 ani în urmă
min_quad_dense.h b473232452 preprend license header to every file 11 ani în urmă
min_quad_with_fixed.cpp 764fc12ba8 camera example working and interactive. 11 ani în urmă
min_quad_with_fixed.h 6025da57dc ARAp example 11 ani în urmă
min_size.cpp b473232452 preprend license header to every file 11 ani în urmă
min_size.h b473232452 preprend license header to every file 11 ani în urmă
mode.cpp b473232452 preprend license header to every file 11 ani în urmă
mode.h b473232452 preprend license header to every file 11 ani în urmă
moveFV.cpp b473232452 preprend license header to every file 11 ani în urmă
moveFV.h b473232452 preprend license header to every file 11 ani în urmă
moveVF.cpp b473232452 preprend license header to every file 11 ani în urmă
moveVF.h b473232452 preprend license header to every file 11 ani în urmă
mvc.cpp f12fa9bd9d some linux compilation fixes.. 11 ani în urmă
mvc.h b473232452 preprend license header to every file 11 ani în urmă
normalize_quat.cpp b473232452 preprend license header to every file 11 ani în urmă
normalize_quat.h b473232452 preprend license header to every file 11 ani în urmă
normalize_row_lengths.cpp b473232452 preprend license header to every file 11 ani în urmă
normalize_row_lengths.h b473232452 preprend license header to every file 11 ani în urmă
normalize_row_sums.cpp df7b363ece rotation widget example 11 ani în urmă
normalize_row_sums.h df7b363ece rotation widget example 11 ani în urmă
on_boundary.cpp b473232452 preprend license header to every file 11 ani în urmă
on_boundary.h b473232452 preprend license header to every file 11 ani în urmă
orient_outward.cpp b473232452 preprend license header to every file 11 ani în urmă
orient_outward.h b473232452 preprend license header to every file 11 ani în urmă
orth.cpp b473232452 preprend license header to every file 11 ani în urmă
orth.h b473232452 preprend license header to every file 11 ani în urmă
partition.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 ani în urmă
partition.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 ani în urmă
path_to_executable.cpp d10afaa873 fixed many missing IGL_INLINEs 11 ani în urmă
path_to_executable.h d10afaa873 fixed many missing IGL_INLINEs 11 ani în urmă
pathinfo.cpp b473232452 preprend license header to every file 11 ani în urmă
pathinfo.h b3914046f0 fix alignment in Camera 11 ani în urmă
per_corner_normals.cpp 2513a565df added some template instantiations 11 ani în urmă
per_corner_normals.h b473232452 preprend license header to every file 11 ani în urmă
per_face_normals.cpp 2513a565df added some template instantiations 11 ani în urmă
per_face_normals.h f4ee805a31 fixed bug in quicklook 11 ani în urmă
per_vertex_attribute_smoothing.cpp b473232452 preprend license header to every file 11 ani în urmă
per_vertex_attribute_smoothing.h b473232452 preprend license header to every file 11 ani în urmă
per_vertex_normals.cpp b473232452 preprend license header to every file 11 ani în urmă
per_vertex_normals.h b473232452 preprend license header to every file 11 ani în urmă
plot_vector.cpp b473232452 preprend license header to every file 11 ani în urmă
plot_vector.h b473232452 preprend license header to every file 11 ani în urmă
point_in_circle.cpp b473232452 preprend license header to every file 11 ani în urmă
point_in_circle.h b473232452 preprend license header to every file 11 ani în urmă
point_in_poly.cpp b473232452 preprend license header to every file 11 ani în urmă
point_in_poly.h b473232452 preprend license header to every file 11 ani în urmă
polar_dec.cpp b473232452 preprend license header to every file 11 ani în urmă
polar_dec.h b473232452 preprend license header to every file 11 ani în urmă
polar_svd.cpp 04d3a59a57 floats and doubles for arap_dof 11 ani în urmă
polar_svd.h b473232452 preprend license header to every file 11 ani în urmă
pos.h 9d9f8a3a94 added boundary handling in pos 11 ani în urmă
principal_curvature.cpp 44b10fb975 added options to principal_curvature 11 ani în urmă
principal_curvature.h 44b10fb975 added options to principal_curvature 11 ani în urmă
print_gl_get.cpp b473232452 preprend license header to every file 11 ani în urmă
print_gl_get.h b473232452 preprend license header to every file 11 ani în urmă
print_ijv.cpp b473232452 preprend license header to every file 11 ani în urmă
print_ijv.h b473232452 preprend license header to every file 11 ani în urmă
print_program_info_log.cpp b473232452 preprend license header to every file 11 ani în urmă
print_program_info_log.h b473232452 preprend license header to every file 11 ani în urmă
print_shader_info_log.cpp b473232452 preprend license header to every file 11 ani în urmă
print_shader_info_log.h b473232452 preprend license header to every file 11 ani în urmă
project.cpp 404a719d25 stl file format 11 ani în urmă
project.h b473232452 preprend license header to every file 11 ani în urmă
project_to_line.cpp 865b841fb1 openmp if catch in project_to_line* 11 ani în urmă
project_to_line.h df7b363ece rotation widget example 11 ani în urmă
project_to_line_segment.cpp 865b841fb1 openmp if catch in project_to_line* 11 ani în urmă
project_to_line_segment.h 609c7351ec rotating widget example with dependencies 11 ani în urmă
quat_conjugate.cpp b473232452 preprend license header to every file 11 ani în urmă
quat_conjugate.h b473232452 preprend license header to every file 11 ani în urmă
quat_mult.cpp b473232452 preprend license header to every file 11 ani în urmă
quat_mult.h b473232452 preprend license header to every file 11 ani în urmă
quat_to_axis_angle.cpp b473232452 preprend license header to every file 11 ani în urmă
quat_to_axis_angle.h b473232452 preprend license header to every file 11 ani în urmă
quat_to_mat.cpp b473232452 preprend license header to every file 11 ani în urmă
quat_to_mat.h b473232452 preprend license header to every file 11 ani în urmă
quats_to_column.cpp 3ee6fa10ec mouse controller and quaternion io 11 ani în urmă
quats_to_column.h 3ee6fa10ec mouse controller and quaternion io 11 ani în urmă
random_dir.cpp d10afaa873 fixed many missing IGL_INLINEs 11 ani în urmă
random_dir.h d10afaa873 fixed many missing IGL_INLINEs 11 ani în urmă
random_points_on_mesh.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 ani în urmă
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 ani în urmă
randperm.cpp 3d9295b22a templates 11 ani în urmă
randperm.h b473232452 preprend license header to every file 11 ani în urmă
ray_sphere_intersect.cpp 609c7351ec rotating widget example with dependencies 11 ani în urmă
ray_sphere_intersect.h 609c7351ec rotating widget example with dependencies 11 ani în urmă
read.cpp 2513a565df added some template instantiations 11 ani în urmă
read.h b473232452 preprend license header to every file 11 ani în urmă
readCSV.cpp 7afa4c43c9 renamed read_eigen... to readCSV to match others 11 ani în urmă
readCSV.h 7afa4c43c9 renamed read_eigen... to readCSV to match others 11 ani în urmă
readDMAT.cpp 6025da57dc ARAp example 11 ani în urmă
readDMAT.h b473232452 preprend license header to every file 11 ani în urmă
readMESH.cpp b473232452 preprend license header to every file 11 ani în urmă
readMESH.h b473232452 preprend license header to every file 11 ani în urmă
readNODE.cpp b473232452 preprend license header to every file 11 ani în urmă
readNODE.h b473232452 preprend license header to every file 11 ani în urmă
readOBJ.cpp 404a719d25 stl file format 11 ani în urmă
readOBJ.h b473232452 preprend license header to every file 11 ani în urmă
readOFF.cpp 1a794e0c3b bugfix in reorient_facets_raycast 11 ani în urmă
readOFF.h b473232452 preprend license header to every file 11 ani în urmă
readSTL.cpp 404a719d25 stl file format 11 ani în urmă
readSTL.h 404a719d25 stl file format 11 ani în urmă
readTGF.cpp df7b363ece rotation widget example 11 ani în urmă
readTGF.h df7b363ece rotation widget example 11 ani în urmă
readWRL.cpp b473232452 preprend license header to every file 11 ani în urmă
readWRL.h b473232452 preprend license header to every file 11 ani în urmă
removeDuplicates.cpp b473232452 preprend license header to every file 11 ani în urmă
removeDuplicates.h b473232452 preprend license header to every file 11 ani în urmă
removeUnreferenced.cpp 306c5b7a31 cleaned up removeUnreferenced (we should rename this remove_unreferenced to match style and the corresponding matlab func) 11 ani în urmă
removeUnreferenced.h 306c5b7a31 cleaned up removeUnreferenced (we should rename this remove_unreferenced to match style and the corresponding matlab func) 11 ani în urmă
remove_duplicate_vertices.cpp b473232452 preprend license header to every file 11 ani în urmă
remove_duplicate_vertices.h b473232452 preprend license header to every file 11 ani în urmă
render_to_tga.cpp 79341b5bd6 compress in tutorial, better header in compress, ifndef IGL_NO_OPENGL and IGL_NO_ANTTWEAKBAR guards, compress compiles without these, undo svd 11 ani în urmă
render_to_tga.h 09ef1c952b camera class, render to png extra, yimg external, more material colors (those used in FAST paper), 12 ani în urmă
reorder.cpp b473232452 preprend license header to every file 11 ani în urmă
reorder.h b473232452 preprend license header to every file 11 ani în urmă
repdiag.cpp b473232452 preprend license header to every file 11 ani în urmă
repdiag.h b473232452 preprend license header to every file 11 ani în urmă
repmat.cpp b473232452 preprend license header to every file 11 ani în urmă
repmat.h 0d2b528651 path to executable (working on OSX), dated copy of file with permissions, draw_mesh less kruft 11 ani în urmă
report_gl_error.cpp 1a493e2836 template 11 ani în urmă
report_gl_error.h 1a493e2836 template 11 ani în urmă
rgb_to_hsv.cpp d10afaa873 fixed many missing IGL_INLINEs 11 ani în urmă
rgb_to_hsv.h d10afaa873 fixed many missing IGL_INLINEs 11 ani în urmă
right_axis.cpp b473232452 preprend license header to every file 11 ani în urmă
right_axis.h b473232452 preprend license header to every file 11 ani în urmă
rotate_by_quat.cpp b473232452 preprend license header to every file 11 ani în urmă
rotate_by_quat.h b473232452 preprend license header to every file 11 ani în urmă
round.cpp b473232452 preprend license header to every file 11 ani în urmă
round.h b473232452 preprend license header to every file 11 ani în urmă
rows_to_matrix.cpp b473232452 preprend license header to every file 11 ani în urmă
rows_to_matrix.h b473232452 preprend license header to every file 11 ani în urmă
sample_edges.cpp b473232452 preprend license header to every file 11 ani în urmă
sample_edges.h d10afaa873 fixed many missing IGL_INLINEs 11 ani în urmă
shine_textures.h.REMOVED.git-id b473232452 preprend license header to every file 11 ani în urmă
slice.cpp 3d9295b22a templates 11 ani în urmă
slice.h 3d9295b22a templates 11 ani în urmă
slice_into.cpp b473232452 preprend license header to every file 11 ani în urmă
slice_into.h b473232452 preprend license header to every file 11 ani în urmă
snap_points.cpp 801315915a snap points and templates 11 ani în urmă
snap_points.h 801315915a snap points and templates 11 ani în urmă
snap_to_canonical_view_quat.cpp 5b73716bcf major camera refactor 11 ani în urmă
snap_to_canonical_view_quat.h 5b73716bcf major camera refactor 11 ani în urmă
snap_to_fixed_up.cpp 4d48550bb1 camera example with twbar 11 ani în urmă
snap_to_fixed_up.h 4d48550bb1 camera example with twbar 11 ani în urmă
sort.cpp adaa905fc7 Precision fix in tinyxml2 11 ani în urmă
sort.h b473232452 preprend license header to every file 11 ani în urmă
sort_triangles.cpp b473232452 preprend license header to every file 11 ani în urmă
sort_triangles.h b473232452 preprend license header to every file 11 ani în urmă
sortrows.cpp b473232452 preprend license header to every file 11 ani în urmă
sortrows.h b473232452 preprend license header to every file 11 ani în urmă
sparse.cpp b473232452 preprend license header to every file 11 ani în urmă
sparse.h b473232452 preprend license header to every file 11 ani în urmă
speye.cpp b473232452 preprend license header to every file 11 ani în urmă
speye.h b473232452 preprend license header to every file 11 ani în urmă
stdin_to_temp.cpp b473232452 preprend license header to every file 11 ani în urmă
stdin_to_temp.h b473232452 preprend license header to every file 11 ani în urmă
sum.cpp b473232452 preprend license header to every file 11 ani în urmă
sum.h b473232452 preprend license header to every file 11 ani în urmă
svd.cpp b473232452 preprend license header to every file 11 ani în urmă
svd.h b473232452 preprend license header to every file 11 ani în urmă
texture_from_tga.cpp 79341b5bd6 compress in tutorial, better header in compress, ifndef IGL_NO_OPENGL and IGL_NO_ANTTWEAKBAR guards, compress compiles without these, undo svd 11 ani în urmă
texture_from_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 11 ani în urmă
tga.cpp 5e178e4771 fixed compilation error with clang 11 ani în urmă
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 11 ani în urmă
trackball.cpp 2b40471f2b trackball: int to double 11 ani în urmă
trackball.h 2b40471f2b trackball: int to double 11 ani în urmă
transpose_blocks.cpp b473232452 preprend license header to every file 11 ani în urmă
transpose_blocks.h b473232452 preprend license header to every file 11 ani în urmă
triangulate.cpp b473232452 preprend license header to every file 11 ani în urmă
triangulate.h b473232452 preprend license header to every file 11 ani în urmă
tt.cpp 1ca72046b6 fixed lots of issues with file_dialog.*, template in tt 11 ani în urmă
tt.h b473232452 preprend license header to every file 11 ani în urmă
two_axis_valuator_fixed_up.cpp 4d48550bb1 camera example with twbar 11 ani în urmă
two_axis_valuator_fixed_up.h 4d48550bb1 camera example with twbar 11 ani în urmă
uniform_type_to_string.cpp b473232452 preprend license header to every file 11 ani în urmă
uniform_type_to_string.h b473232452 preprend license header to every file 11 ani în urmă
uniformly_sample_two_manifold.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 ani în urmă
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 ani în urmă
unique.cpp b473232452 preprend license header to every file 11 ani în urmă
unique.h b473232452 preprend license header to every file 11 ani în urmă
unique_simplices.cpp b473232452 preprend license header to every file 11 ani în urmă
unique_simplices.h b473232452 preprend license header to every file 11 ani în urmă
unproject.cpp 1a493e2836 template 11 ani în urmă
unproject.h b473232452 preprend license header to every file 11 ani în urmă
unproject_to_zero_plane.cpp 801315915a snap points and templates 11 ani în urmă
unproject_to_zero_plane.h b473232452 preprend license header to every file 11 ani în urmă
up_axis.cpp b473232452 preprend license header to every file 11 ani în urmă
up_axis.h b473232452 preprend license header to every file 11 ani în urmă
upsample.cpp b473232452 preprend license header to every file 11 ani în urmă
upsample.h b473232452 preprend license header to every file 11 ani în urmă
verbose.h b473232452 preprend license header to every file 11 ani în urmă
vf.cpp 2513a565df added some template instantiations 11 ani în urmă
vf.h e74ac9d4df notes in vf.* 11 ani în urmă
view_axis.cpp df7b363ece rotation widget example 11 ani în urmă
view_axis.h df7b363ece rotation widget example 11 ani în urmă
volume.cpp 2cbb9c856b geometric cotangent, volume, face areas, edge lengths for tet meshes 11 ani în urmă
volume.h 2cbb9c856b geometric cotangent, volume, face areas, edge lengths for tet meshes 11 ani în urmă
write.cpp b473232452 preprend license header to every file 11 ani în urmă
write.h b473232452 preprend license header to every file 11 ani în urmă
writeDMAT.cpp b473232452 preprend license header to every file 11 ani în urmă
writeDMAT.h b473232452 preprend license header to every file 11 ani în urmă
writeMESH.cpp b473232452 preprend license header to every file 11 ani în urmă
writeMESH.h b473232452 preprend license header to every file 11 ani în urmă
writeOBJ.cpp b473232452 preprend license header to every file 11 ani în urmă
writeOBJ.h b473232452 preprend license header to every file 11 ani în urmă
writeOFF.cpp b473232452 preprend license header to every file 11 ani în urmă
writeOFF.h b473232452 preprend license header to every file 11 ani în urmă
writeSTL.cpp fe9e094c4f updated readme to include build instructions for externals, bug fixed in embree lib paths 11 ani în urmă
writeSTL.h 404a719d25 stl file format 11 ani în urmă
writeTGF.cpp b473232452 preprend license header to every file 11 ani în urmă
writeTGF.h b473232452 preprend license header to every file 11 ani în urmă

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