Alec Jacobson 5a63323d51 unnecessary includes 8 роки тому
..
anttweakbar e2d2e0dbea namespace in include guards 10 роки тому
copyleft 5a63323d51 unnecessary includes 8 роки тому
embree 164943c767 flags were still wrong ... 9 роки тому
lim 09ef0d3eb0 namespace issues 9 роки тому
matlab 41096114f7 variadic booleans abstracted for matlab interface 9 роки тому
mosek c76993c791 move bbw with active set to main lib, rm bbw extra, create mosek::bbw 8 роки тому
opengl 4ede7d905f clean up 9 роки тому
opengl2 417501ef15 templates and __1 9 роки тому
png a9ba6a1083 [bug] fix size of data 9 роки тому
triangle c84d2e1d45 Fixed indentation; cleaned up memory for markers 9 роки тому
viewer e452ad7419 Merge branch 'master' of github.com:libigl/libigl into alecjacobson 8 роки тому
xml c41b1527f4 Minor update to tinyxml2 enum. 9 роки тому
AABB.cpp 5a63323d51 unnecessary includes 8 роки тому
AABB.h 4c271ff5cf better documentation 8 роки тому
ARAPEnergyType.h f318d4eed6 arap dynamics, better parameters 10 роки тому
C_STR.h 3005b455e7 fix for windows 10 роки тому
Camera.h d55869971f comments 9 роки тому
ConjugateFFSolverData.h 9a7c121ba6 conjugate tutorial seems to be broken, made some changes but not fixed yet 9 роки тому
EPS.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
EPS.h 20e0e9a082 comments 10 роки тому
HalfEdgeIterator.h 20e0e9a082 comments 10 роки тому
Hit.h a1e8235f15 expose unproject_in_mesh to main library with default brute force option 9 роки тому
IO 78edcb4470 triangle_wrapper -> triangulate 11 роки тому
IndexComparison.h 20e0e9a082 comments 10 роки тому
MeshBooleanType.h dab8fad5dd separate boolean code to cgal and cork, fix cmake for lib and tutorial 9 роки тому
NormalType.h 20e0e9a082 comments 10 роки тому
ONE.h 20e0e9a082 comments 10 роки тому
PI.h b473232452 preprend license header to every file 11 роки тому
REDRUM.h b473232452 preprend license header to every file 11 роки тому
STR.h 3005b455e7 fix for windows 10 роки тому
Singular_Value_Decomposition_Givens_QR_Factorization_Kernel.hpp cce7d90d92 mv SVD to main lib 10 роки тому
Singular_Value_Decomposition_Jacobi_Conjugation_Kernel.hpp cce7d90d92 mv SVD to main lib 10 роки тому
Singular_Value_Decomposition_Kernel_Declarations.hpp cce7d90d92 mv SVD to main lib 10 роки тому
Singular_Value_Decomposition_Main_Kernel_Body.hpp.REMOVED.git-id cce7d90d92 mv SVD to main lib 10 роки тому
Singular_Value_Decomposition_Preamble.hpp 57b3f492ff warnings 9 роки тому
SolverStatus.h b473232452 preprend license header to every file 11 роки тому
SortableRow.h c39ca7747a fixed many style issues, missing copyrights, inlines 11 роки тому
Timer.h f6dd78f80f Bugfix: NULL not declared 8 роки тому
Viewport.h 20e0e9a082 comments 10 роки тому
WindingNumberAABB.h e18ec0daed bug fix, wasn't reseting when growing on a new mesh 9 роки тому
WindingNumberMethod.h 20e0e9a082 comments 10 роки тому
WindingNumberTree.h 5b15bc74dd far --> is_far for desperate windows compiler 9 роки тому
ZERO.h 20e0e9a082 comments 10 роки тому
active_set.cpp 5a63323d51 unnecessary includes 8 роки тому
active_set.h 20e0e9a082 comments 10 роки тому
adjacency_list.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
adjacency_list.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
adjacency_matrix.cpp 59899eb247 templates 9 роки тому
adjacency_matrix.h 69520fbf2e templated 9 роки тому
all_edges.cpp b00e745985 adding missing copyright/license headers 8 роки тому
all_edges.h af6efe2123 is vertex manifold 10 роки тому
all_pairs_distances.cpp 4a382e039a some performance optimization 10 роки тому
all_pairs_distances.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
ambient_occlusion.cpp 328682a5eb templated parallel for 9 роки тому
ambient_occlusion.h ef75655a3b expose ambient occlusion without embree 9 роки тому
angle_bound_frame_fields.cpp 97bf3c6fb5 PlainObjectBase objects should not be declared 8 роки тому
angle_bound_frame_fields.h 24b4807c23 missing _H in two header files 9 роки тому
angular_distance.cpp 1b254f02a1 rm using namespace igl 10 роки тому
angular_distance.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
any_of.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
any_of.h f0b9c018f1 slice tets and tempaltes 10 роки тому
arap.cpp 97bf3c6fb5 PlainObjectBase objects should not be declared 8 роки тому
arap.h f318d4eed6 arap dynamics, better parameters 10 роки тому
arap_dof.cpp 9202f71067 change comment in templates so that autoexplicit works better 8 роки тому
arap_dof.h cce7d90d92 mv SVD to main lib 10 роки тому
arap_linear_block.cpp 1b254f02a1 rm using namespace igl 10 роки тому
arap_linear_block.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
arap_rhs.cpp 1b254f02a1 rm using namespace igl 10 роки тому
arap_rhs.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
average_onto_faces.cpp 62a1fc9819 moveVF --> average_onto_faces 11 роки тому
average_onto_faces.h 62a1fc9819 moveVF --> average_onto_faces 11 роки тому
average_onto_vertices.cpp 6f3f5bdabe Merge branch 'master' of https://github.com/schuellc/libigl 9 роки тому
average_onto_vertices.h 0ea2eca5d4 Add RowMajor storage order support 9 роки тому
avg_edge_length.cpp 869d6a284b instantiations 11 роки тому
avg_edge_length.h 344cb9eea3 -Changes to header files to support parsing 9 роки тому
axis_angle_to_quat.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
axis_angle_to_quat.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
barycenter.cpp 9202f71067 change comment in templates so that autoexplicit works better 8 роки тому
barycenter.h 0f5aabeca2 tutorial compiling 9 роки тому
barycentric_coordinates.cpp 5e0d6b3aff Fixed various minor bugs, added explicit template specifications 9 роки тому
barycentric_coordinates.h eee3a7413f extract point-simplex distance and triangle barycentric coordinates from AABB, use MatrixBase for const input params 9 роки тому
barycentric_to_global.cpp 5db529c861 mostly template instantiations 10 роки тому
barycentric_to_global.h 3cfd194147 barycentric2global --> barycentric_to_global 11 роки тому
basename.cpp b473232452 preprend license header to every file 11 роки тому
basename.h 18bd747cb4 example in header 10 роки тому
bbw.cpp f0f0f1b30b missing mutex include 8 роки тому
bbw.h c76993c791 move bbw with active set to main lib, rm bbw extra, create mosek::bbw 8 роки тому
bfs_orient.cpp dec1ddc168 rm using namespace igl 9 роки тому
bfs_orient.h 98540fdb74 rm boost dependency extra, absorb functions into main library 10 роки тому
biharmonic_coordinates.cpp f21ee225a2 Visual studio can't handle {} 10 роки тому
biharmonic_coordinates.h 4100b31d41 support for higher-order biharmonic coords 10 роки тому
bone_parents.cpp 53c2b9e8fa missing copyrights 10 роки тому
bone_parents.h 5e41228487 skeleton building and posing examples 11 роки тому
boundary_conditions.cpp b27fa2707b better assertion 9 роки тому
boundary_conditions.h b82ea91d7d better doc 8 роки тому
boundary_facets.cpp 97bf3c6fb5 PlainObjectBase objects should not be declared 8 роки тому
boundary_facets.h 24b4807c23 missing _H in two header files 9 роки тому
boundary_loop.cpp 3cf86f1a78 Bugfix: boundary_loop crash 8 роки тому
boundary_loop.h 90b8ac464c Replaced boundary_loop by outline_ordered implementation 10 роки тому
bounding_box.cpp c975b8f076 templates 9 роки тому
bounding_box.h 7f360c14cf bounding box and cdt 11 роки тому
bounding_box_diagonal.cpp 945ca3ac82 move opengl functions to separate directories, lots of new templates 10 роки тому
bounding_box_diagonal.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
canonical_quaternions.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
canonical_quaternions.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
cat.cpp bc475a7c64 fixed compilation bug in cat 9 роки тому
cat.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
ceil.cpp 9202f71067 change comment in templates so that autoexplicit works better 8 роки тому
ceil.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
centroid.cpp 5e41228487 skeleton building and posing examples 11 роки тому
centroid.h 5e41228487 skeleton building and posing examples 11 роки тому
circulation.cpp 6fad412558 decimate with finite cost 9 роки тому
circulation.h ef5029045e comment about order 8 роки тому
circumradius.cpp c330b9a5ec compute per triangle circum- and in- radii 8 роки тому
circumradius.h c330b9a5ec compute per triangle circum- and in- radii 8 роки тому
collapse_edge.cpp 42d48d7457 ack, pre_/-post_ collapse needs full state 8 роки тому
collapse_edge.h 42d48d7457 ack, pre_/-post_ collapse needs full state 8 роки тому
collapse_small_triangles.cpp 85a56e391b resize(X.rows(),X.cols()) --> resizeLike(X) 8 роки тому
collapse_small_triangles.h 6737f53ebc collapse small triangles 10 роки тому
colon.cpp 547f858b3a Merge branch 'master' of https://github.com/libigl/libigl 9 роки тому
colon.h f976e38f91 faster tri tri adj, unique simplices 10 роки тому
column_to_quats.cpp 3ee6fa10ec mouse controller and quaternion io 11 роки тому
column_to_quats.h b84e4e375d extra eigen stdvector includes 8 роки тому
columnize.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
columnize.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
comb_cross_field.cpp e4886b577c replaced constructors of the form Eigen::PlainObjectBase<Derived*> with Derived* 9 роки тому
comb_cross_field.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
comb_frame_field.cpp 72eb3ef51a missing namespaces/includes 8 роки тому
comb_frame_field.h 344cb9eea3 -Changes to header files to support parsing 9 роки тому
comb_line_field.cpp e4886b577c replaced constructors of the form Eigen::PlainObjectBase<Derived*> with Derived* 9 роки тому
comb_line_field.h c7f6cff1db fixes from Nico Pietroni on the MIQ pipeline and examples 10 роки тому
combine.cpp 5a32da8c9d combine two meshes 8 роки тому
combine.h 5a32da8c9d combine two meshes 8 роки тому
components.cpp 7c626a1824 * integrate code for scalable locally injective maps 8 роки тому
components.h 98540fdb74 rm boost dependency extra, absorb functions into main library 10 роки тому
compute_frame_field_bisectors.cpp 72eb3ef51a missing namespaces/includes 8 роки тому
compute_frame_field_bisectors.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
conjugate_frame_fields.cpp 9a7c121ba6 conjugate tutorial seems to be broken, made some changes but not fixed yet 9 роки тому
conjugate_frame_fields.h 9a7c121ba6 conjugate tutorial seems to be broken, made some changes but not fixed yet 9 роки тому
connect_boundary_to_infinity.cpp 1caf839744 missing templates 9 роки тому
connect_boundary_to_infinity.h 0411fb9508 boundary edges now work with default decimate 9 роки тому
cotmatrix.cpp 8fd80c7bc0 biharmonic coordinates, impl of 'linear subspace design...', templates, overloads 10 роки тому
cotmatrix.h 749dd2c873 squared_edge_lengths (clean) 8 роки тому
cotmatrix_entries.cpp 749dd2c873 squared_edge_lengths (clean) 8 роки тому
cotmatrix_entries.h 7f360c14cf bounding box and cdt 11 роки тому
covariance_scatter_matrix.cpp 1b254f02a1 rm using namespace igl 10 роки тому
covariance_scatter_matrix.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
cross.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
cross.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
cross_field_missmatch.cpp 2eccd0612a Merge branch 'master' of https://github.com/libigl/libigl 9 роки тому
cross_field_missmatch.h fb819ab4f7 fixed python compilation error 9 роки тому
crouzeix_raviart_massmatrix.cpp 9202f71067 change comment in templates so that autoexplicit works better 8 роки тому
crouzeix_raviart_massmatrix.h 5ad035de72 boundaryedges and CR mass matrix 10 роки тому
cumsum.cpp 85a56e391b resize(X.rows(),X.cols()) --> resizeLike(X) 8 роки тому
cumsum.h c3fcd86080 typo in doc 8 роки тому
cut_mesh.cpp b00e745985 adding missing copyright/license headers 8 роки тому
cut_mesh.h d32071235f note 9 роки тому
cut_mesh_from_singularities.cpp e4886b577c replaced constructors of the form Eigen::PlainObjectBase<Derived*> with Derived* 9 роки тому
cut_mesh_from_singularities.h 2254bf5990 style 9 роки тому
cylinder.cpp df801345c1 copyright/license headers 8 роки тому
cylinder.h df801345c1 copyright/license headers 8 роки тому
dated_copy.cpp 6f8f988fa5 fixed various windows issues with static library 10 роки тому
dated_copy.h 6f8f988fa5 fixed various windows issues with static library 10 роки тому
decimate.cpp 42d48d7457 ack, pre_/-post_ collapse needs full state 8 роки тому
decimate.h 42d48d7457 ack, pre_/-post_ collapse needs full state 8 роки тому
deform_skeleton.cpp 53c2b9e8fa missing copyrights 10 роки тому
deform_skeleton.h b84e4e375d extra eigen stdvector includes 8 роки тому
delaunay_triangulation.cpp 87fbb8ec7d Refactor exact predicates class into functions. 8 роки тому
delaunay_triangulation.h d8848b2a9a Update doc. 8 роки тому
deprecated.h 53c2b9e8fa missing copyrights 10 роки тому
diag.cpp ded77a69ca bug 9 роки тому
diag.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
dihedral_angles.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
dihedral_angles.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
dijkstra.cpp b00e745985 adding missing copyright/license headers 8 роки тому
dijkstra.h 5f795771d7 implementation of integrable polyvector fields (+some templates) 10 роки тому
directed_edge_orientations.cpp 945ca3ac82 move opengl functions to separate directories, lots of new templates 10 роки тому
directed_edge_orientations.h b84e4e375d extra eigen stdvector includes 8 роки тому
directed_edge_parents.cpp 945ca3ac82 move opengl functions to separate directories, lots of new templates 10 роки тому
directed_edge_parents.h 76a662d23f missing directed edge parents file 11 роки тому
dirname.cpp b473232452 preprend license header to every file 11 роки тому
dirname.h 18bd747cb4 example in header 10 роки тому
dot.cpp b473232452 preprend license header to every file 11 роки тому
dot.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
dot_row.cpp 97bf3c6fb5 PlainObjectBase objects should not be declared 8 роки тому
dot_row.h 97bf3c6fb5 PlainObjectBase objects should not be declared 8 роки тому
doublearea.cpp 97bf3c6fb5 PlainObjectBase objects should not be declared 8 роки тому
doublearea.h 8eee88cd05 handle streams of arbitrary dimension triangles 9 роки тому
dqs.cpp 85a56e391b resize(X.rows(),X.cols()) --> resizeLike(X) 8 роки тому
dqs.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
edge_collapse_is_valid.cpp 1b254f02a1 rm using namespace igl 10 роки тому
edge_collapse_is_valid.h 7ce75d2528 edge collapsing and linear programs 10 роки тому
edge_flaps.cpp 148c4a067f handle boundary edges 8 роки тому
edge_flaps.h 3e94e154ea comments about duplicity 8 роки тому
edge_lengths.cpp 749dd2c873 squared_edge_lengths (clean) 8 роки тому
edge_lengths.h a7c4fe3b1c fix documentation 9 роки тому
edge_topology.cpp d1c389e964 is_edge_manifold should not depend on V 8 роки тому
edge_topology.h 87ca4a7e25 edge_topology should be made obsolete (edge_flaps is superior in a few ways) 8 роки тому
edges.cpp 69520fbf2e templated 9 роки тому
edges.h 69520fbf2e templated 9 роки тому
eigs.cpp b00e745985 adding missing copyright/license headers 8 роки тому
eigs.h b00e745985 adding missing copyright/license headers 8 роки тому
euler_characteristic.cpp 7c626a1824 * integrate code for scalable locally injective maps 8 роки тому
euler_characteristic.h d1c389e964 is_edge_manifold should not depend on V 8 роки тому
example_fun.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
example_fun.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
exterior_edges.cpp 2282d71554 cleanup warnings 9 роки тому
exterior_edges.h 53c2b9e8fa missing copyrights 10 роки тому
extract_manifold_patches.cpp b00e745985 adding missing copyright/license headers 8 роки тому
extract_manifold_patches.h b00e745985 adding missing copyright/license headers 8 роки тому
extract_non_manifold_edge_curves.cpp b00e745985 adding missing copyright/license headers 8 роки тому
extract_non_manifold_edge_curves.h b00e745985 adding missing copyright/license headers 8 роки тому
face_areas.cpp 97bf3c6fb5 PlainObjectBase objects should not be declared 8 роки тому
face_areas.h a7c4fe3b1c fix documentation 9 роки тому
face_occurrences.cpp 8fd80c7bc0 biharmonic coordinates, impl of 'linear subspace design...', templates, overloads 10 роки тому
face_occurrences.h 2c75b2cf21 typo in face_occurrences name 10 роки тому
faces_first.cpp 85a56e391b resize(X.rows(),X.cols()) --> resizeLike(X) 8 роки тому
faces_first.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
facet_components.cpp 0d158b969a templates 9 роки тому
facet_components.h da91e1ba44 Minor update documentation of facet_components(). 10 роки тому
false_barycentric_subdivision.cpp 38328367b6 reorganize tutorial cmake, bug fix in static ver. of npoly demo 10 роки тому
false_barycentric_subdivision.h 3b3eddd9a0 fixed template madness in tri_tri 10 роки тому
field_local_global_conversions.cpp b00e745985 adding missing copyright/license headers 8 роки тому
field_local_global_conversions.h 5f795771d7 implementation of integrable polyvector fields (+some templates) 10 роки тому
file_contents_as_string.cpp 909c4a05ff return overload 9 роки тому
file_contents_as_string.h 909c4a05ff return overload 9 роки тому
file_dialog_open.cpp 69f1c5f112 fixed a bug concerning load mesh from dialog 10 роки тому
file_dialog_open.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
file_dialog_save.cpp 6f8f988fa5 fixed various windows issues with static library 10 роки тому
file_dialog_save.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
file_exists.cpp a60d9c69a1 get modifiers, fit rigid 2d, templates 10 роки тому
file_exists.h a60d9c69a1 get modifiers, fit rigid 2d, templates 10 роки тому
find.cpp 55f21e8673 template 8 роки тому
find.h 1618c18430 more overloads 10 роки тому
find_cross_field_singularities.cpp c3599de866 fixes for python static build 9 роки тому
find_cross_field_singularities.h 580c57ed4f Merge branch 'master' of https://github.com/libigl/libigl 10 роки тому
fit_plane.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
fit_plane.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
fit_rotations.cpp 5a63323d51 unnecessary includes 8 роки тому
fit_rotations.h 36a1006438 note that fit_rotations may be obsolete 10 роки тому
flip_avoiding_line_search.cpp a26275254d * added missing IGL_INLINE 8 роки тому
flip_avoiding_line_search.h ac38aede79 * removed defines and namespaces from flip_avoiding_line_search 8 роки тому
flip_edge.cpp 0660c9c01c Avoid coeff and coeffRef. 8 роки тому
flip_edge.h 34b56ae109 Minor update to get window compilation pass. 8 роки тому
flipped_triangles.cpp 7c626a1824 * integrate code for scalable locally injective maps 8 роки тому
flipped_triangles.h 4ebf2b20ef fixed up style and compilation errors in flipped_triangles 9 роки тому
flood_fill.cpp b00e745985 adding missing copyright/license headers 8 роки тому
flood_fill.h b00e745985 adding missing copyright/license headers 8 роки тому
floor.cpp 9202f71067 change comment in templates so that autoexplicit works better 8 роки тому
floor.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
forward_kinematics.cpp b7157c2898 translation widget 9 роки тому
forward_kinematics.h b84e4e375d extra eigen stdvector includes 8 роки тому
frame_field_deformer.cpp e7af0097b7 cotangent --> cotmatrix_entries 11 роки тому
frame_field_deformer.h b1ea555f41 bad path 10 роки тому
frame_to_cross_field.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
frame_to_cross_field.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
frustum.cpp ed64cad992 Merge branch 'master' of https://github.com/libigl/libigl 10 роки тому
frustum.h a1c8fcb85c templates, viewer opengl code extraction 10 роки тому
gaussian_curvature.cpp 5a5ec9adf9 all tutorial examples compile with static lib 11 роки тому
gaussian_curvature.h bd57fc27aa no division by area 9 роки тому
get_seconds.cpp 3224534a03 C++11 get seconds 9 роки тому
get_seconds.h f976e38f91 faster tri tri adj, unique simplices 10 роки тому
get_seconds_hires.cpp b473232452 preprend license header to every file 11 роки тому
get_seconds_hires.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
grad.cpp 48787fd172 consolidated igl::grad 8 роки тому
grad.h 48787fd172 consolidated igl::grad 8 роки тому
grid.cpp b00e745985 adding missing copyright/license headers 8 роки тому
grid.h b00e745985 adding missing copyright/license headers 8 роки тому
group_sum_matrix.cpp 945ca3ac82 move opengl functions to separate directories, lots of new templates 10 роки тому
group_sum_matrix.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
guess_extension.cpp be1bbf6fde templates and output parameter overload 8 роки тому
guess_extension.h be1bbf6fde templates and output parameter overload 8 роки тому
harmonic.cpp 9a67d8dc36 templates 8 роки тому
harmonic.h c76993c791 move bbw with active set to main lib, rm bbw extra, create mosek::bbw 8 роки тому
harwell_boeing.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
harwell_boeing.h bdeb592dc8 rm unneeded define 10 роки тому
hausdorff.cpp 795638c80d revert hausdorff 8 роки тому
hausdorff.h 795638c80d revert hausdorff 8 роки тому
histc.cpp 5a63323d51 unnecessary includes 8 роки тому
histc.h f6076190a2 use matrixbase for inputs 8 роки тому
hsv_to_rgb.cpp 85a56e391b resize(X.rows(),X.cols()) --> resizeLike(X) 8 роки тому
hsv_to_rgb.h 20a3ad28f1 eigen types 10 роки тому
igl_inline.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
in_element.cpp 92b29eb15f templates 9 роки тому
in_element.h 5e0d6b3aff Fixed various minor bugs, added explicit template specifications 9 роки тому
infinite_cost_stopping_condition.cpp ad917ffc5e Fixed namespace problem 9 роки тому
infinite_cost_stopping_condition.h 6fad412558 decimate with finite cost 9 роки тому
inradius.cpp c330b9a5ec compute per triangle circum- and in- radii 8 роки тому
inradius.h c330b9a5ec compute per triangle circum- and in- radii 8 роки тому
integrable_polyvector_fields.cpp f72ff756ac olga's recent changes 9 роки тому
integrable_polyvector_fields.h e4886b577c replaced constructors of the form Eigen::PlainObjectBase<Derived*> with Derived* 9 роки тому
internal_angles.cpp 85a56e391b resize(X.rows(),X.cols()) --> resizeLike(X) 8 роки тому
internal_angles.h 749dd2c873 squared_edge_lengths (clean) 8 роки тому
intersect.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
intersect.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
invert_diag.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
invert_diag.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
is_border_vertex.cpp 6f3f5bdabe Merge branch 'master' of https://github.com/schuellc/libigl 9 роки тому
is_border_vertex.h ba963582da improved doc 10 роки тому
is_boundary_edge.cpp 9202f71067 change comment in templates so that autoexplicit works better 8 роки тому
is_boundary_edge.h 5ad035de72 boundaryedges and CR mass matrix 10 роки тому
is_dir.cpp b473232452 preprend license header to every file 11 роки тому
is_dir.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
is_edge_manifold.cpp d1c389e964 is_edge_manifold should not depend on V 8 роки тому
is_edge_manifold.h 68ceab903d extra template in header 8 роки тому
is_file.cpp b473232452 preprend license header to every file 11 роки тому
is_file.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
is_irregular_vertex.cpp 51d92e724a templates, tutorial missing libs 10 роки тому
is_irregular_vertex.h 442c8d908c added mesh statistics functions and updated tutorial 10 роки тому
is_planar.cpp c39ca7747a fixed many style issues, missing copyrights, inlines 11 роки тому
is_planar.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
is_readable.cpp b473232452 preprend license header to every file 11 роки тому
is_readable.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
is_sparse.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
is_sparse.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
is_stl.cpp b6e3b252af read directly from file pointer 8 роки тому
is_stl.h b6e3b252af read directly from file pointer 8 роки тому
is_symmetric.cpp 1b254f02a1 rm using namespace igl 10 роки тому
is_symmetric.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
is_vertex_manifold.cpp 9a67d8dc36 templates 8 роки тому
is_vertex_manifold.h 9f0396b085 Update the documentation of is_vertex_manifold. 10 роки тому
is_writable.cpp b473232452 preprend license header to every file 11 роки тому
is_writable.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
isdiag.cpp 9a62ff9d34 missing template, why did only AppVeyor catch this? and not Trevor? 9 роки тому
isdiag.h 8dc2514633 isdiagonal test, harmonic abstracted away from laplacian 9 роки тому
ismember.cpp 85a56e391b resize(X.rows(),X.cols()) --> resizeLike(X) 8 роки тому
ismember.h 7bc5649629 is member 8 роки тому
jet.cpp 36c5ec93f3 cast so that inputs can be float 8 роки тому
jet.h 36c5ec93f3 cast so that inputs can be float 8 роки тому
launch_medit.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
launch_medit.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
lbs_matrix.cpp c39ca7747a fixed many style issues, missing copyrights, inlines 11 роки тому
lbs_matrix.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
lexicographic_triangulation.cpp e4583a8683 Minor update to avoid compiler warning. 8 роки тому
lexicographic_triangulation.h 87fbb8ec7d Refactor exact predicates class into functions. 8 роки тому
limit_faces.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
limit_faces.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
line_field_missmatch.cpp 97bf3c6fb5 PlainObjectBase objects should not be declared 8 роки тому
line_field_missmatch.h c7f6cff1db fixes from Nico Pietroni on the MIQ pipeline and examples 10 роки тому
line_search.cpp a26275254d * added missing IGL_INLINE 8 роки тому
line_search.h ac38aede79 * removed defines and namespaces from flip_avoiding_line_search 8 роки тому
line_segment_in_rectangle.cpp 1b254f02a1 rm using namespace igl 10 роки тому
line_segment_in_rectangle.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
linprog.cpp 5a63323d51 unnecessary includes 8 роки тому
linprog.h 7ce75d2528 edge collapsing and linear programs 10 роки тому
list_to_matrix.cpp 97bf3c6fb5 PlainObjectBase objects should not be declared 8 роки тому
list_to_matrix.h 6f3f5bdabe Merge branch 'master' of https://github.com/schuellc/libigl 9 роки тому
local_basis.cpp 679512e971 templates 10 роки тому
local_basis.h 344cb9eea3 -Changes to header files to support parsing 9 роки тому
look_at.cpp 53c2b9e8fa missing copyrights 10 роки тому
look_at.h a1c8fcb85c templates, viewer opengl code extraction 10 роки тому
loop.cpp e650edcc01 templates 8 роки тому
loop.h 19bc318c12 loop, upsample, bug fix + tutorial 8 роки тому
lscm.cpp 5a63323d51 unnecessary includes 8 роки тому
lscm.h 3a82db0c88 clarify ref 10 роки тому
map_vertices_to_circle.cpp 1d76192dc3 removed unused include 10 роки тому
map_vertices_to_circle.h 344cb9eea3 -Changes to header files to support parsing 9 роки тому
massmatrix.cpp 14cba5359b templates 9 роки тому
massmatrix.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
mat_max.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
mat_max.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
mat_min.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
mat_min.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
mat_to_quat.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
mat_to_quat.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
material_colors.h ae29184e91 draw skeleton with colors 11 роки тому
matlab_format.cpp b70dfc9599 rather, use densebase for inputs 8 роки тому
matlab_format.h b70dfc9599 rather, use densebase for inputs 8 роки тому
matrix_to_list.cpp b19775bd34 __1 8 роки тому
matrix_to_list.h 4f644e3eac comments on vector output 8 роки тому
max_faces_stopping_condition.cpp df801345c1 copyright/license headers 8 роки тому
max_faces_stopping_condition.h 4deb79d564 pull out shortest_edge_... and max_faces... functions 8 роки тому
max_size.cpp 0199faeaa7 templates 10 роки тому
max_size.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
median.cpp 1b254f02a1 rm using namespace igl 10 роки тому
median.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
min_quad_dense.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
min_quad_dense.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
min_quad_with_fixed.cpp 97bf3c6fb5 PlainObjectBase objects should not be declared 8 роки тому
min_quad_with_fixed.h 8fd80c7bc0 biharmonic coordinates, impl of 'linear subspace design...', templates, overloads 10 роки тому
min_size.cpp 0199faeaa7 templates 10 роки тому
min_size.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
mod.cpp 85a56e391b resize(X.rows(),X.cols()) --> resizeLike(X) 8 роки тому
mod.h c9be59b49f fix some bad uses of Eigen::PlainObjectBase 9 роки тому
mode.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
mode.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
mvc.cpp ed153a8b84 abs warning 10 роки тому
mvc.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
n_polyvector.cpp e4886b577c replaced constructors of the form Eigen::PlainObjectBase<Derived*> with Derived* 9 роки тому
n_polyvector.h 81238fbfd2 - cleaned up polyvector field example 11 роки тому
n_polyvector_general.cpp b922f9c558 restored one more function from n_polyvector_general.cpp 9 роки тому
n_polyvector_general.h fc424b9b5c general polyvector field 11 роки тому
nchoosek.cpp 4f99fc5ddd variadic boolean ops 9 роки тому
nchoosek.h 4f99fc5ddd variadic boolean ops 9 роки тому
next_filename.cpp 3afe7f3444 templates 10 роки тому
next_filename.h 8e6f510b7b next filename, draw quad meshes, template specializations, 11 роки тому
normal_derivative.cpp 1b63927478 bug resize/reserve 10 роки тому
normal_derivative.h 8fd80c7bc0 biharmonic coordinates, impl of 'linear subspace design...', templates, overloads 10 роки тому
normalize_quat.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
normalize_quat.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
normalize_row_lengths.cpp 85a56e391b resize(X.rows(),X.cols()) --> resizeLike(X) 8 роки тому
normalize_row_lengths.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
normalize_row_sums.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
normalize_row_sums.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
null.cpp 9354cc1124 null space 10 роки тому
null.h 9354cc1124 null space 10 роки тому
on_boundary.cpp c2f0df93dd remove NO_EIGEN 8 роки тому
on_boundary.h 88c67e8714 remove NO_EIGEN 8 роки тому
orient_outward.cpp 5a63323d51 unnecessary includes 8 роки тому
orient_outward.h 63e134577a manifold_patches --> orientable_patches 11 роки тому
orientable_patches.cpp 2dfdea1a3b templates 9 роки тому
orientable_patches.h 2dfdea1a3b templates 9 роки тому
orth.cpp b473232452 preprend license header to every file 11 роки тому
orth.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
ortho.cpp 53c2b9e8fa missing copyrights 10 роки тому
ortho.h a1c8fcb85c templates, viewer opengl code extraction 10 роки тому
outer_element.cpp 2d7ac4173d Merge remote-tracking branch 'upstream/master' 9 роки тому
outer_element.h 05cf35b4d6 Minor update to documentation and rename exterior* to outer*. 10 роки тому
parallel_for.h d449dd19c3 force serial macro 9 роки тому
parallel_transport_angles.cpp b00e745985 adding missing copyright/license headers 8 роки тому
parallel_transport_angles.h 5f795771d7 implementation of integrable polyvector fields (+some templates) 10 роки тому
partition.cpp c39ca7747a fixed many style issues, missing copyrights, inlines 11 роки тому
partition.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
parula.cpp 36c5ec93f3 cast so that inputs can be float 8 роки тому
parula.h 5e0d6b3aff Fixed various minor bugs, added explicit template specifications 9 роки тому
path_to_executable.cpp 6f8f988fa5 fixed various windows issues with static library 10 роки тому
path_to_executable.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
pathinfo.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
pathinfo.h 8e2e36c12a examples 10 роки тому
per_corner_normals.cpp f4ab9d2cd1 compiles after rm PlainObjectBase uses 9 роки тому
per_corner_normals.h f4ab9d2cd1 compiles after rm PlainObjectBase uses 9 роки тому
per_edge_normals.cpp 5e0d6b3aff Fixed various minor bugs, added explicit template specifications 9 роки тому
per_edge_normals.h 5e0d6b3aff Fixed various minor bugs, added explicit template specifications 9 роки тому
per_face_normals.cpp 1678470800 fixes for VS2015 8 роки тому
per_face_normals.h 02ab01c0ac stable face normals 10 роки тому
per_vertex_attribute_smoothing.cpp 97bf3c6fb5 PlainObjectBase objects should not be declared 8 роки тому
per_vertex_attribute_smoothing.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
per_vertex_normals.cpp 8533e77538 missing template functions 9 роки тому
per_vertex_normals.h af6efe2123 is vertex manifold 10 роки тому
per_vertex_point_to_plane_quadrics.cpp df801345c1 copyright/license headers 8 роки тому
per_vertex_point_to_plane_quadrics.h df801345c1 copyright/license headers 8 роки тому
piecewise_constant_winding_number.cpp 737ec00d49 __1 in templates 9 роки тому
piecewise_constant_winding_number.h e6536d3355 boolean input validation as stand-alone functions 9 роки тому
planarize_quad_mesh.cpp 945ca3ac82 move opengl functions to separate directories, lots of new templates 10 роки тому
planarize_quad_mesh.h 53c2b9e8fa missing copyrights 10 роки тому
ply.h.REMOVED.git-id b6e3b252af read directly from file pointer 8 роки тому
point_in_circle.cpp b473232452 preprend license header to every file 11 роки тому
point_in_circle.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
point_in_poly.cpp b473232452 preprend license header to every file 11 роки тому
point_in_poly.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
point_mesh_squared_distance.cpp abb5062d19 templates 8 роки тому
point_mesh_squared_distance.h 5e0d6b3aff Fixed various minor bugs, added explicit template specifications 9 роки тому
point_simplex_squared_distance.cpp 36f3f666e9 fix template to match explicits 8 роки тому
point_simplex_squared_distance.h 36f3f666e9 fix template to match explicits 8 роки тому
polar_dec.cpp e5b99abdfa deprecated PlainObjectBase types 9 роки тому
polar_dec.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
polar_svd.cpp 5e0d6b3aff Fixed various minor bugs, added explicit template specifications 9 роки тому
polar_svd.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
polar_svd3x3.cpp 4d773331ee warnings 9 роки тому
polar_svd3x3.h cce7d90d92 mv SVD to main lib 10 роки тому
polygon_mesh_to_triangle_mesh.cpp 8533e77538 missing template functions 9 роки тому
polygon_mesh_to_triangle_mesh.h 8e6f510b7b next filename, draw quad meshes, template specializations, 11 роки тому
polyroots.cpp 38328367b6 reorganize tutorial cmake, bug fix in static ver. of npoly demo 10 роки тому
polyroots.h 34d4f8e5aa conjugate example, fixed some #HEADER_ONLY errors 11 роки тому
polyvector_field_comb_from_matchings_and_cuts.cpp b00e745985 adding missing copyright/license headers 8 роки тому
polyvector_field_comb_from_matchings_and_cuts.h 5f795771d7 implementation of integrable polyvector fields (+some templates) 10 роки тому
polyvector_field_cut_mesh_with_singularities.cpp b00e745985 adding missing copyright/license headers 8 роки тому
polyvector_field_cut_mesh_with_singularities.h 5f795771d7 implementation of integrable polyvector fields (+some templates) 10 роки тому
polyvector_field_matchings.cpp b00e745985 adding missing copyright/license headers 8 роки тому
polyvector_field_matchings.h f72ff756ac olga's recent changes 9 роки тому
polyvector_field_poisson_reconstruction.cpp b00e745985 adding missing copyright/license headers 8 роки тому
polyvector_field_poisson_reconstruction.h f72ff756ac olga's recent changes 9 роки тому
polyvector_field_singularities_from_matchings.cpp b00e745985 adding missing copyright/license headers 8 роки тому
polyvector_field_singularities_from_matchings.h cd067ff5c8 changed order of neighborhood traversal for singularity calculation 9 роки тому
principal_curvature.cpp c3599de866 fixes for python static build 9 роки тому
principal_curvature.h 344cb9eea3 -Changes to header files to support parsing 9 роки тому
print_ijv.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
print_ijv.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
print_vector.cpp 4372f57c55 plot_vector --> print_vector 11 роки тому
print_vector.h 4372f57c55 plot_vector --> print_vector 11 роки тому
procrustes.cpp 72eb3ef51a missing namespaces/includes 8 роки тому
procrustes.h 6e2c0ff218 bug in procrustes templating 10 роки тому
project.cpp 347ec4e8e8 fixed template specialization 8 роки тому
project.h 10999766a2 project() is now templated more generally 8 роки тому
project_isometrically_to_plane.cpp 97bf3c6fb5 PlainObjectBase objects should not be declared 8 роки тому
project_isometrically_to_plane.h e7f4b0154a plane_project --> project_isometrically_to_plane 11 роки тому
project_to_line.cpp c21aa6e542 templates 9 роки тому
project_to_line.h 408c23ebc7 another typo in doc 8 роки тому
project_to_line_segment.cpp c21aa6e542 templates 9 роки тому
project_to_line_segment.h 70693a85ba small speed up and code reogranization for point/mesh squared distance 9 роки тому
pseudonormal_test.cpp eee3a7413f extract point-simplex distance and triangle barycentric coordinates from AABB, use MatrixBase for const input params 9 роки тому
pseudonormal_test.h 7af1fa6964 pseudonormal test and signed distance in 2D 10 роки тому
qslim.cpp df801345c1 copyright/license headers 8 роки тому
qslim.h df801345c1 copyright/license headers 8 роки тому
qslim_optimal_collapse_edge_callbacks.cpp e2f6f2c24c std isinf 8 роки тому
qslim_optimal_collapse_edge_callbacks.h df801345c1 copyright/license headers 8 роки тому
quad_planarity.cpp 97bf3c6fb5 PlainObjectBase objects should not be declared 8 роки тому
quad_planarity.h 53c2b9e8fa missing copyrights 10 роки тому
quadric_binary_plus_operator.cpp df801345c1 copyright/license headers 8 роки тому
quadric_binary_plus_operator.h df801345c1 copyright/license headers 8 роки тому
quat_conjugate.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
quat_conjugate.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
quat_mult.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
quat_mult.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
quat_to_axis_angle.cpp 46c56ae75a fixing IGL_NO_HEADER 9 роки тому
quat_to_axis_angle.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
quat_to_mat.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
quat_to_mat.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
quats_to_column.cpp 3ee6fa10ec mouse controller and quaternion io 11 роки тому
quats_to_column.h b84e4e375d extra eigen stdvector includes 8 роки тому
ramer_douglas_peucker.cpp 5a63323d51 unnecessary includes 8 роки тому
ramer_douglas_peucker.h 16cd4fcd13 wrapper to output reparameterization along simplified curve 8 роки тому
random_dir.cpp 62521f0d2c fix for clang, enabled embree build by default for python bindings 9 роки тому
random_dir.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
random_points_on_mesh.cpp 5a63323d51 unnecessary includes 8 роки тому
random_points_on_mesh.h 52eabdec3e documentation 8 роки тому
random_quaternion.cpp 772efbdbf9 use shoemake algorithm 9 роки тому
random_quaternion.h 53c2b9e8fa missing copyrights 10 роки тому
randperm.cpp 97bf3c6fb5 PlainObjectBase objects should not be declared 8 роки тому
randperm.h 97bf3c6fb5 PlainObjectBase objects should not be declared 8 роки тому
ray_box_intersect.cpp b00e745985 adding missing copyright/license headers 8 роки тому
ray_box_intersect.h 0cc5a8ed69 minor changes with no effect to AABB ray 9 роки тому
ray_mesh_intersect.cpp 9202f71067 change comment in templates so that autoexplicit works better 8 роки тому
ray_mesh_intersect.h b00e745985 adding missing copyright/license headers 8 роки тому
ray_sphere_intersect.cpp 945ca3ac82 move opengl functions to separate directories, lots of new templates 10 роки тому
ray_sphere_intersect.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
raytri.c 73745b8713 note about public domain-ness 8 роки тому
readBF.cpp b00e745985 adding missing copyright/license headers 8 роки тому
readBF.h b00e745985 adding missing copyright/license headers 8 роки тому
readCSV.cpp 77b87e622a rm using namespace igl 10 роки тому
readCSV.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
readDMAT.cpp ecfe38cc57 undo templates 8 роки тому
readDMAT.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
readMESH.cpp b6e3b252af read directly from file pointer 8 роки тому
readMESH.h b6e3b252af read directly from file pointer 8 роки тому
readNODE.cpp 77b87e622a rm using namespace igl 10 роки тому
readNODE.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
readOBJ.cpp b6e3b252af read directly from file pointer 8 роки тому
readOBJ.h b6e3b252af read directly from file pointer 8 роки тому
readOFF.cpp b6e3b252af read directly from file pointer 8 роки тому
readOFF.h b6e3b252af read directly from file pointer 8 роки тому
readPLY.cpp b6e3b252af read directly from file pointer 8 роки тому
readPLY.h b6e3b252af read directly from file pointer 8 роки тому
readSTL.cpp b6e3b252af read directly from file pointer 8 роки тому
readSTL.h b6e3b252af read directly from file pointer 8 роки тому
readTGF.cpp 77b87e622a rm using namespace igl 10 роки тому
readTGF.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
readWRL.cpp b6e3b252af read directly from file pointer 8 роки тому
readWRL.h b6e3b252af read directly from file pointer 8 роки тому
read_triangle_mesh.cpp b6e3b252af read directly from file pointer 8 роки тому
read_triangle_mesh.h b6e3b252af read directly from file pointer 8 роки тому
remove_duplicate_vertices.cpp 85a56e391b resize(X.rows(),X.cols()) --> resizeLike(X) 8 роки тому
remove_duplicate_vertices.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
remove_duplicates.cpp 85a56e391b resize(X.rows(),X.cols()) --> resizeLike(X) 8 роки тому
remove_duplicates.h 69808310c1 removeDuplicates --> remove_duplicates 11 роки тому
remove_unreferenced.cpp 9a6a7d6423 fixed Hausdorff distance to converge to bounds on exact value 8 роки тому
remove_unreferenced.h ef69b90899 better overloads 10 роки тому
reorder.cpp 439cc69864 templates 10 роки тому
reorder.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
repdiag.cpp eac13b6110 faster repdiag 9 роки тому
repdiag.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
repmat.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
repmat.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
resolve_duplicated_faces.cpp f687064342 Added missing templates 9 роки тому
resolve_duplicated_faces.h f9ced09c24 merge 9 роки тому
rgb_to_hsv.cpp 85a56e391b resize(X.rows(),X.cols()) --> resizeLike(X) 8 роки тому
rgb_to_hsv.h 20a3ad28f1 eigen types 10 роки тому
rotate_by_quat.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
rotate_by_quat.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
rotate_vectors.cpp 52ba9e6fd8 rotate_vectors keeps the magnitude intact instead of changing it to 1 9 роки тому
rotate_vectors.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
rotation_matrix_from_directions.cpp 2d42198b19 fix style, rm unused parameter 9 роки тому
rotation_matrix_from_directions.h 2d42198b19 fix style, rm unused parameter 9 роки тому
round.cpp 85a56e391b resize(X.rows(),X.cols()) --> resizeLike(X) 8 роки тому
round.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
rows_to_matrix.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
rows_to_matrix.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
sample_edges.cpp b473232452 preprend license header to every file 11 роки тому
sample_edges.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
seam_edges.cpp af2594ad1c cosmetic reformatting and templates 8 роки тому
seam_edges.h af2594ad1c cosmetic reformatting and templates 8 роки тому
segment_segment_intersect.cpp abd2f01b80 completing the merge 9 роки тому
segment_segment_intersect.h abd2f01b80 completing the merge 9 роки тому
serialize.h 892496b73c Merge current master 8 роки тому
setdiff.cpp 97bf3c6fb5 PlainObjectBase objects should not be declared 8 роки тому
setdiff.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
setunion.cpp 06215fe09b set union on matrices 8 роки тому
setunion.h 06215fe09b set union on matrices 8 роки тому
shortest_edge_and_midpoint.cpp df801345c1 copyright/license headers 8 роки тому
shortest_edge_and_midpoint.h 4deb79d564 pull out shortest_edge_... and max_faces... functions 8 роки тому
signed_distance.cpp 6baa0bef57 SIGN CHANGE: use right hand rule, -1 on inside of CCW polygons 8 роки тому
signed_distance.h 7af1fa6964 pseudonormal test and signed distance in 2D 10 роки тому
simplify_polyhedron.cpp 42d48d7457 ack, pre_/-post_ collapse needs full state 8 роки тому
simplify_polyhedron.h 4123794f61 simplify polyhedron 9 роки тому
slice.cpp 9a6a7d6423 fixed Hausdorff distance to converge to bounds on exact value 8 роки тому
slice.h c9be59b49f fix some bad uses of Eigen::PlainObjectBase 9 роки тому
slice_into.cpp 97bf3c6fb5 PlainObjectBase objects should not be declared 8 роки тому
slice_into.h 97bf3c6fb5 PlainObjectBase objects should not be declared 8 роки тому
slice_mask.cpp 8083680dc8 improved templating 8 роки тому
slice_mask.h 8083680dc8 improved templating 8 роки тому
slice_tets.cpp 5e0d6b3aff Fixed various minor bugs, added explicit template specifications 9 роки тому
slice_tets.h f0b9c018f1 slice tets and tempaltes 10 роки тому
slim.cpp a26275254d * added missing IGL_INLINE 8 роки тому
slim.h 1bdecb9e93 removed global namespaces 8 роки тому
snap_points.cpp 2dfdea1a3b templates 9 роки тому
snap_points.h 2dfdea1a3b templates 9 роки тому
snap_to_canonical_view_quat.cpp 945ca3ac82 move opengl functions to separate directories, lots of new templates 10 роки тому
snap_to_canonical_view_quat.h 8c809663c2 better tempaltes 10 роки тому
snap_to_fixed_up.cpp 9202f71067 change comment in templates so that autoexplicit works better 8 роки тому
snap_to_fixed_up.h 6d578a7133 key usage in viewer 9 роки тому
sort.cpp 85a56e391b resize(X.rows(),X.cols()) --> resizeLike(X) 8 роки тому
sort.h 58f09a919c missing sort header 9 роки тому
sort_angles.cpp 72c6004123 merge: 10 роки тому
sort_angles.h 53c2b9e8fa missing copyrights 10 роки тому
sort_triangles.cpp 5a63323d51 unnecessary includes 8 роки тому
sort_triangles.h 945ca3ac82 move opengl functions to separate directories, lots of new templates 10 роки тому
sort_vectors_ccw.cpp b00e745985 adding missing copyright/license headers 8 роки тому
sort_vectors_ccw.h f72ff756ac olga's recent changes 9 роки тому
sortrows.cpp 85a56e391b resize(X.rows(),X.cols()) --> resizeLike(X) 8 роки тому
sortrows.h c980d09b99 bug fix in boolean, first attempt to handle co-planar facets correctly 10 роки тому
sparse.cpp 3705ff1959 small mac fixes for the static build 10 роки тому
sparse.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
speye.cpp 38328367b6 reorganize tutorial cmake, bug fix in static ver. of npoly demo 10 роки тому
speye.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
squared_edge_lengths.cpp 749dd2c873 squared_edge_lengths (clean) 8 роки тому
squared_edge_lengths.h 749dd2c873 squared_edge_lengths (clean) 8 роки тому
stdin_to_temp.cpp b473232452 preprend license header to every file 11 роки тому
stdin_to_temp.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
streamlines.cpp e52b3a9ca9 streamlines.cpp: updated to use new matchings code (which has an option for treating the field as symmetric/non-symmetric) 9 роки тому
streamlines.h abd2f01b80 completing the merge 9 роки тому
sum.cpp c3745c0f63 added functions definitions 10 роки тому
sum.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
svd3x3.cpp cce7d90d92 mv SVD to main lib 10 роки тому
svd3x3.h cce7d90d92 mv SVD to main lib 10 роки тому
svd3x3_avx.cpp b068e63d4f removed double instantiation 10 роки тому
svd3x3_avx.h cce7d90d92 mv SVD to main lib 10 роки тому
svd3x3_sse.cpp cce7d90d92 mv SVD to main lib 10 роки тому
svd3x3_sse.h cce7d90d92 mv SVD to main lib 10 роки тому
swept_volume_bounding_box.cpp b00e745985 adding missing copyright/license headers 8 роки тому
swept_volume_bounding_box.h b00e745985 adding missing copyright/license headers 8 роки тому
swept_volume_signed_distance.cpp b00e745985 adding missing copyright/license headers 8 роки тому
swept_volume_signed_distance.h b00e745985 adding missing copyright/license headers 8 роки тому
trackball.cpp 945ca3ac82 move opengl functions to separate directories, lots of new templates 10 роки тому
trackball.h 8c809663c2 better tempaltes 10 роки тому
transpose_blocks.cpp 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
transpose_blocks.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
triangle_fan.cpp 53c2b9e8fa missing copyrights 10 роки тому
triangle_fan.h 53c2b9e8fa missing copyrights 10 роки тому
triangle_triangle_adjacency.cpp fe5c0e5eda rm strange template 8 роки тому
triangle_triangle_adjacency.h 7dd7f6e50b Regenerate docstrings and update documentation. Fix include problem with triangle_triangle_adjacency.h 8 роки тому
triangles_from_strip.cpp 53c2b9e8fa missing copyrights 10 роки тому
triangles_from_strip.h 9522dfd77e generate triangles from a points streaming triangle strip 10 роки тому
two_axis_valuator_fixed_up.cpp 945ca3ac82 move opengl functions to separate directories, lots of new templates 10 роки тому
two_axis_valuator_fixed_up.h 8c809663c2 better tempaltes 10 роки тому
uniformly_sample_two_manifold.cpp 77b87e622a rm using namespace igl 10 роки тому
uniformly_sample_two_manifold.h d06b90a231 comments 9 роки тому
unique.cpp e650edcc01 templates 8 роки тому
unique.h cda229c05b added 303 LaplaceEquation 10 роки тому
unique_edge_map.cpp 7b2b1e86f0 rm ::__1 8 роки тому
unique_edge_map.h 53c2b9e8fa missing copyrights 10 роки тому
unique_simplices.cpp 328682a5eb templated parallel for 9 роки тому
unique_simplices.h bae1c9582d per edge normals 11 роки тому
unproject.cpp 2dfdea1a3b templates 9 роки тому
unproject.h 2dfdea1a3b templates 9 роки тому
unproject_in_mesh.cpp 417501ef15 templates and __1 9 роки тому
unproject_in_mesh.h 81d3908f7b unproject onto mesh abstracted away from embree 9 роки тому
unproject_onto_mesh.cpp c5e77fa5d7 Added multiple tutorials 9 роки тому
unproject_onto_mesh.h 81d3908f7b unproject onto mesh abstracted away from embree 9 роки тому
unproject_ray.cpp dec1ddc168 rm using namespace igl 9 роки тому
unproject_ray.h a1e8235f15 expose unproject_in_mesh to main library with default brute force option 9 роки тому
unzip_corners.cpp b00e745985 adding missing copyright/license headers 8 роки тому
unzip_corners.h e287df11ba unzip corners (of an obj-style mesh with attributes) 9 роки тому
upsample.cpp e650edcc01 templates 8 роки тому
upsample.h 19bc318c12 loop, upsample, bug fix + tutorial 8 роки тому
vector_area_matrix.cpp 54df8bc1df boundary_vertices_sorted --> boundary_loop 11 роки тому
vector_area_matrix.h 77260d4aac areamatrix --> vector_area_matrix 11 роки тому
verbose.h b473232452 preprend license header to every file 11 роки тому
vertex_triangle_adjacency.cpp 6f3f5bdabe Merge branch 'master' of https://github.com/schuellc/libigl 9 роки тому
vertex_triangle_adjacency.h af6efe2123 is vertex manifold 10 роки тому
volume.cpp 1678470800 fixes for VS2015 8 роки тому
volume.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
voxel_grid.cpp b00e745985 adding missing copyright/license headers 8 роки тому
voxel_grid.h b00e745985 adding missing copyright/license headers 8 роки тому
winding_number.cpp b3880a36d7 SIGN CHANGE: use right hand rule, positive wn on inside of CCW polygons 8 роки тому
winding_number.h 53c2b9e8fa missing copyrights 10 роки тому
writeBF.cpp b00e745985 adding missing copyright/license headers 8 роки тому
writeBF.h b00e745985 adding missing copyright/license headers 8 роки тому
writeDMAT.cpp abb5062d19 templates 8 роки тому
writeDMAT.h 8a2fb2a3ec unify code for vectors 8 роки тому
writeMESH.cpp 0a1685f564 __1 removal 9 роки тому
writeMESH.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
writeOBJ.cpp 53d0af95c3 removed __cxx11 9 роки тому
writeOBJ.h 2de83c371d improved doc and simpler code 10 роки тому
writeOFF.cpp 33c27124bf OFF color-per-vertex 8 роки тому
writeOFF.h 33c27124bf OFF color-per-vertex 8 роки тому
writePLY.cpp 53d0af95c3 removed __cxx11 9 роки тому
writePLY.h 8692dd8258 ply duplicate symbol issues 10 роки тому
writeSTL.cpp 97bf3c6fb5 PlainObjectBase objects should not be declared 8 роки тому
writeSTL.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
writeTGF.cpp 77b87e622a rm using namespace igl 10 роки тому
writeTGF.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY 11 роки тому
writeWRL.cpp 0a1685f564 __1 removal 9 роки тому
writeWRL.h 53c2b9e8fa missing copyrights 10 роки тому
write_triangle_mesh.cpp 0a1685f564 __1 removal 9 роки тому
write_triangle_mesh.h d13d3163e1 universal write, tempaltes 10 роки тому

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 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 >&);
// 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