Jérémie Dumas 2842637d4c Fix #1133. 6 years ago
..
copyleft e3cfbc1541 templates, overloads, rm extra includes, etc. 6 years ago
embree b7124f179f add unit tests for embree (#952) 7 years ago
matlab 1fce942281 matlab 2018 uses strange macro, include first 8 years ago
mosek 65a4bccd36 Fix bug when lx == ux 8 years ago
opengl 2842637d4c Fix #1133. 6 years ago
png 2ccda67014 Merge pull request #494 from wucm1994/master 8 years ago
triangle 444174e11c Bug fix on incorrect malloc(0) of pointmarkerlist struct when VM.size()=0 8 years ago
xml 2ddb11aa6b Misc. typos 8 years ago
AABB.cpp 85b93826a2 merge 7 years ago
AABB.h 606a4a0c88 clean up winding number code. templates 8 years ago
ARAPEnergyType.h f318d4eed6 arap dynamics, better parameters 10 years ago
AtA_cached.cpp 7e4936e383 style fixes in AtA_cached and sparse_cached 8 years ago
AtA_cached.h 7e4936e383 style fixes in AtA_cached and sparse_cached 8 years ago
C_STR.h 3005b455e7 fix for windows 10 years ago
Camera.h c7e31dfe16 quotes instead of brackets 7 years ago
EPS.cpp b6c6db1279 specialization --> instantiation 9 years ago
EPS.h 20e0e9a082 comments 10 years ago
HalfEdgeIterator.cpp a152a2648e fix templating 9 years ago
HalfEdgeIterator.h 8aaab1ecd9 fixed memory error hidden by const& in miq-related functions 8 years ago
Hit.h a1e8235f15 expose unproject_in_mesh to main library with default brute force option 10 years ago
IO 78edcb4470 triangle_wrapper -> triangulate 11 years ago
IndexComparison.h 20e0e9a082 comments 10 years ago
LinSpaced.h 2955adeb5e tutorial and unit tests compile and run with Eigen 3.3.1; Eigen's LinSpaced had yet another bug 9 years ago
MappingEnergyType.h 2726464472 Adding 2D version of SCAF for Bijective Maps and a tutorial (#752) 7 years ago
MeshBooleanType.h dab8fad5dd separate boolean code to cgal and cork, fix cmake for lib and tutorial 10 years ago
NormalType.h 20e0e9a082 comments 10 years ago
ONE.h 20e0e9a082 comments 10 years ago
PI.h b473232452 preprend license header to every file 12 years ago
REDRUM.h 2ddb11aa6b Misc. typos 8 years ago
STR.h 3005b455e7 fix for windows 10 years ago
Singular_Value_Decomposition_Givens_QR_Factorization_Kernel.hpp cce7d90d92 mv SVD to main lib 10 years ago
Singular_Value_Decomposition_Jacobi_Conjugation_Kernel.hpp cce7d90d92 mv SVD to main lib 10 years ago
Singular_Value_Decomposition_Kernel_Declarations.hpp cce7d90d92 mv SVD to main lib 10 years ago
Singular_Value_Decomposition_Main_Kernel_Body.hpp ed363da1f6 Update .travis.yml 7 years ago
Singular_Value_Decomposition_Preamble.hpp 57b3f492ff warnings 10 years ago
SolverStatus.h b473232452 preprend license header to every file 12 years ago
SortableRow.h bae6702731 more misc. typos 8 years ago
Timer.h f6dd78f80f Bugfix: NULL not declared 9 years ago
Viewport.h 20e0e9a082 comments 10 years ago
WindingNumberAABB.h 606a4a0c88 clean up winding number code. templates 8 years ago
WindingNumberMethod.h 20e0e9a082 comments 10 years ago
WindingNumberTree.h 1deb471727 extra boundary_facets outputs; better sort prototypes; templates; cleanup 7 years ago
ZERO.h 20e0e9a082 comments 10 years ago
accumarray.cpp 1deb471727 extra boundary_facets outputs; better sort prototypes; templates; cleanup 7 years ago
accumarray.h 1deb471727 extra boundary_facets outputs; better sort prototypes; templates; cleanup 7 years ago
active_set.cpp 0667cbcb2a fix namespace/include order errors 9 years ago
active_set.h 20e0e9a082 comments 10 years ago
adjacency_list.cpp fb63fbcdc7 PlainObjectBase -> MatrixBase (#1016) 7 years ago
adjacency_list.h fb63fbcdc7 PlainObjectBase -> MatrixBase (#1016) 7 years ago
adjacency_matrix.cpp 075e95bfd2 Revert "Revert "Make avg_edge_length() count interior edges only once."" 7 years ago
adjacency_matrix.h 9df7d65b44 better templates 9 years ago
all.cpp b6c6db1279 specialization --> instantiation 9 years ago
all.h 5e5d11c49f reductions for sparse matrices 9 years ago
all_edges.cpp 7b82a08e5b all_edges --> oriented_facets 9 years ago
all_edges.h 7b82a08e5b all_edges --> oriented_facets 9 years ago
all_pairs_distances.cpp b6c6db1279 specialization --> instantiation 9 years ago
all_pairs_distances.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
ambient_occlusion.cpp def56b2aad delete unnecessary line 8 years ago
ambient_occlusion.h ef75655a3b expose ambient occlusion without embree 10 years ago
angular_distance.cpp 1b254f02a1 rm using namespace igl 10 years ago
angular_distance.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
any.cpp b6c6db1279 specialization --> instantiation 9 years ago
any.h 5e5d11c49f reductions for sparse matrices 9 years ago
any_of.cpp b6c6db1279 specialization --> instantiation 9 years ago
any_of.h f0b9c018f1 slice tets and tempaltes 11 years ago
arap.cpp 97bf3c6fb5 PlainObjectBase objects should not be declared 9 years ago
arap.h f318d4eed6 arap dynamics, better parameters 10 years ago
arap_dof.cpp 2ddb11aa6b Misc. typos 8 years ago
arap_dof.h bae6702731 more misc. typos 8 years ago
arap_linear_block.cpp b6c6db1279 specialization --> instantiation 9 years ago
arap_linear_block.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
arap_rhs.cpp 1b254f02a1 rm using namespace igl 10 years ago
arap_rhs.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
average_onto_faces.cpp 0f3f1dfaae remove unneeded V input 7 years ago
average_onto_faces.h 0f3f1dfaae remove unneeded V input 7 years ago
average_onto_vertices.cpp b6c6db1279 specialization --> instantiation 9 years ago
average_onto_vertices.h 0ea2eca5d4 Add RowMajor storage order support 10 years ago
avg_edge_length.cpp 075e95bfd2 Revert "Revert "Make avg_edge_length() count interior edges only once."" 7 years ago
avg_edge_length.h 075e95bfd2 Revert "Revert "Make avg_edge_length() count interior edges only once."" 7 years ago
axis_angle_to_quat.cpp b6c6db1279 specialization --> instantiation 9 years ago
axis_angle_to_quat.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
barycenter.cpp 173e77d755 template instantiations and const fix 7 years ago
barycenter.h 67cd80a83b PlainObjectBase -> MatrixBase on a lot of inputs 8 years ago
barycentric_coordinates.cpp 7feec96c29 some strange compilation issues, templates 8 years ago
barycentric_coordinates.h 67cd80a83b PlainObjectBase -> MatrixBase on a lot of inputs 8 years ago
barycentric_to_global.cpp 5db529c861 mostly template instantiations 11 years ago
barycentric_to_global.h 3cfd194147 barycentric2global --> barycentric_to_global 11 years ago
basename.cpp b473232452 preprend license header to every file 12 years ago
basename.h 18bd747cb4 example in header 10 years ago
bbw.cpp 67ad5eb9e5 disabled parallel_for in windows 7 years ago
bbw.h 2ddb11aa6b Misc. typos 8 years ago
bfs.cpp ce0c1eb7c7 dfs and bfs 9 years ago
bfs.h ce0c1eb7c7 dfs and bfs 9 years ago
bfs_orient.cpp b6c6db1279 specialization --> instantiation 9 years ago
bfs_orient.h 98540fdb74 rm boost dependency extra, absorb functions into main library 10 years ago
biharmonic_coordinates.cpp d4ec2b0a2d biharmonic coordiantes fixed to reflect erratum 9 years ago
biharmonic_coordinates.h 4100b31d41 support for higher-order biharmonic coords 10 years ago
bijective_composite_harmonic_mapping.cpp e5d51c1db0 wrapper with iteration parameters 9 years ago
bijective_composite_harmonic_mapping.h bae6702731 more misc. typos 8 years ago
bone_parents.cpp 53c2b9e8fa missing copyrights 10 years ago
bone_parents.h 5e41228487 skeleton building and posing examples 11 years ago
boundary_conditions.cpp 2ddb11aa6b Misc. typos 8 years ago
boundary_conditions.h b82ea91d7d better doc 9 years ago
boundary_facets.cpp e3cfbc1541 templates, overloads, rm extra includes, etc. 6 years ago
boundary_facets.h 1deb471727 extra boundary_facets outputs; better sort prototypes; templates; cleanup 7 years ago
boundary_loop.cpp b2938a41d9 change PlainObjectBase to MatrixBase to fix compile error 7 years ago
boundary_loop.h fb63fbcdc7 PlainObjectBase -> MatrixBase (#1016) 7 years ago
bounding_box.cpp 6bdb22dd5f pad parameter 9 years ago
bounding_box.h 6bdb22dd5f pad parameter 9 years ago
bounding_box_diagonal.cpp b6c6db1279 specialization --> instantiation 9 years ago
bounding_box_diagonal.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
canonical_quaternions.cpp b6c6db1279 specialization --> instantiation 9 years ago
canonical_quaternions.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
cat.cpp ba47646bc5 Clean external/ folder. 7 years ago
cat.h 2ddb11aa6b Misc. typos 8 years ago
ceil.cpp b6c6db1279 specialization --> instantiation 9 years ago
ceil.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
centroid.cpp e2a7dc74dd adding templates 7 years ago
centroid.h 035849c472 templates 8 years ago
circulation.cpp be75695e02 circulation does not need F,E args + tests 7 years ago
circulation.h be75695e02 circulation does not need F,E args + tests 7 years ago
circumradius.cpp 8943387b53 use nan replacement doublearea 9 years ago
circumradius.h c330b9a5ec compute per triangle circum- and in- radii 9 years ago
collapse_edge.cpp be75695e02 circulation does not need F,E args + tests 7 years ago
collapse_edge.h e3cfbc1541 templates, overloads, rm extra includes, etc. 6 years ago
collapse_small_triangles.cpp f3cd179f00 use new doublearea 9 years ago
collapse_small_triangles.h 6737f53ebc collapse small triangles 11 years ago
colon.cpp f787dcc330 Fix missing template instantiation when compiling with CGAL on Windows. 8 years ago
colon.h f976e38f91 faster tri tri adj, unique simplices 11 years ago
colormap.cpp 7bc261f8b4 added templates and fixed ui for high dpi (mac retina display with multiple screens) 8 years ago
colormap.h 2ec589c7b3 rm deprecation warnings. clean up style violations 8 years ago
column_to_quats.cpp 3ee6fa10ec mouse controller and quaternion io 12 years ago
column_to_quats.h e9d637ef52 - compilation fixes for the tutorials in chapter 4 11 years ago
columnize.cpp b6c6db1279 specialization --> instantiation 9 years ago
columnize.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
comb_cross_field.cpp 7c249cb5e2 add while loop for comb_cross_field.cpp, making comb support manifold that 8 years ago
comb_cross_field.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
comb_frame_field.cpp 75d60e40a8 Documentation and code clean ups (MIQ related) (#971) 7 years ago
comb_frame_field.h 344cb9eea3 -Changes to header files to support parsing 9 years ago
comb_line_field.cpp b6c6db1279 specialization --> instantiation 9 years ago
comb_line_field.h c7f6cff1db fixes from Nico Pietroni on the MIQ pipeline and examples 11 years ago
combine.cpp e3cfbc1541 templates, overloads, rm extra includes, etc. 6 years ago
combine.h 2edf650cdd merge 8 years ago
compute_frame_field_bisectors.cpp 2eef4a9b30 Fix compilation issues. 7 years ago
compute_frame_field_bisectors.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
connect_boundary_to_infinity.cpp 1caf839744 missing templates 9 years ago
connect_boundary_to_infinity.h 2ddb11aa6b Misc. typos 8 years ago
cotmatrix.cpp b6c6db1279 specialization --> instantiation 9 years ago
cotmatrix.h db2419a6e3 cotmatrix appears to support tetrahedra too 7 years ago
cotmatrix_entries.cpp beb304e729 cotmatrix computed intrinsically (using edge lengths) + templates + tests 7 years ago
cotmatrix_entries.h e930df68d1 added intrinsic version of cotmatrix_entries + test 7 years ago
cotmatrix_intrinsic.cpp 4180f4b778 did I forget to add this? 7 years ago
cotmatrix_intrinsic.h 78a33cf870 fix wrong reference in cotmatrix_intrinsic 7 years ago
count.cpp b6c6db1279 specialization --> instantiation 9 years ago
count.h 074577bc17 use sparse matrix redux/for each 9 years ago
covariance_scatter_matrix.cpp a6f983d90a Fix. 7 years ago
covariance_scatter_matrix.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
cross.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
cross.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
cross_field_mismatch.cpp 75d60e40a8 Documentation and code clean ups (MIQ related) (#971) 7 years ago
cross_field_mismatch.h 75d60e40a8 Documentation and code clean ups (MIQ related) (#971) 7 years ago
crouzeix_raviart_cotmatrix.cpp 2ddb11aa6b Misc. typos 8 years ago
crouzeix_raviart_cotmatrix.h 7b82a08e5b all_edges --> oriented_facets 9 years ago
crouzeix_raviart_massmatrix.cpp 2ddb11aa6b Misc. typos 8 years ago
crouzeix_raviart_massmatrix.h 7b82a08e5b all_edges --> oriented_facets 9 years ago
cumprod.cpp ee3d3a373d cumulative product; tests + cumsum test 7 years ago
cumprod.h ee3d3a373d cumulative product; tests + cumsum test 7 years ago
cumsum.cpp ee3d3a373d cumulative product; tests + cumsum test 7 years ago
cumsum.h 480f98b127 better templates 8 years ago
cut_mesh.cpp 2ddb11aa6b Misc. typos 8 years ago
cut_mesh.h a456df913d static library _compiles_ with eigen3.3.1 9 years ago
cut_mesh_from_singularities.cpp 8aaab1ecd9 fixed memory error hidden by const& in miq-related functions 8 years ago
cut_mesh_from_singularities.h 48ac6aa0b5 Some further cleanups for MIQ (#998) 7 years ago
cut_to_disk.cpp d7cd36b42e Update cut_to_disk.cpp 7 years ago
cut_to_disk.h 4a3ce8d896 Update cut_to_disk.h 7 years ago
cylinder.cpp df801345c1 copyright/license headers 9 years ago
cylinder.h df801345c1 copyright/license headers 9 years ago
dated_copy.cpp 6f8f988fa5 fixed various windows issues with static library 10 years ago
dated_copy.h 6f8f988fa5 fixed various windows issues with static library 10 years ago
decimate.cpp 5d956357b5 return false on nonmanifold 8 years ago
decimate.h 42d48d7457 ack, pre_/-post_ collapse needs full state 9 years ago
deform_skeleton.cpp 53c2b9e8fa missing copyrights 10 years ago
deform_skeleton.h b84e4e375d extra eigen stdvector includes 9 years ago
delaunay_triangulation.cpp b7db5a8ee0 Stupid template should compile now. 7 years ago
delaunay_triangulation.h b7db5a8ee0 Stupid template should compile now. 7 years ago
deprecated.h 53c2b9e8fa missing copyrights 10 years ago
dfs.cpp 1397a27933 Fix template specializations 8 years ago
dfs.h 2656c6d361 missing eigen include 9 years ago
diag.cpp b6c6db1279 specialization --> instantiation 9 years ago
diag.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
dihedral_angles.cpp 173e77d755 template instantiations and const fix 7 years ago
dihedral_angles.h 173e77d755 template instantiations and const fix 7 years ago
dijkstra.cpp 93cba2e044 rename 7 years ago
dijkstra.h 93cba2e044 rename 7 years ago
directed_edge_orientations.cpp b6c6db1279 specialization --> instantiation 9 years ago
directed_edge_orientations.h b84e4e375d extra eigen stdvector includes 9 years ago
directed_edge_parents.cpp b6c6db1279 specialization --> instantiation 9 years ago
directed_edge_parents.h 2ddb11aa6b Misc. typos 8 years ago
dirname.cpp 8c5e9bd9bd better windows support (hopefully), unix unit tests still pass 7 years ago
dirname.h 8c5e9bd9bd better windows support (hopefully), unix unit tests still pass 7 years ago
dot.cpp b473232452 preprend license header to every file 12 years ago
dot.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
dot_row.cpp b6c6db1279 specialization --> instantiation 9 years ago
dot_row.h 97bf3c6fb5 PlainObjectBase objects should not be declared 9 years ago
doublearea.cpp ab730005e9 template nonsense 7 years ago
doublearea.h 8943387b53 use nan replacement doublearea 9 years ago
dqs.cpp b6c6db1279 specialization --> instantiation 9 years ago
dqs.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
ears.cpp b6c6db1279 specialization --> instantiation 9 years ago
ears.h ec0cb390f5 identify 'ears' on mesh 9 years ago
edge_collapse_is_valid.cpp be75695e02 circulation does not need F,E args + tests 7 years ago
edge_collapse_is_valid.h 7ce75d2528 edge collapsing and linear programs 11 years ago
edge_exists_near.cpp 1c6e530501 remove overzealous asserts 7 years ago
edge_exists_near.h c1de27fbf0 function to determine if edge already exists nearby + test 7 years ago
edge_flaps.cpp c29460666a better parameter name 7 years ago
edge_flaps.h c29460666a better parameter name 7 years ago
edge_lengths.cpp e3cfbc1541 templates, overloads, rm extra includes, etc. 6 years ago
edge_lengths.h 9698061a02 better templating 9 years ago
edge_topology.cpp b6c6db1279 specialization --> instantiation 9 years ago
edge_topology.h 0eda832958 typos in comments 8 years ago
edges.cpp 075e95bfd2 Revert "Revert "Make avg_edge_length() count interior edges only once."" 7 years ago
edges.h 5d19ae349d rm bogus template 7 years ago
edges_to_path.cpp b6c6db1279 specialization --> instantiation 9 years ago
edges_to_path.h 236b440c34 convert list of edges forming chain/loop into path 9 years ago
eigs.cpp 1397a27933 Fix template specializations 8 years ago
eigs.h 78732839e2 better documentation 9 years ago
euler_characteristic.cpp b6c6db1279 specialization --> instantiation 9 years ago
euler_characteristic.h 992eeb587a better templating 9 years ago
exact_geodesic.cpp ed363da1f6 Update .travis.yml 7 years ago
exact_geodesic.h dfa9df1786 exact geodesic function interface 8 years ago
example_fun.cpp b6c6db1279 specialization --> instantiation 9 years ago
example_fun.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
exterior_edges.cpp 2ddb11aa6b Misc. typos 8 years ago
exterior_edges.h 2ddb11aa6b Misc. typos 8 years ago
extract_manifold_patches.cpp f787dcc330 Fix missing template instantiation when compiling with CGAL on Windows. 8 years ago
extract_manifold_patches.h b00e745985 adding missing copyright/license headers 9 years ago
extract_non_manifold_edge_curves.cpp b00e745985 adding missing copyright/license headers 9 years ago
extract_non_manifold_edge_curves.h b00e745985 adding missing copyright/license headers 9 years ago
face_areas.cpp c31471f571 unused nan replacement 9 years ago
face_areas.h 8943387b53 use nan replacement doublearea 9 years ago
face_occurrences.cpp 1deb471727 extra boundary_facets outputs; better sort prototypes; templates; cleanup 7 years ago
face_occurrences.h 1deb471727 extra boundary_facets outputs; better sort prototypes; templates; cleanup 7 years ago
faces_first.cpp b6c6db1279 specialization --> instantiation 9 years ago
faces_first.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
facet_components.cpp 928045da6f Missing template instantiations. 7 years ago
facet_components.h 18a1eaf38c we have the functions `igl::components()` and `igl::facet_components()` for computing connected components on vertices and faces respectively. 7 years ago
false_barycentric_subdivision.cpp b6c6db1279 specialization --> instantiation 9 years ago
false_barycentric_subdivision.h 3b3eddd9a0 fixed template madness in tri_tri 10 years ago
fast_winding_number.cpp f979aaaa98 fix. 7 years ago
fast_winding_number.h d9483e96e2 minor typo 7 years ago
file_contents_as_string.cpp 909c4a05ff return overload 10 years ago
file_contents_as_string.h 909c4a05ff return overload 10 years ago
file_dialog_open.cpp 69f1c5f112 fixed a bug concerning load mesh from dialog 10 years ago
file_dialog_open.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
file_dialog_save.cpp 6f8f988fa5 fixed various windows issues with static library 10 years ago
file_dialog_save.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
file_exists.cpp a60d9c69a1 get modifiers, fit rigid 2d, templates 11 years ago
file_exists.h a60d9c69a1 get modifiers, fit rigid 2d, templates 11 years ago
find.cpp e3cfbc1541 templates, overloads, rm extra includes, etc. 6 years ago
find.h c41afa77ec better templates 9 years ago
find_cross_field_singularities.cpp 75d60e40a8 Documentation and code clean ups (MIQ related) (#971) 7 years ago
find_cross_field_singularities.h 75d60e40a8 Documentation and code clean ups (MIQ related) (#971) 7 years ago
find_zero.cpp b6c6db1279 specialization --> instantiation 9 years ago
find_zero.h 5e5d11c49f reductions for sparse matrices 9 years ago
fit_plane.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
fit_plane.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
fit_rotations.cpp b6c6db1279 specialization --> instantiation 9 years ago
fit_rotations.h 36a1006438 note that fit_rotations may be obsolete 10 years ago
flip_avoiding_line_search.cpp 3a72136c4d Fixed undefined behavior in the SolveP3 function of flip_avoiding_line_search. 7 years ago
flip_avoiding_line_search.h 174ac59db6 update M_PI to igl::PI. header file inclusion for some files are also added. 7 years ago
flip_edge.cpp 83553eb3bb windows template 7 years ago
flip_edge.h 34b56ae109 Minor update to get window compilation pass. 9 years ago
flipped_triangles.cpp b6c6db1279 specialization --> instantiation 9 years ago
flipped_triangles.h 4ebf2b20ef fixed up style and compilation errors in flipped_triangles 9 years ago
flood_fill.cpp 4f6e28067c better templating 8 years ago
flood_fill.h 7feec96c29 some strange compilation issues, templates 8 years ago
floor.cpp b6c6db1279 specialization --> instantiation 9 years ago
floor.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
for_each.h 0faf24a294 add svd version 9 years ago
forward_kinematics.cpp b6c6db1279 specialization --> instantiation 9 years ago
forward_kinematics.h b7157c2898 translation widget 10 years ago
frame_field_deformer.cpp b6c6db1279 specialization --> instantiation 9 years ago
frame_field_deformer.h b1ea555f41 bad path 11 years ago
frame_to_cross_field.cpp b6c6db1279 specialization --> instantiation 9 years ago
frame_to_cross_field.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
frustum.cpp b6c6db1279 specialization --> instantiation 9 years ago
frustum.h a1c8fcb85c templates, viewer opengl code extraction 11 years ago
gaussian_curvature.cpp b6c6db1279 specialization --> instantiation 9 years ago
gaussian_curvature.h bd57fc27aa no division by area 10 years ago
get_seconds.cpp 3224534a03 C++11 get seconds 9 years ago
get_seconds.h f976e38f91 faster tri tri adj, unique simplices 11 years ago
get_seconds_hires.cpp b473232452 preprend license header to every file 12 years ago
get_seconds_hires.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
grad.cpp b7db5a8ee0 Stupid template should compile now. 7 years ago
grad.h 49535abdad formatting 7 years ago
grad_intrinsic.cpp b7db5a8ee0 Stupid template should compile now. 7 years ago
grad_intrinsic.h 44f93fa0d9 intrinsic gradient operator + test 7 years ago
grid.cpp 2e91bb3a00 generalize grid to any dimension; 2d test 7 years ago
grid.h 2e91bb3a00 generalize grid to any dimension; 2d test 7 years ago
grid_search.cpp 89b6ecee13 some simple global optimization routines 8 years ago
grid_search.h 89b6ecee13 some simple global optimization routines 8 years ago
group_sum_matrix.cpp b6c6db1279 specialization --> instantiation 9 years ago
group_sum_matrix.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
guess_extension.cpp 4a1547e5f6 fixed namespace and missing include 7 years ago
guess_extension.h be1bbf6fde templates and output parameter overload 9 years ago
harmonic.cpp 05f2905655 Update templates 9 years ago
harmonic.h 9698061a02 better templating 9 years ago
harwell_boeing.cpp b6c6db1279 specialization --> instantiation 9 years ago
harwell_boeing.h bdeb592dc8 rm unneeded define 11 years ago
hausdorff.cpp 8478104910 removed __1 7 years ago
hausdorff.h e699d257fe Update hausdorff.h 7 years ago
heat_geodesics.cpp 607148cf72 Misc compilation fixes for Eigen 3.3 compatibility. 7 years ago
heat_geodesics.h e032f31a92 using intrinsic div/grad 7 years ago
hessian.cpp c173e452df Compatibility with Eigen 3.3 8 years ago
hessian.h 8d398f2306 Enforcing 80 character rule 8 years ago
hessian_energy.cpp c173e452df Compatibility with Eigen 3.3 8 years ago
hessian_energy.h 8d398f2306 Enforcing 80 character rule 8 years ago
histc.cpp a456df913d static library _compiles_ with eigen3.3.1 9 years ago
histc.h 2ddb11aa6b Misc. typos 8 years ago
hsv_to_rgb.cpp 85a56e391b resize(X.rows(),X.cols()) --> resizeLike(X) 9 years ago
hsv_to_rgb.h 20a3ad28f1 eigen types 10 years ago
igl_inline.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
in_element.cpp 92b29eb15f templates 10 years ago
in_element.h 5e0d6b3aff Fixed various minor bugs, added explicit template specifications 9 years ago
infinite_cost_stopping_condition.cpp ad917ffc5e Fixed namespace problem 9 years ago
infinite_cost_stopping_condition.h 6fad412558 decimate with finite cost 9 years ago
inradius.cpp 8943387b53 use nan replacement doublearea 9 years ago
inradius.h c330b9a5ec compute per triangle circum- and in- radii 9 years ago
internal_angles.cpp 606a4a0c88 clean up winding number code. templates 8 years ago
internal_angles.h 67cd80a83b PlainObjectBase -> MatrixBase on a lot of inputs 8 years ago
intersect.cpp b6c6db1279 specialization --> instantiation 9 years ago
intersect.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
intrinsic_delaunay_cotmatrix.cpp 345f82245d templates 7 years ago
intrinsic_delaunay_cotmatrix.h 5fe542d003 intrinsic delaunay cotmatrix + test 7 years ago
intrinsic_delaunay_triangulation.cpp e3cfbc1541 templates, overloads, rm extra includes, etc. 6 years ago
intrinsic_delaunay_triangulation.h c6e6f809da missing include 7 years ago
invert_diag.cpp b6c6db1279 specialization --> instantiation 9 years ago
invert_diag.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
is_border_vertex.cpp 4f6d98e504 deprecate (V,F) version; PlainObject -> Matrix 7 years ago
is_border_vertex.h 4f6d98e504 deprecate (V,F) version; PlainObject -> Matrix 7 years ago
is_boundary_edge.cpp 2ddb11aa6b Misc. typos 8 years ago
is_boundary_edge.h 5ad035de72 boundaryedges and CR mass matrix 10 years ago
is_delaunay.cpp b7db5a8ee0 Stupid template should compile now. 7 years ago
is_delaunay.h 71508b1b30 delaunay unit tests, expose is_delaunay, templates, PlainObject -> Matrix 7 years ago
is_dir.cpp b473232452 preprend license header to every file 12 years ago
is_dir.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
is_edge_manifold.cpp 7b82a08e5b all_edges --> oriented_facets 9 years ago
is_edge_manifold.h 01e284b3d7 better templating 9 years ago
is_file.cpp b473232452 preprend license header to every file 12 years ago
is_file.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
is_intrinsic_delaunay.cpp e3cfbc1541 templates, overloads, rm extra includes, etc. 6 years ago
is_intrinsic_delaunay.h 7b7086162f refactor and added extra while loop 7 years ago
is_irregular_vertex.cpp b6c6db1279 specialization --> instantiation 9 years ago
is_irregular_vertex.h 442c8d908c added mesh statistics functions and updated tutorial 11 years ago
is_planar.cpp c39ca7747a fixed many style issues, missing copyrights, inlines 11 years ago
is_planar.h bae6702731 more misc. typos 8 years ago
is_readable.cpp b473232452 preprend license header to every file 12 years ago
is_readable.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
is_sparse.cpp b6c6db1279 specialization --> instantiation 9 years ago
is_sparse.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
is_stl.cpp 2370f45420 [BUG FIX]: freopen doesn't work on windows 8 years ago
is_stl.h b6e3b252af read directly from file pointer 9 years ago
is_symmetric.cpp a456df913d static library _compiles_ with eigen3.3.1 9 years ago
is_symmetric.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
is_vertex_manifold.cpp 5692d6f7ba rm bogus template 7 years ago
is_vertex_manifold.h 9f0396b085 Update the documentation of is_vertex_manifold. 10 years ago
is_writable.cpp b473232452 preprend license header to every file 12 years ago
is_writable.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
isdiag.cpp b6c6db1279 specialization --> instantiation 9 years ago
isdiag.h 8dc2514633 isdiagonal test, harmonic abstracted away from laplacian 9 years ago
ismember.cpp f095f685db [API]: Slice tets now extracts contours of arb. funcs; templates 8 years ago
ismember.h b504c61714 templates and prototypes 8 years ago
isolines.cpp da5b824984 Removed superfluous sort 8 years ago
isolines.h d449ba9868 Fixed typo 8 years ago
jet.cpp 7bc261f8b4 added templates and fixed ui for high dpi (mac retina display with multiple screens) 8 years ago
jet.h 2ec589c7b3 rm deprecation warnings. clean up style violations 8 years ago
knn.cpp 9621a87edd comparison functor of priority queue is required to represent a strict ordering 7 years ago
knn.h dd9d853fad Made the changes Alec asked for 7 years ago
launch_medit.cpp b6c6db1279 specialization --> instantiation 9 years ago
launch_medit.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
lbs_matrix.cpp c39ca7747a fixed many style issues, missing copyrights, inlines 11 years ago
lbs_matrix.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
lexicographic_triangulation.cpp 71508b1b30 delaunay unit tests, expose is_delaunay, templates, PlainObject -> Matrix 7 years ago
lexicographic_triangulation.h 71508b1b30 delaunay unit tests, expose is_delaunay, templates, PlainObject -> Matrix 7 years ago
limit_faces.cpp b6c6db1279 specialization --> instantiation 9 years ago
limit_faces.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
line_field_mismatch.cpp 75d60e40a8 Documentation and code clean ups (MIQ related) (#971) 7 years ago
line_field_mismatch.h 75d60e40a8 Documentation and code clean ups (MIQ related) (#971) 7 years ago
line_search.cpp a26275254d * added missing IGL_INLINE 9 years ago
line_search.h ac38aede79 * removed defines and namespaces from flip_avoiding_line_search 9 years ago
line_segment_in_rectangle.cpp 0667cbcb2a fix namespace/include order errors 9 years ago
line_segment_in_rectangle.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
linprog.cpp 5a63323d51 unnecessary includes 9 years ago
linprog.h 7ce75d2528 edge collapsing and linear programs 11 years ago
list_to_matrix.cpp e3cfbc1541 templates, overloads, rm extra includes, etc. 6 years ago
list_to_matrix.h 6f3f5bdabe Merge branch 'master' of https://github.com/schuellc/libigl 10 years ago
local_basis.cpp b6c6db1279 specialization --> instantiation 9 years ago
local_basis.h 344cb9eea3 -Changes to header files to support parsing 9 years ago
look_at.cpp b6c6db1279 specialization --> instantiation 9 years ago
look_at.h a1c8fcb85c templates, viewer opengl code extraction 11 years ago
loop.cpp e650edcc01 templates 9 years ago
loop.h 19bc318c12 loop, upsample, bug fix + tutorial 9 years ago
lscm.cpp b6c6db1279 specialization --> instantiation 9 years ago
lscm.h 3a82db0c88 clarify ref 10 years ago
map_vertices_to_circle.cpp f979aaaa98 fix. 7 years ago
map_vertices_to_circle.h 174ac59db6 update M_PI to igl::PI. header file inclusion for some files are also added. 7 years ago
mapping_energy_with_jacobians.cpp 2726464472 Adding 2D version of SCAF for Bijective Maps and a tutorial (#752) 7 years ago
mapping_energy_with_jacobians.h 2726464472 Adding 2D version of SCAF for Bijective Maps and a tutorial (#752) 7 years ago
marching_tets.cpp 1fe4eb190f Revert "Revert "Marching Tetrahedra (#716)" (#924)" (#925) 7 years ago
marching_tets.h 1fe4eb190f Revert "Revert "Marching Tetrahedra (#716)" (#924)" (#925) 7 years ago
massmatrix.cpp 688b137e8d intrinsic mass matrix using only edge lengths 7 years ago
massmatrix.h 688b137e8d intrinsic mass matrix using only edge lengths 7 years ago
massmatrix_intrinsic.cpp 2c31834bab missing template 7 years ago
massmatrix_intrinsic.h 688b137e8d intrinsic mass matrix using only edge lengths 7 years ago
mat_max.cpp b6c6db1279 specialization --> instantiation 9 years ago
mat_max.h 2c0956abc6 better templating 9 years ago
mat_min.cpp b6c6db1279 specialization --> instantiation 9 years ago
mat_min.h 2c0956abc6 better templating 9 years ago
mat_to_quat.cpp b6c6db1279 specialization --> instantiation 9 years ago
mat_to_quat.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
material_colors.h ae29184e91 draw skeleton with colors 12 years ago
matlab_format.cpp c1d4e3a728 fix matlab templates for Eigen 3.3 6 years ago
matlab_format.h 2ddb11aa6b Misc. typos 8 years ago
matrix_to_list.cpp d7517e2359 :green_heart: :snake: Add template instantiations for python 7 years ago
matrix_to_list.h 46aa12d3e1 setxor, correct indices assuming colmajor 9 years ago
max.cpp b6c6db1279 specialization --> instantiation 9 years ago
max.h 5e5d11c49f reductions for sparse matrices 9 years ago
max_faces_stopping_condition.cpp df801345c1 copyright/license headers 9 years ago
max_faces_stopping_condition.h 4deb79d564 pull out shortest_edge_... and max_faces... functions 9 years ago
max_size.cpp b504c61714 templates and prototypes 8 years ago
max_size.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
median.cpp 075e95bfd2 Revert "Revert "Make avg_edge_length() count interior edges only once."" 7 years ago
median.h c25e874b18 better templating for WNAABB, and template hell ensuing 8 years ago
min.cpp 5e5d11c49f reductions for sparse matrices 9 years ago
min.h 5e5d11c49f reductions for sparse matrices 9 years ago
min_quad_dense.cpp b6c6db1279 specialization --> instantiation 9 years ago
min_quad_dense.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
min_quad_with_fixed.cpp e3cfbc1541 templates, overloads, rm extra includes, etc. 6 years ago
min_quad_with_fixed.h c2761bcd59 improve documentation, mention trace, num cols 9 years ago
min_size.cpp b504c61714 templates and prototypes 8 years ago
min_size.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
mod.cpp 85a56e391b resize(X.rows(),X.cols()) --> resizeLike(X) 9 years ago
mod.h c9be59b49f fix some bad uses of Eigen::PlainObjectBase 10 years ago
mode.cpp b6c6db1279 specialization --> instantiation 9 years ago
mode.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
mvc.cpp ed153a8b84 abs warning 10 years ago
mvc.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
nchoosek.cpp a456df913d static library _compiles_ with eigen3.3.1 9 years ago
nchoosek.h 4f99fc5ddd variadic boolean ops 9 years ago
next_filename.cpp 3afe7f3444 templates 11 years ago
next_filename.h f6af195656 typo 7 years ago
normal_derivative.cpp 36e5b8c423 wrapper for Eigen's buggy LinSpaced 9 years ago
normal_derivative.h 8fd80c7bc0 biharmonic coordinates, impl of 'linear subspace design...', templates, overloads 10 years ago
normalize_quat.cpp b6c6db1279 specialization --> instantiation 9 years ago
normalize_quat.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
normalize_row_lengths.cpp b6c6db1279 specialization --> instantiation 9 years ago
normalize_row_lengths.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
normalize_row_sums.cpp b6c6db1279 specialization --> instantiation 9 years ago
normalize_row_sums.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
null.cpp 9354cc1124 null space 11 years ago
null.h 9354cc1124 null space 11 years ago
octree.cpp 42883bb57a add cpature 7 years ago
octree.h dd9d853fad Made the changes Alec asked for 7 years ago
on_boundary.cpp b6c6db1279 specialization --> instantiation 9 years ago
on_boundary.h f5b39a8657 better templating 9 years ago
orient_outward.cpp b6c6db1279 specialization --> instantiation 9 years ago
orient_outward.h 63e134577a manifold_patches --> orientable_patches 11 years ago
orientable_patches.cpp a9c3b6d50a rename components.[h|cpp] to vertex_components.[h|cpp] 7 years ago
orientable_patches.h 2dfdea1a3b templates 9 years ago
oriented_facets.cpp c25e874b18 better templating for WNAABB, and template hell ensuing 8 years ago
oriented_facets.h 71508b1b30 delaunay unit tests, expose is_delaunay, templates, PlainObject -> Matrix 7 years ago
orth.cpp b473232452 preprend license header to every file 12 years ago
orth.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
ortho.cpp b6c6db1279 specialization --> instantiation 9 years ago
ortho.h a1c8fcb85c templates, viewer opengl code extraction 11 years ago
outer_element.cpp b6c6db1279 specialization --> instantiation 9 years ago
outer_element.h 05cf35b4d6 Minor update to documentation and rename exterior* to outer*. 10 years ago
parallel_for.h 2ddb11aa6b Misc. typos 8 years ago
parallel_transport_angles.cpp b6c6db1279 specialization --> instantiation 9 years ago
parallel_transport_angles.h 5f795771d7 implementation of integrable polyvector fields (+some templates) 10 years ago
partition.cpp c39ca7747a fixed many style issues, missing copyrights, inlines 11 years ago
partition.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
parula.cpp 2ec589c7b3 rm deprecation warnings. clean up style violations 8 years ago
parula.h 2ec589c7b3 rm deprecation warnings. clean up style violations 8 years ago
path_to_executable.cpp 6f8f988fa5 fixed various windows issues with static library 10 years ago
path_to_executable.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
pathinfo.cpp bae6702731 more misc. typos 8 years ago
pathinfo.h 8e2e36c12a examples 10 years ago
per_corner_normals.cpp 2eef4a9b30 Fix compilation issues. 7 years ago
per_corner_normals.h 1dce34596b use matrixbase 7 years ago
per_edge_normals.cpp 2ddb11aa6b Misc. typos 8 years ago
per_edge_normals.h 67cd80a83b PlainObjectBase -> MatrixBase on a lot of inputs 8 years ago
per_face_normals.cpp a5a501f3a7 Merge pull request #1028 from MeshGeometry/master 7 years ago
per_face_normals.h 67cd80a83b PlainObjectBase -> MatrixBase on a lot of inputs 8 years ago
per_vertex_attribute_smoothing.cpp 97bf3c6fb5 PlainObjectBase objects should not be declared 9 years ago
per_vertex_attribute_smoothing.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
per_vertex_normals.cpp 2e79bd99de templates 8 years ago
per_vertex_normals.h 67cd80a83b PlainObjectBase -> MatrixBase on a lot of inputs 8 years ago
per_vertex_point_to_plane_quadrics.cpp df801345c1 copyright/license headers 9 years ago
per_vertex_point_to_plane_quadrics.h df801345c1 copyright/license headers 9 years ago
piecewise_constant_winding_number.cpp f979aaaa98 fix. 7 years ago
piecewise_constant_winding_number.h 606a4a0c88 clean up winding number code. templates 8 years ago
pinv.cpp 6f47da1700 pseudoinverse 9 years ago
pinv.h 6f47da1700 pseudoinverse 9 years ago
planarize_quad_mesh.cpp b6c6db1279 specialization --> instantiation 9 years ago
planarize_quad_mesh.h 53c2b9e8fa missing copyrights 10 years ago
ply.h ed363da1f6 Update .travis.yml 7 years ago
point_in_circle.cpp b473232452 preprend license header to every file 12 years ago
point_in_circle.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
point_in_poly.cpp b473232452 preprend license header to every file 12 years ago
point_in_poly.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
point_mesh_squared_distance.cpp d568485242 Rince and repeat. 7 years ago
point_mesh_squared_distance.h 5e0d6b3aff Fixed various minor bugs, added explicit template specifications 9 years ago
point_simplex_squared_distance.cpp 537c389b74 Removed minus from assertion 7 years ago
point_simplex_squared_distance.h 36f3f666e9 fix template to match explicits 9 years ago
polar_dec.cpp b6c6db1279 specialization --> instantiation 9 years ago
polar_dec.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
polar_svd.cpp b6c6db1279 specialization --> instantiation 9 years ago
polar_svd.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
polar_svd3x3.cpp b6c6db1279 specialization --> instantiation 9 years ago
polar_svd3x3.h cce7d90d92 mv SVD to main lib 10 years ago
polygon_mesh_to_triangle_mesh.cpp bb730dec7d adding template 7 years ago
polygon_mesh_to_triangle_mesh.h 8e6f510b7b next filename, draw quad meshes, template specializations, 11 years ago
principal_curvature.cpp ac7fb9913a files should end with newline 7 years ago
principal_curvature.h 414740aa38 add overload function for principal_curvature 7 years ago
print_ijv.cpp b6c6db1279 specialization --> instantiation 9 years ago
print_ijv.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
print_vector.cpp b6c6db1279 specialization --> instantiation 9 years ago
print_vector.h 4372f57c55 plot_vector --> print_vector 11 years ago
procrustes.cpp 72eb3ef51a missing namespaces/includes 9 years ago
procrustes.h 6e2c0ff218 bug in procrustes templating 11 years ago
project.cpp f4eff4ea57 PlainObjectBase -> MatrixBase 7 years ago
project.h f4eff4ea57 PlainObjectBase -> MatrixBase 7 years ago
project_isometrically_to_plane.cpp 97bf3c6fb5 PlainObjectBase objects should not be declared 9 years ago
project_isometrically_to_plane.h e7f4b0154a plane_project --> project_isometrically_to_plane 11 years ago
project_to_line.cpp 7feec96c29 some strange compilation issues, templates 8 years ago
project_to_line.h 2ddb11aa6b Misc. typos 8 years ago
project_to_line_segment.cpp 7feec96c29 some strange compilation issues, templates 8 years ago
project_to_line_segment.h 2ddb11aa6b Misc. typos 8 years ago
pseudonormal_test.cpp 2e79bd99de templates 8 years ago
pseudonormal_test.h 67cd80a83b PlainObjectBase -> MatrixBase on a lot of inputs 8 years ago
pso.cpp 89b6ecee13 some simple global optimization routines 8 years ago
pso.h 89b6ecee13 some simple global optimization routines 8 years ago
qslim.cpp 5d956357b5 return false on nonmanifold 8 years ago
qslim.h 1a42b39c93 Update qslim.h 7 years ago
qslim_optimal_collapse_edge_callbacks.cpp e2f6f2c24c std isinf 9 years ago
qslim_optimal_collapse_edge_callbacks.h df801345c1 copyright/license headers 9 years ago
quad_planarity.cpp b6c6db1279 specialization --> instantiation 9 years ago
quad_planarity.h 53c2b9e8fa missing copyrights 10 years ago
quadric_binary_plus_operator.cpp df801345c1 copyright/license headers 9 years ago
quadric_binary_plus_operator.h df801345c1 copyright/license headers 9 years ago
quat_conjugate.cpp b6c6db1279 specialization --> instantiation 9 years ago
quat_conjugate.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
quat_mult.cpp b6c6db1279 specialization --> instantiation 9 years ago
quat_mult.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
quat_to_axis_angle.cpp b6c6db1279 specialization --> instantiation 9 years ago
quat_to_axis_angle.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
quat_to_mat.cpp b6c6db1279 specialization --> instantiation 9 years ago
quat_to_mat.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
quats_to_column.cpp 3ee6fa10ec mouse controller and quaternion io 12 years ago
quats_to_column.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
ramer_douglas_peucker.cpp 36e5b8c423 wrapper for Eigen's buggy LinSpaced 9 years ago
ramer_douglas_peucker.h 16cd4fcd13 wrapper to output reparameterization along simplified curve 9 years ago
random_dir.cpp 62521f0d2c fix for clang, enabled embree build by default for python bindings 9 years ago
random_dir.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
random_points_on_mesh.cpp b6c6db1279 specialization --> instantiation 9 years ago
random_points_on_mesh.h 52eabdec3e documentation 9 years ago
random_quaternion.cpp f979aaaa98 fix. 7 years ago
random_quaternion.h 53c2b9e8fa missing copyrights 10 years ago
random_search.cpp 89b6ecee13 some simple global optimization routines 8 years ago
random_search.h 89b6ecee13 some simple global optimization routines 8 years ago
randperm.cpp 843438eab9 Fix logic error for URNG in igl::randperm 7 years ago
randperm.h 843438eab9 Fix logic error for URNG in igl::randperm 7 years ago
ray_box_intersect.cpp ff75cfe954 Fix template instantiations. 7 years ago
ray_box_intersect.h 67cd80a83b PlainObjectBase -> MatrixBase on a lot of inputs 8 years ago
ray_mesh_intersect.cpp ff75cfe954 Fix template instantiations. 7 years ago
ray_mesh_intersect.h b00e745985 adding missing copyright/license headers 9 years ago
ray_sphere_intersect.cpp b6c6db1279 specialization --> instantiation 9 years ago
ray_sphere_intersect.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
raytri.c 2ddb11aa6b Misc. typos 8 years ago
readBF.cpp b00e745985 adding missing copyright/license headers 9 years ago
readBF.h b00e745985 adding missing copyright/license headers 9 years ago
readCSV.cpp b6c6db1279 specialization --> instantiation 9 years ago
readCSV.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
readDMAT.cpp 607148cf72 Misc compilation fixes for Eigen 3.3 compatibility. 7 years ago
readDMAT.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
readMESH.cpp c1ecc17d97 remove debug printing 8 years ago
readMESH.h b6e3b252af read directly from file pointer 9 years ago
readMSH.cpp f94f61b519 rm broken template 7 years ago
readMSH.h e6932c0e0d missing header 7 years ago
readNODE.cpp b6c6db1279 specialization --> instantiation 9 years ago
readNODE.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
readOBJ.cpp e3cfbc1541 templates, overloads, rm extra includes, etc. 6 years ago
readOBJ.h 680d9ff712 better templating 9 years ago
readOFF.cpp 7bbcec7f04 fix blank line error while opening OFF file 9 years ago
readOFF.h b6e3b252af read directly from file pointer 9 years ago
readPLY.cpp 4a1547e5f6 fixed namespace and missing include 7 years ago
readPLY.h ae4e417d37 Fix #573. Removing global variables - making 'readPLY' and 'writePLY' threadsafe. 8 years ago
readSTL.cpp 2370f45420 [BUG FIX]: freopen doesn't work on windows 8 years ago
readSTL.h d74a195c24 Fix documentation of readSTL 7 years ago
readTGF.cpp 77b87e622a rm using namespace igl 10 years ago
readTGF.h 2ddb11aa6b Misc. typos 8 years ago
readWRL.cpp b6c6db1279 specialization --> instantiation 9 years ago
readWRL.h b6e3b252af read directly from file pointer 9 years ago
read_triangle_mesh.cpp e2e4926241 Merge branch 'master' into obj_load_fix 8 years ago
read_triangle_mesh.h b6e3b252af read directly from file pointer 9 years ago
redux.h 7aed747cd7 remove unneeded include 7 years ago
remesh_along_isoline.cpp 4e46268580 template 7 years ago
remesh_along_isoline.h d5778fea4b Fix the typo in a `#include` statement. 7 years ago
remove_duplicate_vertices.cpp 5487ed607a [TEMPLATES] 8 years ago
remove_duplicate_vertices.h b09b6e5b0f better templating 9 years ago
remove_duplicates.cpp b6c6db1279 specialization --> instantiation 9 years ago
remove_duplicates.h 69808310c1 removeDuplicates --> remove_duplicates 11 years ago
remove_unreferenced.cpp 173e77d755 template instantiations and const fix 7 years ago
remove_unreferenced.h e3cfbc1541 templates, overloads, rm extra includes, etc. 6 years ago
reorder.cpp 01729b533d Update reorder.cpp 7 years ago
reorder.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
repdiag.cpp b6c6db1279 specialization --> instantiation 9 years ago
repdiag.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
repmat.cpp b6c6db1279 specialization --> instantiation 9 years ago
repmat.h 9698061a02 better templating 9 years ago
resolve_duplicated_faces.cpp f787dcc330 Fix missing template instantiation when compiling with CGAL on Windows. 8 years ago
resolve_duplicated_faces.h f9ced09c24 merge 10 years ago
rgb_to_hsv.cpp b6c6db1279 specialization --> instantiation 9 years ago
rgb_to_hsv.h 20a3ad28f1 eigen types 10 years ago
rotate_by_quat.cpp b6c6db1279 specialization --> instantiation 9 years ago
rotate_by_quat.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
rotate_vectors.cpp b6c6db1279 specialization --> instantiation 9 years ago
rotate_vectors.h 75d60e40a8 Documentation and code clean ups (MIQ related) (#971) 7 years ago
rotation_matrix_from_directions.cpp b6c6db1279 specialization --> instantiation 9 years ago
rotation_matrix_from_directions.h 2d42198b19 fix style, rm unused parameter 10 years ago
round.cpp 2e79bd99de templates 8 years ago
round.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
rows_to_matrix.cpp b6c6db1279 specialization --> instantiation 9 years ago
rows_to_matrix.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
sample_edges.cpp b473232452 preprend license header to every file 12 years ago
sample_edges.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
scaf.cpp e3cfbc1541 templates, overloads, rm extra includes, etc. 6 years ago
scaf.h 2726464472 Adding 2D version of SCAF for Bijective Maps and a tutorial (#752) 7 years ago
seam_edges.cpp b6c6db1279 specialization --> instantiation 9 years ago
seam_edges.h af2594ad1c cosmetic reformatting and templates 9 years ago
segment_segment_intersect.cpp e3cfbc1541 templates, overloads, rm extra includes, etc. 6 years ago
segment_segment_intersect.h e3cfbc1541 templates, overloads, rm extra includes, etc. 6 years ago
serialize.h 07d68473d9 Corrected omission of return argument. 7 years ago
setdiff.cpp 8ce9abcfc6 fixed template instantiation 7 years ago
setdiff.h 46aa12d3e1 setxor, correct indices assuming colmajor 9 years ago
setunion.cpp b6c6db1279 specialization --> instantiation 9 years ago
setunion.h 06215fe09b set union on matrices 9 years ago
setxor.cpp 8ce9abcfc6 fixed template instantiation 7 years ago
setxor.h 46aa12d3e1 setxor, correct indices assuming colmajor 9 years ago
shape_diameter_function.cpp c7503024f3 use correct types for temporary matrices 7 years ago
shape_diameter_function.h 2692c1ee0c basic shape diameter function implementation 8 years ago
shapeup.cpp f979aaaa98 fix. 7 years ago
shapeup.h 174ac59db6 update M_PI to igl::PI. header file inclusion for some files are also added. 7 years ago
shortest_edge_and_midpoint.cpp df801345c1 copyright/license headers 9 years ago
shortest_edge_and_midpoint.h 4deb79d564 pull out shortest_edge_... and max_faces... functions 9 years ago
signed_angle.cpp 29250d6923 templates 8 years ago
signed_angle.h 606a4a0c88 clean up winding number code. templates 8 years ago
signed_distance.cpp 2e79bd99de templates 8 years ago
signed_distance.h 7feec96c29 some strange compilation issues, templates 8 years ago
simplify_polyhedron.cpp be75695e02 circulation does not need F,E args + tests 7 years ago
simplify_polyhedron.h 4123794f61 simplify polyhedron 9 years ago
slice.cpp 607148cf72 Misc compilation fixes for Eigen 3.3 compatibility. 7 years ago
slice.h c41afa77ec better templates 9 years ago
slice_cached.cpp 9e63059a33 style fixes in slice_cached 8 years ago
slice_cached.h 54953fe376 merge 8 years ago
slice_into.cpp a81b77dfa6 Bug fix in slice_into.cpp 7 years ago
slice_into.h c41afa77ec better templates 9 years ago
slice_mask.cpp 480f98b127 better templates 8 years ago
slice_mask.h 03c9c841dc trivially extend to sparse matrices 9 years ago
slim.cpp 2726464472 Adding 2D version of SCAF for Bijective Maps and a tutorial (#752) 7 years ago
slim.h 2726464472 Adding 2D version of SCAF for Bijective Maps and a tutorial (#752) 7 years ago
snap_points.cpp b6c6db1279 specialization --> instantiation 9 years ago
snap_points.h 2dfdea1a3b templates 9 years ago
snap_to_canonical_view_quat.cpp b6c6db1279 specialization --> instantiation 9 years ago
snap_to_canonical_view_quat.h 8c809663c2 better tempaltes 10 years ago
snap_to_fixed_up.cpp b6c6db1279 specialization --> instantiation 9 years ago
snap_to_fixed_up.h 6d578a7133 key usage in viewer 10 years ago
solid_angle.cpp 2e79bd99de templates 8 years ago
solid_angle.h 606a4a0c88 clean up winding number code. templates 8 years ago
sort.cpp 1deb471727 extra boundary_facets outputs; better sort prototypes; templates; cleanup 7 years ago
sort.h 1deb471727 extra boundary_facets outputs; better sort prototypes; templates; cleanup 7 years ago
sort_angles.cpp 2ddb11aa6b Misc. typos 8 years ago
sort_angles.h 53c2b9e8fa missing copyrights 10 years ago
sort_triangles.cpp 22b271aefc remove commented code 7 years ago
sort_triangles.h 945ca3ac82 move opengl functions to separate directories, lots of new templates 10 years ago
sort_vectors_ccw.cpp b6c6db1279 specialization --> instantiation 9 years ago
sort_vectors_ccw.h f72ff756ac olga's recent changes 10 years ago
sortrows.cpp 1deb471727 extra boundary_facets outputs; better sort prototypes; templates; cleanup 7 years ago
sortrows.h 1deb471727 extra boundary_facets outputs; better sort prototypes; templates; cleanup 7 years ago
sparse.cpp 1397a27933 Fix template specializations 8 years ago
sparse.h 2ecd74c82a better templates 9 years ago
sparse_cached.cpp 87520dd493 Use SparseMatrixBase::StorageIndex for Eigen >= 3.3.0 7 years ago
sparse_cached.h 2726464472 Adding 2D version of SCAF for Bijective Maps and a tutorial (#752) 7 years ago
sparse_voxel_grid.cpp b2e8d0b3d3 Sparse grid bfs (#942) 7 years ago
sparse_voxel_grid.h b2e8d0b3d3 Sparse grid bfs (#942) 7 years ago
speye.cpp b6c6db1279 specialization --> instantiation 9 years ago
speye.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
squared_edge_lengths.cpp e3cfbc1541 templates, overloads, rm extra includes, etc. 6 years ago
squared_edge_lengths.h 9698061a02 better templating 9 years ago
stdin_to_temp.cpp b473232452 preprend license header to every file 12 years ago
stdin_to_temp.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
straighten_seams.cpp a9c3b6d50a rename components.[h|cpp] to vertex_components.[h|cpp] 7 years ago
straighten_seams.h 3fe31ec0dc straighten seams 9 years ago
sum.cpp f17f286a0f templates 9 years ago
sum.h 074577bc17 use sparse matrix redux/for each 9 years ago
svd3x3.cpp cce7d90d92 mv SVD to main lib 10 years ago
svd3x3.h cce7d90d92 mv SVD to main lib 10 years ago
svd3x3_avx.cpp b068e63d4f removed double instantiation 10 years ago
svd3x3_avx.h cce7d90d92 mv SVD to main lib 10 years ago
svd3x3_sse.cpp cce7d90d92 mv SVD to main lib 10 years ago
svd3x3_sse.h cce7d90d92 mv SVD to main lib 10 years ago
swept_volume_bounding_box.cpp 36e5b8c423 wrapper for Eigen's buggy LinSpaced 9 years ago
swept_volume_bounding_box.h b00e745985 adding missing copyright/license headers 9 years ago
swept_volume_signed_distance.cpp 0667cbcb2a fix namespace/include order errors 9 years ago
swept_volume_signed_distance.h b00e745985 adding missing copyright/license headers 9 years ago
tan_half_angle.cpp aa0faffe9f pull out tan_half_angle; templates 7 years ago
tan_half_angle.h aa0faffe9f pull out tan_half_angle; templates 7 years ago
tet_tet_adjacency.cpp 10200efa2b Unittests!! (#928) 7 years ago
tet_tet_adjacency.h 31d419e2c0 Tetrahedral adjacenct functions (#835) 7 years ago
topological_hole_fill.cpp ac7fb9913a files should end with newline 7 years ago
topological_hole_fill.h 2726464472 Adding 2D version of SCAF for Bijective Maps and a tutorial (#752) 7 years ago
trackball.cpp b6c6db1279 specialization --> instantiation 9 years ago
trackball.h 8c809663c2 better tempaltes 10 years ago
transpose_blocks.cpp b6c6db1279 specialization --> instantiation 9 years ago
transpose_blocks.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
triangle_fan.cpp e3cfbc1541 templates, overloads, rm extra includes, etc. 6 years ago
triangle_fan.h e3cfbc1541 templates, overloads, rm extra includes, etc. 6 years ago
triangle_triangle_adjacency.cpp 6c3c1a88a2 improve performance for manifold TT 7 years ago
triangle_triangle_adjacency.h 4fec50dcb5 fix templating 7 years ago
triangles_from_strip.cpp b6c6db1279 specialization --> instantiation 9 years ago
triangles_from_strip.h 9522dfd77e generate triangles from a points streaming triangle strip 11 years ago
triangulated_grid.cpp f12cecd9d6 fix buggy assert 7 years ago
triangulated_grid.h 0eb3fa2acb triangulated grid + test 7 years ago
two_axis_valuator_fixed_up.cpp b6c6db1279 specialization --> instantiation 9 years ago
two_axis_valuator_fixed_up.h 8c809663c2 better tempaltes 10 years ago
uniformly_sample_two_manifold.cpp 77b87e622a rm using namespace igl 10 years ago
uniformly_sample_two_manifold.h d06b90a231 comments 9 years ago
unique.cpp 928045da6f Missing template instantiations. 7 years ago
unique.h 606a4a0c88 clean up winding number code. templates 8 years ago
unique_edge_map.cpp 928045da6f Missing template instantiations. 7 years ago
unique_edge_map.h 5a51832959 better doc 6 years ago
unique_rows.cpp 1deb471727 extra boundary_facets outputs; better sort prototypes; templates; cleanup 7 years ago
unique_rows.h 606a4a0c88 clean up winding number code. templates 8 years ago
unique_simplices.cpp f787dcc330 Fix missing template instantiation when compiling with CGAL on Windows. 8 years ago
unique_simplices.h 67cd80a83b PlainObjectBase -> MatrixBase on a lot of inputs 8 years ago
unproject.cpp 1d68023669 templates 9 years ago
unproject.h 1d68023669 templates 9 years ago
unproject_in_mesh.cpp 417501ef15 templates and __1 10 years ago
unproject_in_mesh.h 81d3908f7b unproject onto mesh abstracted away from embree 10 years ago
unproject_onto_mesh.cpp b6c6db1279 specialization --> instantiation 9 years ago
unproject_onto_mesh.h 81d3908f7b unproject onto mesh abstracted away from embree 10 years ago
unproject_ray.cpp dec1ddc168 rm using namespace igl 10 years ago
unproject_ray.h a1e8235f15 expose unproject_in_mesh to main library with default brute force option 10 years ago
unzip_corners.cpp 606a4a0c88 clean up winding number code. templates 8 years ago
unzip_corners.h e287df11ba unzip corners (of an obj-style mesh with attributes) 10 years ago
upsample.cpp b6c6db1279 specialization --> instantiation 9 years ago
upsample.h 19bc318c12 loop, upsample, bug fix + tutorial 9 years ago
vector_area_matrix.cpp 1deb471727 extra boundary_facets outputs; better sort prototypes; templates; cleanup 7 years ago
vector_area_matrix.h cb6570075a correct header guard 9 years ago
verbose.h b473232452 preprend license header to every file 12 years ago
vertex_components.cpp a9c3b6d50a rename components.[h|cpp] to vertex_components.[h|cpp] 7 years ago
vertex_components.h a9c3b6d50a rename components.[h|cpp] to vertex_components.[h|cpp] 7 years ago
vertex_triangle_adjacency.cpp 928045da6f Missing template instantiations. 7 years ago
vertex_triangle_adjacency.h 6c3c1a88a2 improve performance for manifold TT 7 years ago
volume.cpp ab730005e9 template nonsense 7 years ago
volume.h 9698061a02 better templating 9 years ago
voxel_grid.cpp 4f6e28067c better templating 8 years ago
voxel_grid.h 67cd80a83b PlainObjectBase -> MatrixBase on a lot of inputs 8 years ago
winding_number.cpp 2e79bd99de templates 8 years ago
winding_number.h 606a4a0c88 clean up winding number code. templates 8 years ago
writeBF.cpp b00e745985 adding missing copyright/license headers 9 years ago
writeBF.h b00e745985 adding missing copyright/license headers 9 years ago
writeDMAT.cpp 1fe4eb190f Revert "Revert "Marching Tetrahedra (#716)" (#924)" (#925) 7 years ago
writeDMAT.h 8a2fb2a3ec unify code for vectors 9 years ago
writeMESH.cpp 2e79bd99de templates 8 years ago
writeMESH.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
writeOBJ.cpp 2e79bd99de templates 8 years ago
writeOBJ.h f3c4930b69 templates 8 years ago
writeOFF.cpp 339dfbfcab Add explanation in comment 8 years ago
writeOFF.h 33c27124bf OFF color-per-vertex 9 years ago
writePLY.cpp 607148cf72 Misc compilation fixes for Eigen 3.3 compatibility. 7 years ago
writePLY.h 416a0cd915 ply support any vertex/normal/uv/face type 8 years ago
writeSTL.cpp 2e79bd99de templates 8 years ago
writeSTL.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
writeTGF.cpp 77b87e622a rm using namespace igl 10 years ago
writeTGF.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 years ago
writeWRL.cpp 2e79bd99de templates 8 years ago
writeWRL.h c4270a84b2 Write colors to WRL files. 8 years ago
write_triangle_mesh.cpp 2e79bd99de templates 8 years ago
write_triangle_mesh.h d1a2c4e2e8 templates 8 years ago

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"

template
IGL_INLINE bool igl::readMESH(
const std::string mesh_file_name,
std::vector > & V,
std::vector > & T,
std::vector > & F)
{
using namespace std;
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;
}
return igl::readMESH(mesh_file,V,T,F);
}

template
IGL_INLINE bool igl::readMESH(
FILE * mesh_file,
std::vector > & V,
std::vector > & T,
std::vector > & F)
{
using namespace std;
#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)
{
if(fgets(line,LINE_MAX,mesh_file) == NULL)
{
fprintf(stderr, "Error: couldn't find start of .mesh file");
fclose(mesh_file);
return false;
}
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;
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;
}
return readMESH(mesh_file,V,T,F);
}

template
IGL_INLINE bool igl::readMESH(
FILE * mesh_file,
Eigen::PlainObjectBase& V,
Eigen::PlainObjectBase& T,
Eigen::PlainObjectBase& F)
{
using namespace std;
#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;
//}

#ifdef IGL_STATIC_LIBRARY
// Explicit template instantiation
// generated by autoexplicit.sh
template bool igl::readMESH, Eigen::Matrix, Eigen::Matrix >(FILE*, Eigen::PlainObjectBase >&, Eigen::PlainObjectBase >&, Eigen::PlainObjectBase >&);
// generated by autoexplicit.sh
template bool igl::readMESH, Eigen::Matrix, Eigen::Matrix >(FILE*, Eigen::PlainObjectBase >&, Eigen::PlainObjectBase >&, Eigen::PlainObjectBase >&);
// generated by autoexplicit.sh
template bool igl::readMESH, Eigen::Matrix, Eigen::Matrix >(std::basic_string, std::allocator >, Eigen::PlainObjectBase >&, Eigen::PlainObjectBase >&, Eigen::PlainObjectBase >&);
// generated by autoexplicit.sh
template bool igl::readMESH, Eigen::Matrix, Eigen::Matrix >(std::basic_string, std::allocator >, Eigen::PlainObjectBase >&, Eigen::PlainObjectBase >&, Eigen::PlainObjectBase >&);
// generated by autoexplicit.sh
template bool igl::readMESH, Eigen::Matrix, Eigen::Matrix >(std::basic_string, std::allocator >, Eigen::PlainObjectBase >&, Eigen::PlainObjectBase >&, Eigen::PlainObjectBase >&);
// generated by autoexplicit.sh
template bool igl::readMESH, Eigen::Matrix, Eigen::Matrix >(std::basic_string, std::allocator >, Eigen::PlainObjectBase >&, Eigen::PlainObjectBase >&, Eigen::PlainObjectBase >&);
template bool igl::readMESH, Eigen::Matrix, Eigen::Matrix >(std::basic_string, std::allocator >, Eigen::PlainObjectBase >&, Eigen::PlainObjectBase >&, Eigen::PlainObjectBase >&);
template bool igl::readMESH(std::basic_string, std::allocator >, std::vector >, std::allocator > > >&, std::vector >, std::allocator > > >&, std::vector >, std::allocator > > >&);
template bool igl::readMESH, Eigen::Matrix, Eigen::Matrix >(std::basic_string, std::allocator >, Eigen::PlainObjectBase >&, Eigen::PlainObjectBase >&, Eigen::PlainObjectBase >&);
#endif