Daniele Panozzo e1eb91246c Merge branch 'python_bindings' of https://github.com/s-koch/libigl vor 9 Jahren
..
anttweakbar e2d2e0dbea namespace in include guards vor 10 Jahren
bbw b2308818aa Merge commit '756687b56dabf2b3a97122451418a7537c3040bc [formerly 3efe381b5a07304c05b5e78971b40d2019d40f31]' vor 9 Jahren
copyleft 7565188a7c rm __1:: from templates vor 9 Jahren
embree 164943c767 flags were still wrong ... vor 9 Jahren
lim 09ef0d3eb0 namespace issues vor 9 Jahren
matlab 41096114f7 variadic booleans abstracted for matlab interface vor 9 Jahren
mosek 756687b56d igl inline vor 9 Jahren
opengl 4ede7d905f clean up vor 9 Jahren
opengl2 417501ef15 templates and __1 vor 9 Jahren
png 0daf9e09f6 fix for double symbols in stbi vor 9 Jahren
triangle c5e77fa5d7 Added multiple tutorials vor 9 Jahren
viewer a5310f6d9f replace hard coded default gold with material_colors.h vor 9 Jahren
xml f636287570 fix problem travis' clang is have with default constructor vor 9 Jahren
AABB.cpp 09b8afaccf templates and inlines vor 9 Jahren
AABB.h 09b8afaccf templates and inlines vor 9 Jahren
ARAPEnergyType.h f318d4eed6 arap dynamics, better parameters vor 10 Jahren
C_STR.h 3005b455e7 fix for windows vor 10 Jahren
Camera.h d55869971f comments vor 9 Jahren
ConjugateFFSolverData.h 20e0e9a082 comments vor 9 Jahren
EPS.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
EPS.h 20e0e9a082 comments vor 9 Jahren
HalfEdgeIterator.h 20e0e9a082 comments vor 9 Jahren
Hit.h a1e8235f15 expose unproject_in_mesh to main library with default brute force option vor 9 Jahren
IO 78edcb4470 triangle_wrapper -> triangulate vor 11 Jahren
IndexComparison.h 20e0e9a082 comments vor 9 Jahren
MeshBooleanType.h dab8fad5dd separate boolean code to cgal and cork, fix cmake for lib and tutorial vor 9 Jahren
NormalType.h 20e0e9a082 comments vor 9 Jahren
ONE.h 20e0e9a082 comments vor 9 Jahren
PI.h b473232452 preprend license header to every file vor 11 Jahren
REDRUM.h b473232452 preprend license header to every file vor 11 Jahren
STR.h 3005b455e7 fix for windows vor 10 Jahren
Singular_Value_Decomposition_Givens_QR_Factorization_Kernel.hpp cce7d90d92 mv SVD to main lib vor 10 Jahren
Singular_Value_Decomposition_Jacobi_Conjugation_Kernel.hpp cce7d90d92 mv SVD to main lib vor 10 Jahren
Singular_Value_Decomposition_Kernel_Declarations.hpp cce7d90d92 mv SVD to main lib vor 10 Jahren
Singular_Value_Decomposition_Main_Kernel_Body.hpp.REMOVED.git-id cce7d90d92 mv SVD to main lib vor 10 Jahren
Singular_Value_Decomposition_Preamble.hpp 57b3f492ff warnings vor 9 Jahren
SolverStatus.h b473232452 preprend license header to every file vor 11 Jahren
SortableRow.h c39ca7747a fixed many style issues, missing copyrights, inlines vor 11 Jahren
Timer.h d10afaa873 fixed many missing IGL_INLINEs vor 11 Jahren
Viewport.h 20e0e9a082 comments vor 9 Jahren
WindingNumberAABB.h e18ec0daed bug fix, wasn't reseting when growing on a new mesh vor 9 Jahren
WindingNumberMethod.h 20e0e9a082 comments vor 9 Jahren
WindingNumberTree.h 5b15bc74dd far --> is_far for desperate windows compiler vor 9 Jahren
ZERO.h 20e0e9a082 comments vor 9 Jahren
active_set.cpp c3599de866 fixes for python static build vor 9 Jahren
active_set.h 20e0e9a082 comments vor 9 Jahren
adjacency_list.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
adjacency_list.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
adjacency_matrix.cpp 59899eb247 templates vor 9 Jahren
adjacency_matrix.h 69520fbf2e templated vor 9 Jahren
all_edges.cpp 439cc69864 templates vor 10 Jahren
all_edges.h af6efe2123 is vertex manifold vor 10 Jahren
all_pairs_distances.cpp 4a382e039a some performance optimization vor 10 Jahren
all_pairs_distances.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
ambient_occlusion.cpp 328682a5eb templated parallel for vor 9 Jahren
ambient_occlusion.h ef75655a3b expose ambient occlusion without embree vor 9 Jahren
angle_bound_frame_fields.cpp c15cbd783a compilation fixes for VS 2015 vor 9 Jahren
angle_bound_frame_fields.h 24b4807c23 missing _H in two header files vor 9 Jahren
angular_distance.cpp 1b254f02a1 rm using namespace igl vor 10 Jahren
angular_distance.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
any_of.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
any_of.h f0b9c018f1 slice tets and tempaltes vor 10 Jahren
arap.cpp dec1ddc168 rm using namespace igl vor 9 Jahren
arap.h f318d4eed6 arap dynamics, better parameters vor 10 Jahren
arap_dof.cpp 869376e02f removed deprecated use of full( vor 9 Jahren
arap_dof.h cce7d90d92 mv SVD to main lib vor 10 Jahren
arap_linear_block.cpp 1b254f02a1 rm using namespace igl vor 10 Jahren
arap_linear_block.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
arap_rhs.cpp 1b254f02a1 rm using namespace igl vor 10 Jahren
arap_rhs.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
average_onto_faces.cpp 62a1fc9819 moveVF --> average_onto_faces vor 11 Jahren
average_onto_faces.h 62a1fc9819 moveVF --> average_onto_faces vor 11 Jahren
average_onto_vertices.cpp 6f3f5bdabe Merge branch 'master' of https://github.com/schuellc/libigl vor 9 Jahren
average_onto_vertices.h 0ea2eca5d4 Add RowMajor storage order support vor 9 Jahren
avg_edge_length.cpp 869d6a284b instantiations vor 10 Jahren
avg_edge_length.h 344cb9eea3 -Changes to header files to support parsing vor 9 Jahren
axis_angle_to_quat.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
axis_angle_to_quat.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
barycenter.cpp ed6c739eef templates vor 9 Jahren
barycenter.h 0f5aabeca2 tutorial compiling vor 9 Jahren
barycentric_coordinates.cpp 5e0d6b3aff Fixed various minor bugs, added explicit template specifications vor 9 Jahren
barycentric_coordinates.h eee3a7413f extract point-simplex distance and triangle barycentric coordinates from AABB, use MatrixBase for const input params vor 9 Jahren
barycentric_to_global.cpp 5db529c861 mostly template instantiations vor 10 Jahren
barycentric_to_global.h 3cfd194147 barycentric2global --> barycentric_to_global vor 11 Jahren
basename.cpp b473232452 preprend license header to every file vor 11 Jahren
basename.h 18bd747cb4 example in header vor 10 Jahren
bfs_orient.cpp dec1ddc168 rm using namespace igl vor 9 Jahren
bfs_orient.h 98540fdb74 rm boost dependency extra, absorb functions into main library vor 10 Jahren
biharmonic_coordinates.cpp f21ee225a2 Visual studio can't handle {} vor 9 Jahren
biharmonic_coordinates.h 4100b31d41 support for higher-order biharmonic coords vor 10 Jahren
bone_parents.cpp 53c2b9e8fa missing copyrights vor 10 Jahren
bone_parents.h 5e41228487 skeleton building and posing examples vor 10 Jahren
boundary_conditions.cpp b27fa2707b better assertion vor 9 Jahren
boundary_conditions.h 5e41228487 skeleton building and posing examples vor 10 Jahren
boundary_facets.cpp 24b4807c23 missing _H in two header files vor 9 Jahren
boundary_facets.h 24b4807c23 missing _H in two header files vor 9 Jahren
boundary_loop.cpp 6f3f5bdabe Merge branch 'master' of https://github.com/schuellc/libigl vor 9 Jahren
boundary_loop.h 90b8ac464c Replaced boundary_loop by outline_ordered implementation vor 10 Jahren
bounding_box.cpp c975b8f076 templates vor 9 Jahren
bounding_box.h 7f360c14cf bounding box and cdt vor 10 Jahren
bounding_box_diagonal.cpp 945ca3ac82 move opengl functions to separate directories, lots of new templates vor 10 Jahren
bounding_box_diagonal.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
canonical_quaternions.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
canonical_quaternions.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
cat.cpp 9263699f87 faster cat vor 9 Jahren
cat.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
ceil.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
ceil.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
centroid.cpp 5e41228487 skeleton building and posing examples vor 10 Jahren
centroid.h 5e41228487 skeleton building and posing examples vor 10 Jahren
circulation.cpp 6fad412558 decimate with finite cost vor 9 Jahren
circulation.h 7ce75d2528 edge collapsing and linear programs vor 10 Jahren
collapse_edge.cpp 6fad412558 decimate with finite cost vor 9 Jahren
collapse_edge.h ae0cee3c89 updated APIs for edge collapse vor 10 Jahren
collapse_small_triangles.cpp 53c2b9e8fa missing copyrights vor 10 Jahren
collapse_small_triangles.h 6737f53ebc collapse small triangles vor 10 Jahren
colon.cpp dcd81c26e3 Added missing templates to make static build work with gcc vor 9 Jahren
colon.h f976e38f91 faster tri tri adj, unique simplices vor 10 Jahren
column_to_quats.cpp 3ee6fa10ec mouse controller and quaternion io vor 11 Jahren
column_to_quats.h e9d637ef52 - compilation fixes for the tutorials in chapter 4 vor 11 Jahren
columnize.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
columnize.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
comb_cross_field.cpp c15cbd783a compilation fixes for VS 2015 vor 9 Jahren
comb_cross_field.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
comb_frame_field.cpp e5b99abdfa deprecated PlainObjectBase types vor 9 Jahren
comb_frame_field.h 344cb9eea3 -Changes to header files to support parsing vor 9 Jahren
comb_line_field.cpp c15cbd783a compilation fixes for VS 2015 vor 9 Jahren
comb_line_field.h c7f6cff1db fixes from Nico Pietroni on the MIQ pipeline and examples vor 10 Jahren
components.cpp 2dfdea1a3b templates vor 9 Jahren
components.h 98540fdb74 rm boost dependency extra, absorb functions into main library vor 10 Jahren
compute_frame_field_bisectors.cpp e5b99abdfa deprecated PlainObjectBase types vor 9 Jahren
compute_frame_field_bisectors.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
conjugate_frame_fields.cpp 38328367b6 reorganize tutorial cmake, bug fix in static ver. of npoly demo vor 10 Jahren
conjugate_frame_fields.h 24b4807c23 missing _H in two header files vor 9 Jahren
cotmatrix.cpp 8fd80c7bc0 biharmonic coordinates, impl of 'linear subspace design...', templates, overloads vor 10 Jahren
cotmatrix.h 2d6867fe82 ply support vor 10 Jahren
cotmatrix_entries.cpp 1b254f02a1 rm using namespace igl vor 10 Jahren
cotmatrix_entries.h 7f360c14cf bounding box and cdt vor 10 Jahren
covariance_scatter_matrix.cpp 1b254f02a1 rm using namespace igl vor 10 Jahren
covariance_scatter_matrix.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
cross.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
cross.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
cross_field_missmatch.cpp c3599de866 fixes for python static build vor 9 Jahren
cross_field_missmatch.h fb819ab4f7 fixed python compilation error vor 9 Jahren
crouzeix_raviart_massmatrix.cpp 1b254f02a1 rm using namespace igl vor 10 Jahren
crouzeix_raviart_massmatrix.h 5ad035de72 boundaryedges and CR mass matrix vor 10 Jahren
cumsum.cpp 4f99fc5ddd variadic boolean ops vor 9 Jahren
cumsum.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
cut_mesh.cpp c15cbd783a compilation fixes for VS 2015 vor 9 Jahren
cut_mesh.h d32071235f note vor 9 Jahren
cut_mesh_from_singularities.cpp c15cbd783a compilation fixes for VS 2015 vor 9 Jahren
cut_mesh_from_singularities.h 2254bf5990 style vor 9 Jahren
dated_copy.cpp 6f8f988fa5 fixed various windows issues with static library vor 10 Jahren
dated_copy.h 6f8f988fa5 fixed various windows issues with static library vor 10 Jahren
decimate.cpp 6fad412558 decimate with finite cost vor 9 Jahren
decimate.h 6fad412558 decimate with finite cost vor 9 Jahren
deform_skeleton.cpp 53c2b9e8fa missing copyrights vor 10 Jahren
deform_skeleton.h 53c2b9e8fa missing copyrights vor 10 Jahren
deprecated.h 53c2b9e8fa missing copyrights vor 10 Jahren
diag.cpp ded77a69ca bug vor 9 Jahren
diag.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
dihedral_angles.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
dihedral_angles.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
dijkstra.cpp f1808b1ebd Fixes for compilation of static lib on Ubuntu linux. vor 10 Jahren
dijkstra.h 5f795771d7 implementation of integrable polyvector fields (+some templates) vor 10 Jahren
directed_edge_orientations.cpp 945ca3ac82 move opengl functions to separate directories, lots of new templates vor 10 Jahren
directed_edge_orientations.h 708f42e018 dqs example finished vor 11 Jahren
directed_edge_parents.cpp 945ca3ac82 move opengl functions to separate directories, lots of new templates vor 10 Jahren
directed_edge_parents.h 76a662d23f missing directed edge parents file vor 11 Jahren
dirname.cpp b473232452 preprend license header to every file vor 11 Jahren
dirname.h 18bd747cb4 example in header vor 10 Jahren
dot.cpp b473232452 preprend license header to every file vor 11 Jahren
dot.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
dot_row.cpp 4d75e4c13c template specializations for CLANG vor 10 Jahren
dot_row.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
doublearea.cpp 328682a5eb templated parallel for vor 9 Jahren
doublearea.h 8eee88cd05 handle streams of arbitrary dimension triangles vor 9 Jahren
dqs.cpp 945ca3ac82 move opengl functions to separate directories, lots of new templates vor 10 Jahren
dqs.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
edge_collapse_is_valid.cpp 1b254f02a1 rm using namespace igl vor 10 Jahren
edge_collapse_is_valid.h 7ce75d2528 edge collapsing and linear programs vor 10 Jahren
edge_flaps.cpp 7ce75d2528 edge collapsing and linear programs vor 10 Jahren
edge_flaps.h 7ce75d2528 edge collapsing and linear programs vor 10 Jahren
edge_lengths.cpp 328682a5eb templated parallel for vor 9 Jahren
edge_lengths.h a7c4fe3b1c fix documentation vor 9 Jahren
edge_topology.cpp 461e4ccb09 no message vor 10 Jahren
edge_topology.h 1c8bb1d656 Merge branch 'master' of https://github.com/libigl/libigl vor 11 Jahren
edges.cpp 69520fbf2e templated vor 9 Jahren
edges.h 69520fbf2e templated vor 9 Jahren
eigs.cpp c99df40d43 spurious header vor 9 Jahren
eigs.h 761220198f notes vor 10 Jahren
example_fun.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
example_fun.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
exterior_edges.cpp 2282d71554 cleanup warnings vor 9 Jahren
exterior_edges.h 53c2b9e8fa missing copyrights vor 10 Jahren
extract_manifold_patches.cpp c74d89c649 trim with solid mesh vor 9 Jahren
extract_manifold_patches.h c74d89c649 trim with solid mesh vor 9 Jahren
extract_non_manifold_edge_curves.cpp f4a1fa8551 warnings vor 9 Jahren
extract_non_manifold_edge_curves.h 83cd38bfaa Added propagate_winding_numbers(...) vor 9 Jahren
face_areas.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
face_areas.h a7c4fe3b1c fix documentation vor 9 Jahren
face_occurrences.cpp 8fd80c7bc0 biharmonic coordinates, impl of 'linear subspace design...', templates, overloads vor 10 Jahren
face_occurrences.h 2c75b2cf21 typo in face_occurrences name vor 10 Jahren
faces_first.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
faces_first.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
facet_components.cpp 3f7e17b123 strip std::__1 vor 9 Jahren
facet_components.h da91e1ba44 Minor update documentation of facet_components(). vor 9 Jahren
false_barycentric_subdivision.cpp 38328367b6 reorganize tutorial cmake, bug fix in static ver. of npoly demo vor 10 Jahren
false_barycentric_subdivision.h 3b3eddd9a0 fixed template madness in tri_tri vor 10 Jahren
field_local_global_conversions.cpp 5f795771d7 implementation of integrable polyvector fields (+some templates) vor 10 Jahren
field_local_global_conversions.h 5f795771d7 implementation of integrable polyvector fields (+some templates) vor 10 Jahren
file_contents_as_string.cpp 909c4a05ff return overload vor 9 Jahren
file_contents_as_string.h 909c4a05ff return overload vor 9 Jahren
file_dialog_open.cpp 69f1c5f112 fixed a bug concerning load mesh from dialog vor 10 Jahren
file_dialog_open.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
file_dialog_save.cpp 6f8f988fa5 fixed various windows issues with static library vor 10 Jahren
file_dialog_save.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
file_exists.cpp a60d9c69a1 get modifiers, fit rigid 2d, templates vor 10 Jahren
file_exists.h a60d9c69a1 get modifiers, fit rigid 2d, templates vor 10 Jahren
find.cpp 1618c18430 more overloads vor 10 Jahren
find.h 1618c18430 more overloads vor 10 Jahren
find_cross_field_singularities.cpp c3599de866 fixes for python static build vor 9 Jahren
find_cross_field_singularities.h 580c57ed4f Merge branch 'master' of https://github.com/libigl/libigl vor 10 Jahren
fit_plane.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
fit_plane.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
fit_rotations.cpp c21aa6e542 templates vor 9 Jahren
fit_rotations.h 36a1006438 note that fit_rotations may be obsolete vor 10 Jahren
flood_fill.cpp 5e28c11926 mv swept volume from reconfigurables vor 9 Jahren
flood_fill.h 5e28c11926 mv swept volume from reconfigurables vor 9 Jahren
floor.cpp c3599de866 fixes for python static build vor 9 Jahren
floor.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
forward_kinematics.cpp b7157c2898 translation widget vor 9 Jahren
forward_kinematics.h b7157c2898 translation widget vor 9 Jahren
frame_field_deformer.cpp e7af0097b7 cotangent --> cotmatrix_entries vor 11 Jahren
frame_field_deformer.h b1ea555f41 bad path vor 10 Jahren
frame_to_cross_field.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
frame_to_cross_field.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
frustum.cpp ed64cad992 Merge branch 'master' of https://github.com/libigl/libigl vor 10 Jahren
frustum.h a1c8fcb85c templates, viewer opengl code extraction vor 10 Jahren
gaussian_curvature.cpp 5a5ec9adf9 all tutorial examples compile with static lib vor 11 Jahren
gaussian_curvature.h bd57fc27aa no division by area vor 9 Jahren
get_seconds.cpp b473232452 preprend license header to every file vor 11 Jahren
get_seconds.h f976e38f91 faster tri tri adj, unique simplices vor 10 Jahren
get_seconds_hires.cpp b473232452 preprend license header to every file vor 11 Jahren
get_seconds_hires.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
grad.cpp e5b99abdfa deprecated PlainObjectBase types vor 9 Jahren
grad.h e3e4fe9902 changed templating for grad.h, grad.cpp vor 10 Jahren
grid.cpp 5e28c11926 mv swept volume from reconfigurables vor 9 Jahren
grid.h 5e28c11926 mv swept volume from reconfigurables vor 9 Jahren
group_sum_matrix.cpp 945ca3ac82 move opengl functions to separate directories, lots of new templates vor 10 Jahren
group_sum_matrix.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
harmonic.cpp c3599de866 fixes for python static build vor 9 Jahren
harmonic.h 9c4a11f157 bump biharmonic example vor 11 Jahren
harwell_boeing.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
harwell_boeing.h bdeb592dc8 rm unneeded define vor 10 Jahren
hausdorff.cpp 62c8f20d65 hausdorff distance vor 9 Jahren
hausdorff.h 62c8f20d65 hausdorff distance vor 9 Jahren
histc.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
histc.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
hsv_to_rgb.cpp e1eb91246c Merge branch 'python_bindings' of https://github.com/s-koch/libigl vor 9 Jahren
hsv_to_rgb.h 20a3ad28f1 eigen types vor 10 Jahren
igl_inline.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
in_element.cpp 92b29eb15f templates vor 9 Jahren
in_element.h 5e0d6b3aff Fixed various minor bugs, added explicit template specifications vor 9 Jahren
infinite_cost_stopping_condition.cpp ad917ffc5e Fixed namespace problem vor 9 Jahren
infinite_cost_stopping_condition.h 6fad412558 decimate with finite cost vor 9 Jahren
integrable_polyvector_fields.cpp 0bd52535da compilation fixes for VS2015 vor 9 Jahren
integrable_polyvector_fields.h 96dddcc850 tutorial for integrable polyvectors vor 10 Jahren
internal_angles.cpp 328682a5eb templated parallel for vor 9 Jahren
internal_angles.h 013dd64cde angles --> internal_angles vor 10 Jahren
intersect.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
intersect.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
invert_diag.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
invert_diag.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
is_border_vertex.cpp 6f3f5bdabe Merge branch 'master' of https://github.com/schuellc/libigl vor 9 Jahren
is_border_vertex.h ba963582da improved doc vor 10 Jahren
is_boundary_edge.cpp fa3c83873d bug fix vor 10 Jahren
is_boundary_edge.h 5ad035de72 boundaryedges and CR mass matrix vor 10 Jahren
is_dir.cpp b473232452 preprend license header to every file vor 11 Jahren
is_dir.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
is_edge_manifold.cpp 4d75e4c13c template specializations for CLANG vor 10 Jahren
is_edge_manifold.h af6efe2123 is vertex manifold vor 10 Jahren
is_file.cpp b473232452 preprend license header to every file vor 11 Jahren
is_file.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
is_irregular_vertex.cpp 51d92e724a templates, tutorial missing libs vor 10 Jahren
is_irregular_vertex.h 442c8d908c added mesh statistics functions and updated tutorial vor 10 Jahren
is_planar.cpp c39ca7747a fixed many style issues, missing copyrights, inlines vor 11 Jahren
is_planar.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
is_readable.cpp b473232452 preprend license header to every file vor 11 Jahren
is_readable.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
is_sparse.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
is_sparse.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
is_symmetric.cpp 1b254f02a1 rm using namespace igl vor 10 Jahren
is_symmetric.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
is_vertex_manifold.cpp 53c2b9e8fa missing copyrights vor 10 Jahren
is_vertex_manifold.h 9f0396b085 Update the documentation of is_vertex_manifold. vor 9 Jahren
is_writable.cpp b473232452 preprend license header to every file vor 11 Jahren
is_writable.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
jet.cpp dcd81c26e3 Added missing templates to make static build work with gcc vor 9 Jahren
jet.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
launch_medit.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
launch_medit.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
lbs_matrix.cpp c39ca7747a fixed many style issues, missing copyrights, inlines vor 11 Jahren
lbs_matrix.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
limit_faces.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
limit_faces.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
line_field_missmatch.cpp c15cbd783a compilation fixes for VS 2015 vor 9 Jahren
line_field_missmatch.h c7f6cff1db fixes from Nico Pietroni on the MIQ pipeline and examples vor 10 Jahren
line_segment_in_rectangle.cpp 1b254f02a1 rm using namespace igl vor 10 Jahren
line_segment_in_rectangle.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
linprog.cpp 1b254f02a1 rm using namespace igl vor 10 Jahren
linprog.h 7ce75d2528 edge collapsing and linear programs vor 10 Jahren
list_to_matrix.cpp 0a1685f564 __1 removal vor 9 Jahren
list_to_matrix.h 6f3f5bdabe Merge branch 'master' of https://github.com/schuellc/libigl vor 9 Jahren
local_basis.cpp 679512e971 templates vor 10 Jahren
local_basis.h 344cb9eea3 -Changes to header files to support parsing vor 9 Jahren
look_at.cpp 53c2b9e8fa missing copyrights vor 10 Jahren
look_at.h a1c8fcb85c templates, viewer opengl code extraction vor 10 Jahren
lscm.cpp 0ff5db14a6 better doc vor 10 Jahren
lscm.h 3a82db0c88 clarify ref vor 9 Jahren
map_vertices_to_circle.cpp 1d76192dc3 removed unused include vor 10 Jahren
map_vertices_to_circle.h 344cb9eea3 -Changes to header files to support parsing vor 9 Jahren
massmatrix.cpp 14cba5359b templates vor 9 Jahren
massmatrix.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
mat_max.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
mat_max.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
mat_min.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
mat_min.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
mat_to_quat.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
mat_to_quat.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
material_colors.h ae29184e91 draw skeleton with colors vor 11 Jahren
matlab_format.cpp f1808b1ebd Fixes for compilation of static lib on Ubuntu linux. vor 10 Jahren
matlab_format.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
matrix_to_list.cpp c3599de866 fixes for python static build vor 9 Jahren
matrix_to_list.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
max_faces_stopping_condition.cpp 401b3a30dd dangling ref vor 9 Jahren
max_faces_stopping_condition.h 0c4d3c823c create copyleft, mc, quadprog, prog hulls vor 9 Jahren
max_size.cpp 0199faeaa7 templates vor 10 Jahren
max_size.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
median.cpp 1b254f02a1 rm using namespace igl vor 10 Jahren
median.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
min_quad_dense.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
min_quad_dense.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
min_quad_with_fixed.cpp dcd81c26e3 Added missing templates to make static build work with gcc vor 9 Jahren
min_quad_with_fixed.h 8fd80c7bc0 biharmonic coordinates, impl of 'linear subspace design...', templates, overloads vor 10 Jahren
min_size.cpp 0199faeaa7 templates vor 10 Jahren
min_size.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
mod.cpp c9be59b49f fix some bad uses of Eigen::PlainObjectBase vor 9 Jahren
mod.h c9be59b49f fix some bad uses of Eigen::PlainObjectBase vor 9 Jahren
mode.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
mode.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
mvc.cpp ed153a8b84 abs warning vor 10 Jahren
mvc.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
n_polyvector.cpp c15cbd783a compilation fixes for VS 2015 vor 9 Jahren
n_polyvector.h 81238fbfd2 - cleaned up polyvector field example vor 11 Jahren
n_polyvector_general.cpp c15cbd783a compilation fixes for VS 2015 vor 9 Jahren
n_polyvector_general.h fc424b9b5c general polyvector field vor 11 Jahren
nchoosek.cpp 4f99fc5ddd variadic boolean ops vor 9 Jahren
nchoosek.h 4f99fc5ddd variadic boolean ops vor 9 Jahren
next_filename.cpp 3afe7f3444 templates vor 10 Jahren
next_filename.h 8e6f510b7b next filename, draw quad meshes, template specializations, vor 10 Jahren
normal_derivative.cpp 1b63927478 bug resize/reserve vor 9 Jahren
normal_derivative.h 8fd80c7bc0 biharmonic coordinates, impl of 'linear subspace design...', templates, overloads vor 10 Jahren
normalize_quat.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
normalize_quat.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
normalize_row_lengths.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
normalize_row_lengths.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
normalize_row_sums.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
normalize_row_sums.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
null.cpp 9354cc1124 null space vor 10 Jahren
null.h 9354cc1124 null space vor 10 Jahren
on_boundary.cpp f57dd67e59 fixed static build for the tutorials vor 10 Jahren
on_boundary.h 8fd80c7bc0 biharmonic coordinates, impl of 'linear subspace design...', templates, overloads vor 10 Jahren
orient_outward.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
orient_outward.h 63e134577a manifold_patches --> orientable_patches vor 11 Jahren
orientable_patches.cpp 2dfdea1a3b templates vor 9 Jahren
orientable_patches.h 2dfdea1a3b templates vor 9 Jahren
orth.cpp b473232452 preprend license header to every file vor 11 Jahren
orth.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
ortho.cpp 53c2b9e8fa missing copyrights vor 10 Jahren
ortho.h a1c8fcb85c templates, viewer opengl code extraction vor 10 Jahren
outer_element.cpp 2d7ac4173d Merge remote-tracking branch 'upstream/master' vor 9 Jahren
outer_element.h 05cf35b4d6 Minor update to documentation and rename exterior* to outer*. vor 9 Jahren
parallel_for.h d449dd19c3 force serial macro vor 9 Jahren
parallel_transport_angles.cpp 5f795771d7 implementation of integrable polyvector fields (+some templates) vor 10 Jahren
parallel_transport_angles.h 5f795771d7 implementation of integrable polyvector fields (+some templates) vor 10 Jahren
partition.cpp c39ca7747a fixed many style issues, missing copyrights, inlines vor 11 Jahren
partition.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
parula.cpp 9e91b44667 Finalized tutorial 701, added missing template vor 9 Jahren
parula.h 5e0d6b3aff Fixed various minor bugs, added explicit template specifications vor 9 Jahren
path_to_executable.cpp 6f8f988fa5 fixed various windows issues with static library vor 10 Jahren
path_to_executable.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
pathinfo.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
pathinfo.h 8e2e36c12a examples vor 10 Jahren
per_corner_normals.cpp f4ab9d2cd1 compiles after rm PlainObjectBase uses vor 9 Jahren
per_corner_normals.h f4ab9d2cd1 compiles after rm PlainObjectBase uses vor 9 Jahren
per_edge_normals.cpp 5e0d6b3aff Fixed various minor bugs, added explicit template specifications vor 9 Jahren
per_edge_normals.h 5e0d6b3aff Fixed various minor bugs, added explicit template specifications vor 9 Jahren
per_face_normals.cpp c3599de866 fixes for python static build vor 9 Jahren
per_face_normals.h 02ab01c0ac stable face normals vor 10 Jahren
per_vertex_attribute_smoothing.cpp 5db529c861 mostly template instantiations vor 10 Jahren
per_vertex_attribute_smoothing.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
per_vertex_normals.cpp 328682a5eb templated parallel for vor 9 Jahren
per_vertex_normals.h af6efe2123 is vertex manifold vor 10 Jahren
piecewise_constant_winding_number.cpp 737ec00d49 __1 in templates vor 9 Jahren
piecewise_constant_winding_number.h e6536d3355 boolean input validation as stand-alone functions vor 9 Jahren
planarize_quad_mesh.cpp 945ca3ac82 move opengl functions to separate directories, lots of new templates vor 10 Jahren
planarize_quad_mesh.h 53c2b9e8fa missing copyrights vor 10 Jahren
ply.h.REMOVED.git-id 2700d48a06 double free on ply read/write vor 9 Jahren
point_in_circle.cpp b473232452 preprend license header to every file vor 11 Jahren
point_in_circle.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
point_in_poly.cpp b473232452 preprend license header to every file vor 11 Jahren
point_in_poly.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
point_mesh_squared_distance.cpp 0cb9c64a31 missing template specialization vor 9 Jahren
point_mesh_squared_distance.h 5e0d6b3aff Fixed various minor bugs, added explicit template specifications vor 9 Jahren
point_simplex_squared_distance.cpp 70693a85ba small speed up and code reogranization for point/mesh squared distance vor 9 Jahren
point_simplex_squared_distance.h c3ea0bfa0b init calls deinit vor 9 Jahren
polar_dec.cpp e5b99abdfa deprecated PlainObjectBase types vor 9 Jahren
polar_dec.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
polar_svd.cpp 5e0d6b3aff Fixed various minor bugs, added explicit template specifications vor 9 Jahren
polar_svd.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
polar_svd3x3.cpp 4d773331ee warnings vor 9 Jahren
polar_svd3x3.h cce7d90d92 mv SVD to main lib vor 10 Jahren
polygon_mesh_to_triangle_mesh.cpp 11393f3c10 templates vor 10 Jahren
polygon_mesh_to_triangle_mesh.h 8e6f510b7b next filename, draw quad meshes, template specializations, vor 10 Jahren
polyroots.cpp 38328367b6 reorganize tutorial cmake, bug fix in static ver. of npoly demo vor 10 Jahren
polyroots.h 34d4f8e5aa conjugate example, fixed some #HEADER_ONLY errors vor 11 Jahren
polyvector_field_comb_from_matchings_and_cuts.cpp d33a4b72b6 fixed triangle_triangle prototype vor 9 Jahren
polyvector_field_comb_from_matchings_and_cuts.h 5f795771d7 implementation of integrable polyvector fields (+some templates) vor 10 Jahren
polyvector_field_cut_mesh_with_singularities.cpp d33a4b72b6 fixed triangle_triangle prototype vor 9 Jahren
polyvector_field_cut_mesh_with_singularities.h 5f795771d7 implementation of integrable polyvector fields (+some templates) vor 10 Jahren
polyvector_field_matchings.cpp c15cbd783a compilation fixes for VS 2015 vor 9 Jahren
polyvector_field_matchings.h 5f795771d7 implementation of integrable polyvector fields (+some templates) vor 10 Jahren
polyvector_field_poisson_reconstruction.cpp 5f795771d7 implementation of integrable polyvector fields (+some templates) vor 10 Jahren
polyvector_field_poisson_reconstruction.h 5f795771d7 implementation of integrable polyvector fields (+some templates) vor 10 Jahren
polyvector_field_singularities_from_matchings.cpp d33a4b72b6 fixed triangle_triangle prototype vor 9 Jahren
polyvector_field_singularities_from_matchings.h 5f795771d7 implementation of integrable polyvector fields (+some templates) vor 10 Jahren
principal_curvature.cpp c3599de866 fixes for python static build vor 9 Jahren
principal_curvature.h 344cb9eea3 -Changes to header files to support parsing vor 9 Jahren
print_ijv.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
print_ijv.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
print_vector.cpp 4372f57c55 plot_vector --> print_vector vor 11 Jahren
print_vector.h 4372f57c55 plot_vector --> print_vector vor 11 Jahren
procrustes.cpp 5db529c861 mostly template instantiations vor 10 Jahren
procrustes.h 6e2c0ff218 bug in procrustes templating vor 10 Jahren
project.cpp 1f05d754eb many point project vor 9 Jahren
project.h 1f05d754eb many point project vor 9 Jahren
project_isometrically_to_plane.cpp 53c2b9e8fa missing copyrights vor 10 Jahren
project_isometrically_to_plane.h e7f4b0154a plane_project --> project_isometrically_to_plane vor 11 Jahren
project_to_line.cpp c21aa6e542 templates vor 9 Jahren
project_to_line.h 70693a85ba small speed up and code reogranization for point/mesh squared distance vor 9 Jahren
project_to_line_segment.cpp c21aa6e542 templates vor 9 Jahren
project_to_line_segment.h 70693a85ba small speed up and code reogranization for point/mesh squared distance vor 9 Jahren
pseudonormal_test.cpp eee3a7413f extract point-simplex distance and triangle barycentric coordinates from AABB, use MatrixBase for const input params vor 9 Jahren
pseudonormal_test.h 7af1fa6964 pseudonormal test and signed distance in 2D vor 9 Jahren
quad_planarity.cpp 53c2b9e8fa missing copyrights vor 10 Jahren
quad_planarity.h 53c2b9e8fa missing copyrights vor 10 Jahren
quat_conjugate.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
quat_conjugate.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
quat_mult.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
quat_mult.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
quat_to_axis_angle.cpp 46c56ae75a fixing IGL_NO_HEADER vor 9 Jahren
quat_to_axis_angle.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
quat_to_mat.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
quat_to_mat.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
quats_to_column.cpp 3ee6fa10ec mouse controller and quaternion io vor 11 Jahren
quats_to_column.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
random_dir.cpp 62521f0d2c fix for clang, enabled embree build by default for python bindings vor 9 Jahren
random_dir.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
random_points_on_mesh.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
random_points_on_mesh.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
random_quaternion.cpp 772efbdbf9 use shoemake algorithm vor 9 Jahren
random_quaternion.h 53c2b9e8fa missing copyrights vor 10 Jahren
randperm.cpp 2dfdea1a3b templates vor 9 Jahren
randperm.h c9be59b49f fix some bad uses of Eigen::PlainObjectBase vor 9 Jahren
ray_box_intersect.cpp ca0d00c7ef missing include vor 9 Jahren
ray_box_intersect.h 0cc5a8ed69 minor changes with no effect to AABB ray vor 9 Jahren
ray_mesh_intersect.cpp 1c11889105 done testing vor 9 Jahren
ray_mesh_intersect.h eee3a7413f extract point-simplex distance and triangle barycentric coordinates from AABB, use MatrixBase for const input params vor 9 Jahren
ray_sphere_intersect.cpp 945ca3ac82 move opengl functions to separate directories, lots of new templates vor 10 Jahren
ray_sphere_intersect.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
raytri.c a1e8235f15 expose unproject_in_mesh to main library with default brute force option vor 9 Jahren
readBF.cpp 417501ef15 templates and __1 vor 9 Jahren
readBF.h 147f7d62d0 proper bf support vor 9 Jahren
readCSV.cpp 77b87e622a rm using namespace igl vor 10 Jahren
readCSV.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
readDMAT.cpp 9cdd504b3c vs2015 fixes in cmake file vor 9 Jahren
readDMAT.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
readMESH.cpp 32e2505faf Fixed wrong template specification vor 9 Jahren
readMESH.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
readNODE.cpp 77b87e622a rm using namespace igl vor 10 Jahren
readNODE.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
readOBJ.cpp 1eff383476 handle negative indices vor 9 Jahren
readOBJ.h dcd8c80fbc remove duplicated readOBJPoly and match ordering of readOBJ eigen version with vector vor 10 Jahren
readOFF.cpp c3599de866 fixes for python static build vor 9 Jahren
readOFF.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
readPLY.cpp 2700d48a06 double free on ply read/write vor 9 Jahren
readPLY.h d38b91d47d VF reader vor 10 Jahren
readSTL.cpp cd90cb5ead much more robust stl reader vor 9 Jahren
readSTL.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
readTGF.cpp 77b87e622a rm using namespace igl vor 10 Jahren
readTGF.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
readWRL.cpp 945ca3ac82 move opengl functions to separate directories, lots of new templates vor 10 Jahren
readWRL.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
read_triangle_mesh.cpp df0e402d4e V is always #V by 3 vor 9 Jahren
read_triangle_mesh.h d13d3163e1 universal write, tempaltes vor 10 Jahren
remove_duplicate_vertices.cpp 8d3886d06a rm old comments vor 9 Jahren
remove_duplicate_vertices.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
remove_duplicates.cpp 69808310c1 removeDuplicates --> remove_duplicates vor 11 Jahren
remove_duplicates.h 69808310c1 removeDuplicates --> remove_duplicates vor 11 Jahren
remove_unreferenced.cpp 0f5aabeca2 tutorial compiling vor 9 Jahren
remove_unreferenced.h ef69b90899 better overloads vor 10 Jahren
reorder.cpp 439cc69864 templates vor 10 Jahren
reorder.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
repdiag.cpp eac13b6110 faster repdiag vor 9 Jahren
repdiag.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
repmat.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
repmat.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
resolve_duplicated_faces.cpp f687064342 Added missing templates vor 9 Jahren
resolve_duplicated_faces.h f9ced09c24 merge vor 9 Jahren
rgb_to_hsv.cpp feab73fe15 templates and prototypes vor 10 Jahren
rgb_to_hsv.h 20a3ad28f1 eigen types vor 10 Jahren
rotate_by_quat.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
rotate_by_quat.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
rotate_vectors.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
rotate_vectors.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
rotation_matrix_from_directions.cpp 2d42198b19 fix style, rm unused parameter vor 9 Jahren
rotation_matrix_from_directions.h 2d42198b19 fix style, rm unused parameter vor 9 Jahren
round.cpp 12a25321d2 missing std:: vor 9 Jahren
round.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
rows_to_matrix.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
rows_to_matrix.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
sample_edges.cpp b473232452 preprend license header to every file vor 11 Jahren
sample_edges.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
serialize.h 0101af8e6b Update serialize.h vor 9 Jahren
setdiff.cpp c3599de866 fixes for python static build vor 9 Jahren
setdiff.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
signed_distance.cpp dec1ddc168 rm using namespace igl vor 9 Jahren
signed_distance.h 7af1fa6964 pseudonormal test and signed distance in 2D vor 9 Jahren
simplify_polyhedron.cpp d243857031 fixed self intersection issues vor 9 Jahren
simplify_polyhedron.h 4123794f61 simplify polyhedron vor 9 Jahren
slice.cpp f687064342 Added missing templates vor 9 Jahren
slice.h c9be59b49f fix some bad uses of Eigen::PlainObjectBase vor 9 Jahren
slice_into.cpp c3599de866 fixes for python static build vor 9 Jahren
slice_into.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
slice_mask.cpp 85db3b80ff Merge branch 'master' of https://github.com/libigl/libigl vor 9 Jahren
slice_mask.h c9be59b49f fix some bad uses of Eigen::PlainObjectBase vor 9 Jahren
slice_tets.cpp 5e0d6b3aff Fixed various minor bugs, added explicit template specifications vor 9 Jahren
slice_tets.h f0b9c018f1 slice tets and tempaltes vor 10 Jahren
snap_points.cpp 2dfdea1a3b templates vor 9 Jahren
snap_points.h 2dfdea1a3b templates vor 9 Jahren
snap_to_canonical_view_quat.cpp 945ca3ac82 move opengl functions to separate directories, lots of new templates vor 10 Jahren
snap_to_canonical_view_quat.h 8c809663c2 better tempaltes vor 10 Jahren
snap_to_fixed_up.cpp b7157c2898 translation widget vor 9 Jahren
snap_to_fixed_up.h 6d578a7133 key usage in viewer vor 9 Jahren
sort.cpp 328682a5eb templated parallel for vor 9 Jahren
sort.h 58f09a919c missing sort header vor 9 Jahren
sort_angles.cpp 72c6004123 merge: vor 10 Jahren
sort_angles.h 53c2b9e8fa missing copyrights vor 10 Jahren
sort_triangles.cpp 945ca3ac82 move opengl functions to separate directories, lots of new templates vor 10 Jahren
sort_triangles.h 945ca3ac82 move opengl functions to separate directories, lots of new templates vor 10 Jahren
sort_vectors_ccw.cpp 5f795771d7 implementation of integrable polyvector fields (+some templates) vor 10 Jahren
sort_vectors_ccw.h 0bd52535da compilation fixes for VS2015 vor 9 Jahren
sortrows.cpp c3599de866 fixes for python static build vor 9 Jahren
sortrows.h c980d09b99 bug fix in boolean, first attempt to handle co-planar facets correctly vor 10 Jahren
sparse.cpp 3705ff1959 small mac fixes for the static build vor 10 Jahren
sparse.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
speye.cpp 38328367b6 reorganize tutorial cmake, bug fix in static ver. of npoly demo vor 10 Jahren
speye.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
stdin_to_temp.cpp b473232452 preprend license header to every file vor 11 Jahren
stdin_to_temp.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
sum.cpp c3745c0f63 added functions definitions vor 9 Jahren
sum.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
svd3x3.cpp cce7d90d92 mv SVD to main lib vor 10 Jahren
svd3x3.h cce7d90d92 mv SVD to main lib vor 10 Jahren
svd3x3_avx.cpp b068e63d4f removed double instantiation vor 10 Jahren
svd3x3_avx.h cce7d90d92 mv SVD to main lib vor 10 Jahren
svd3x3_sse.cpp cce7d90d92 mv SVD to main lib vor 10 Jahren
svd3x3_sse.h cce7d90d92 mv SVD to main lib vor 10 Jahren
swept_volume_bounding_box.cpp 5e28c11926 mv swept volume from reconfigurables vor 9 Jahren
swept_volume_bounding_box.h 5e28c11926 mv swept volume from reconfigurables vor 9 Jahren
swept_volume_signed_distance.cpp 83cea76398 comment about filling in nans vor 9 Jahren
swept_volume_signed_distance.h 5e28c11926 mv swept volume from reconfigurables vor 9 Jahren
trackball.cpp 945ca3ac82 move opengl functions to separate directories, lots of new templates vor 10 Jahren
trackball.h 8c809663c2 better tempaltes vor 10 Jahren
transpose_blocks.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
transpose_blocks.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
triangle_fan.cpp 53c2b9e8fa missing copyrights vor 10 Jahren
triangle_fan.h 53c2b9e8fa missing copyrights vor 10 Jahren
triangle_triangle_adjacency.cpp 328682a5eb templated parallel for vor 9 Jahren
triangle_triangle_adjacency.h d33a4b72b6 fixed triangle_triangle prototype vor 9 Jahren
triangles_from_strip.cpp 53c2b9e8fa missing copyrights vor 10 Jahren
triangles_from_strip.h 9522dfd77e generate triangles from a points streaming triangle strip vor 10 Jahren
two_axis_valuator_fixed_up.cpp 945ca3ac82 move opengl functions to separate directories, lots of new templates vor 10 Jahren
two_axis_valuator_fixed_up.h 8c809663c2 better tempaltes vor 10 Jahren
uniformly_sample_two_manifold.cpp 77b87e622a rm using namespace igl vor 10 Jahren
uniformly_sample_two_manifold.h d06b90a231 comments vor 9 Jahren
unique.cpp 0daf9e09f6 fix for double symbols in stbi vor 9 Jahren
unique.h cda229c05b added 303 LaplaceEquation vor 9 Jahren
unique_edge_map.cpp 0daf9e09f6 fix for double symbols in stbi vor 9 Jahren
unique_edge_map.h 53c2b9e8fa missing copyrights vor 10 Jahren
unique_simplices.cpp 328682a5eb templated parallel for vor 9 Jahren
unique_simplices.h bae1c9582d per edge normals vor 11 Jahren
unproject.cpp 2dfdea1a3b templates vor 9 Jahren
unproject.h 2dfdea1a3b templates vor 9 Jahren
unproject_in_mesh.cpp 417501ef15 templates and __1 vor 9 Jahren
unproject_in_mesh.h 81d3908f7b unproject onto mesh abstracted away from embree vor 9 Jahren
unproject_onto_mesh.cpp c5e77fa5d7 Added multiple tutorials vor 9 Jahren
unproject_onto_mesh.h 81d3908f7b unproject onto mesh abstracted away from embree vor 9 Jahren
unproject_ray.cpp dec1ddc168 rm using namespace igl vor 9 Jahren
unproject_ray.h a1e8235f15 expose unproject_in_mesh to main library with default brute force option vor 9 Jahren
unzip_corners.cpp e287df11ba unzip corners (of an obj-style mesh with attributes) vor 9 Jahren
unzip_corners.h e287df11ba unzip corners (of an obj-style mesh with attributes) vor 9 Jahren
upsample.cpp 09b8afaccf templates and inlines vor 9 Jahren
upsample.h f09ba4892c note about manifoldness assumption vor 10 Jahren
vector_area_matrix.cpp 54df8bc1df boundary_vertices_sorted --> boundary_loop vor 11 Jahren
vector_area_matrix.h 77260d4aac areamatrix --> vector_area_matrix vor 11 Jahren
verbose.h b473232452 preprend license header to every file vor 11 Jahren
vertex_triangle_adjacency.cpp 6f3f5bdabe Merge branch 'master' of https://github.com/schuellc/libigl vor 9 Jahren
vertex_triangle_adjacency.h af6efe2123 is vertex manifold vor 10 Jahren
volume.cpp e5b99abdfa deprecated PlainObjectBase types vor 9 Jahren
volume.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
voxel_grid.cpp 5e28c11926 mv swept volume from reconfigurables vor 9 Jahren
voxel_grid.h 5e28c11926 mv swept volume from reconfigurables vor 9 Jahren
winding_number.cpp a2a82e79b3 linux compilation fixes vor 9 Jahren
winding_number.h 53c2b9e8fa missing copyrights vor 10 Jahren
writeBF.cpp 417501ef15 templates and __1 vor 9 Jahren
writeBF.h 147f7d62d0 proper bf support vor 9 Jahren
writeDMAT.cpp c975b8f076 templates vor 9 Jahren
writeDMAT.h af6efe2123 is vertex manifold vor 10 Jahren
writeMESH.cpp 0a1685f564 __1 removal vor 9 Jahren
writeMESH.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
writeOBJ.cpp 4f5d235126 __1:: vor 9 Jahren
writeOBJ.h 2de83c371d improved doc and simpler code vor 10 Jahren
writeOFF.cpp 4f5d235126 __1:: vor 9 Jahren
writeOFF.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
writePLY.cpp 4f5d235126 __1:: vor 9 Jahren
writePLY.h 8692dd8258 ply duplicate symbol issues vor 10 Jahren
writeSTL.cpp 0a1685f564 __1 removal vor 9 Jahren
writeSTL.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
writeTGF.cpp 77b87e622a rm using namespace igl vor 10 Jahren
writeTGF.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY vor 11 Jahren
writeWRL.cpp 0a1685f564 __1 removal vor 9 Jahren
writeWRL.h 53c2b9e8fa missing copyrights vor 10 Jahren
write_triangle_mesh.cpp 0a1685f564 __1 removal vor 9 Jahren
write_triangle_mesh.h d13d3163e1 universal write, tempaltes vor 10 Jahren

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

#ifdef IGL_STATIC_LIBRARY
// 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 >&);
// 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 > > >&);
#endif