Alec Jacobson 035849c472 templates преди 8 години
..
anttweakbar e2d2e0dbea namespace in include guards преди 10 години
copyleft 3d98ce7f30 fix cgal cmake settings преди 8 години
embree a456df913d static library _compiles_ with eigen3.3.1 преди 8 години
lim b6c6db1279 specialization --> instantiation преди 8 години
matlab 11512fbe33 use Eigen::Map to copy, handle RowMajor преди 8 години
mosek a456df913d static library _compiles_ with eigen3.3.1 преди 8 години
opengl 035849c472 templates преди 8 години
opengl2 2ebb4e6aeb fix includes преди 8 години
png 0663d656eb attempt to clean up opengl mess преди 8 години
triangle aafed3f110 fix bug in appending "B" for boundary markers преди 8 години
viewer 1b3c1f72d2 Merge branch 'master' of https://github.com/danielepanozzo/libigl преди 8 години
xml b6c6db1279 specialization --> instantiation преди 8 години
AABB.cpp b6c6db1279 specialization --> instantiation преди 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 b6c6db1279 specialization --> instantiation преди 8 години
EPS.h 20e0e9a082 comments преди 10 години
HalfEdgeIterator.cpp a152a2648e fix templating преди 8 години
HalfEdgeIterator.h 98a9f102a3 fix failed merge. (Isn't there a problem with templated classes .cpp files? I forgot why...) преди 8 години
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 години
LinSpaced.h 2955adeb5e tutorial and unit tests compile and run with Eigen 3.3.1; Eigen's LinSpaced had yet another bug преди 8 години
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 0667cbcb2a fix namespace/include order errors преди 8 години
active_set.h 20e0e9a082 comments преди 10 години
adjacency_list.cpp b6c6db1279 specialization --> instantiation преди 8 години
adjacency_list.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY преди 11 години
adjacency_matrix.cpp b6c6db1279 specialization --> instantiation преди 8 години
adjacency_matrix.h 9df7d65b44 better templates преди 8 години
all.cpp b6c6db1279 specialization --> instantiation преди 8 години
all.h 5e5d11c49f reductions for sparse matrices преди 8 години
all_edges.cpp 7b82a08e5b all_edges --> oriented_facets преди 8 години
all_edges.h 7b82a08e5b all_edges --> oriented_facets преди 8 години
all_pairs_distances.cpp b6c6db1279 specialization --> instantiation преди 8 години
all_pairs_distances.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY преди 11 години
ambient_occlusion.cpp b6c6db1279 specialization --> instantiation преди 8 години
ambient_occlusion.h ef75655a3b expose ambient occlusion without embree преди 9 години
angle_bound_frame_fields.cpp b6c6db1279 specialization --> instantiation преди 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.cpp b6c6db1279 specialization --> instantiation преди 8 години
any.h 5e5d11c49f reductions for sparse matrices преди 8 години
any_of.cpp b6c6db1279 specialization --> instantiation преди 8 години
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 b6c6db1279 specialization --> instantiation преди 8 години
arap_dof.h cce7d90d92 mv SVD to main lib преди 10 години
arap_linear_block.cpp b6c6db1279 specialization --> instantiation преди 8 години
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 b6c6db1279 specialization --> instantiation преди 8 години
average_onto_faces.h 62a1fc9819 moveVF --> average_onto_faces преди 11 години
average_onto_vertices.cpp b6c6db1279 specialization --> instantiation преди 8 години
average_onto_vertices.h 0ea2eca5d4 Add RowMajor storage order support преди 9 години
avg_edge_length.cpp b6c6db1279 specialization --> instantiation преди 8 години
avg_edge_length.h 344cb9eea3 -Changes to header files to support parsing преди 9 години
axis_angle_to_quat.cpp b6c6db1279 specialization --> instantiation преди 8 години
axis_angle_to_quat.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY преди 11 години
barycenter.cpp b6c6db1279 specialization --> instantiation преди 8 години
barycenter.h 0f5aabeca2 tutorial compiling преди 9 години
barycentric_coordinates.cpp 4cdfb572bb rm unnecessary include преди 8 години
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 b6c6db1279 specialization --> instantiation преди 8 години
bbw.h c76993c791 move bbw with active set to main lib, rm bbw extra, create mosek::bbw преди 8 години
bfs.cpp ce0c1eb7c7 dfs and bfs преди 8 години
bfs.h ce0c1eb7c7 dfs and bfs преди 8 години
bfs_orient.cpp b6c6db1279 specialization --> instantiation преди 8 години
bfs_orient.h 98540fdb74 rm boost dependency extra, absorb functions into main library преди 10 години
biharmonic_coordinates.cpp d4ec2b0a2d biharmonic coordiantes fixed to reflect erratum преди 8 години
biharmonic_coordinates.h 4100b31d41 support for higher-order biharmonic coords преди 10 години
bijective_composite_harmonic_mapping.cpp e5d51c1db0 wrapper with iteration parameters преди 8 години
bijective_composite_harmonic_mapping.h e5d51c1db0 wrapper with iteration parameters преди 8 години
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 b6c6db1279 specialization --> instantiation преди 8 години
boundary_facets.h 24b4807c23 missing _H in two header files преди 9 години
boundary_loop.cpp b6c6db1279 specialization --> instantiation преди 8 години
boundary_loop.h 90b8ac464c Replaced boundary_loop by outline_ordered implementation преди 10 години
bounding_box.cpp 6bdb22dd5f pad parameter преди 8 години
bounding_box.h 6bdb22dd5f pad parameter преди 8 години
bounding_box_diagonal.cpp b6c6db1279 specialization --> instantiation преди 8 години
bounding_box_diagonal.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY преди 11 години
canonical_quaternions.cpp b6c6db1279 specialization --> instantiation преди 8 години
canonical_quaternions.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY преди 11 години
cat.cpp b6c6db1279 specialization --> instantiation преди 8 години
cat.h 6e780b96eb correct doc преди 8 години
ceil.cpp b6c6db1279 specialization --> instantiation преди 8 години
ceil.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY преди 11 години
centroid.cpp 035849c472 templates преди 8 години
centroid.h 035849c472 templates преди 8 години
circulation.cpp 6fad412558 decimate with finite cost преди 9 години
circulation.h ef5029045e comment about order преди 8 години
circumradius.cpp 8943387b53 use nan replacement doublearea преди 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 f3cd179f00 use new doublearea преди 8 години
collapse_small_triangles.h 6737f53ebc collapse small triangles преди 10 години
colon.cpp 05f2905655 Update templates преди 8 години
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 e9d637ef52 - compilation fixes for the tutorials in chapter 4 преди 11 години
columnize.cpp b6c6db1279 specialization --> instantiation преди 8 години
columnize.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY преди 11 години
comb_cross_field.cpp b6c6db1279 specialization --> instantiation преди 8 години
comb_cross_field.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY преди 11 години
comb_frame_field.cpp b6c6db1279 specialization --> instantiation преди 8 години
comb_frame_field.h 344cb9eea3 -Changes to header files to support parsing преди 9 години
comb_line_field.cpp b6c6db1279 specialization --> instantiation преди 8 години
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 b6c6db1279 specialization --> instantiation преди 8 години
components.h 992eeb587a better templating преди 8 години
compute_frame_field_bisectors.cpp b6c6db1279 specialization --> instantiation преди 8 години
compute_frame_field_bisectors.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY преди 11 години
conjugate_frame_fields.cpp b6c6db1279 specialization --> instantiation преди 8 години
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 b6c6db1279 specialization --> instantiation преди 8 години
cotmatrix.h 9698061a02 better templating преди 8 години
cotmatrix_entries.cpp b6c6db1279 specialization --> instantiation преди 8 години
cotmatrix_entries.h 9698061a02 better templating преди 8 години
count.cpp b6c6db1279 specialization --> instantiation преди 8 години
count.h 074577bc17 use sparse matrix redux/for each преди 8 години
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 b6c6db1279 specialization --> instantiation преди 8 години
cross_field_missmatch.h fb819ab4f7 fixed python compilation error преди 9 години
crouzeix_raviart_cotmatrix.cpp f17f286a0f templates преди 8 години
crouzeix_raviart_cotmatrix.h 7b82a08e5b all_edges --> oriented_facets преди 8 години
crouzeix_raviart_massmatrix.cpp f17f286a0f templates преди 8 години
crouzeix_raviart_massmatrix.h 7b82a08e5b all_edges --> oriented_facets преди 8 години
cumsum.cpp b6c6db1279 specialization --> instantiation преди 8 години
cumsum.h c3fcd86080 typo in doc преди 8 години
cut_mesh.cpp a456df913d static library _compiles_ with eigen3.3.1 преди 8 години
cut_mesh.h a456df913d static library _compiles_ with eigen3.3.1 преди 8 години
cut_mesh_from_singularities.cpp b6c6db1279 specialization --> instantiation преди 8 години
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 години
dfs.cpp b6c6db1279 specialization --> instantiation преди 8 години
dfs.h 2656c6d361 missing eigen include преди 8 години
diag.cpp b6c6db1279 specialization --> instantiation преди 8 години
diag.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY преди 11 години
dihedral_angles.cpp b6c6db1279 specialization --> instantiation преди 8 години
dihedral_angles.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY преди 11 години
dijkstra.cpp b6c6db1279 specialization --> instantiation преди 8 години
dijkstra.h 5f795771d7 implementation of integrable polyvector fields (+some templates) преди 10 години
directed_edge_orientations.cpp b6c6db1279 specialization --> instantiation преди 8 години
directed_edge_orientations.h b84e4e375d extra eigen stdvector includes преди 8 години
directed_edge_parents.cpp b6c6db1279 specialization --> instantiation преди 8 години
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 b6c6db1279 specialization --> instantiation преди 8 години
dot_row.h 97bf3c6fb5 PlainObjectBase objects should not be declared преди 8 години
doublearea.cpp 6a4223b5be use quietNaN explicitly преди 8 години
doublearea.h 8943387b53 use nan replacement doublearea преди 8 години
dqs.cpp b6c6db1279 specialization --> instantiation преди 8 години
dqs.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY преди 11 години
ears.cpp b6c6db1279 specialization --> instantiation преди 8 години
ears.h ec0cb390f5 identify 'ears' on mesh преди 8 години
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 b6c6db1279 specialization --> instantiation преди 8 години
edge_lengths.h 9698061a02 better templating преди 8 години
edge_topology.cpp b6c6db1279 specialization --> instantiation преди 8 години
edge_topology.h 87ca4a7e25 edge_topology should be made obsolete (edge_flaps is superior in a few ways) преди 8 години
edges.cpp b6c6db1279 specialization --> instantiation преди 8 години
edges.h 992eeb587a better templating преди 8 години
edges_to_path.cpp b6c6db1279 specialization --> instantiation преди 8 години
edges_to_path.h 236b440c34 convert list of edges forming chain/loop into path преди 8 години
eigs.cpp 617ca88591 bug fix in eigs; orthogonality check was totally wrong преди 8 години
eigs.h 78732839e2 better documentation преди 8 години
euler_characteristic.cpp b6c6db1279 specialization --> instantiation преди 8 години
euler_characteristic.h 992eeb587a better templating преди 8 години
example_fun.cpp b6c6db1279 specialization --> instantiation преди 8 години
example_fun.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY преди 11 години
exterior_edges.cpp 7b82a08e5b all_edges --> oriented_facets преди 8 години
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 c31471f571 unused nan replacement преди 8 години
face_areas.h 8943387b53 use nan replacement doublearea преди 8 години
face_occurrences.cpp b6c6db1279 specialization --> instantiation преди 8 години
face_occurrences.h 2c75b2cf21 typo in face_occurrences name преди 10 години
faces_first.cpp b6c6db1279 specialization --> instantiation преди 8 години
faces_first.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY преди 11 години
facet_components.cpp b6c6db1279 specialization --> instantiation преди 8 години
facet_components.h da91e1ba44 Minor update documentation of facet_components(). преди 10 години
false_barycentric_subdivision.cpp b6c6db1279 specialization --> instantiation преди 8 години
false_barycentric_subdivision.h 3b3eddd9a0 fixed template madness in tri_tri преди 10 години
field_local_global_conversions.cpp b6c6db1279 specialization --> instantiation преди 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 a456df913d static library _compiles_ with eigen3.3.1 преди 8 години
find.h c41afa77ec better templates преди 8 години
find_cross_field_singularities.cpp b6c6db1279 specialization --> instantiation преди 8 години
find_cross_field_singularities.h 580c57ed4f Merge branch 'master' of https://github.com/libigl/libigl преди 10 години
find_zero.cpp b6c6db1279 specialization --> instantiation преди 8 години
find_zero.h 5e5d11c49f reductions for sparse matrices преди 8 години
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 b6c6db1279 specialization --> instantiation преди 8 години
fit_rotations.h 36a1006438 note that fit_rotations may be obsolete преди 10 години
flip_avoiding_line_search.cpp 09c724bb35 merge преди 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 b6c6db1279 specialization --> instantiation преди 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 b6c6db1279 specialization --> instantiation преди 8 години
floor.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY преди 11 години
for_each.h 0faf24a294 add svd version преди 8 години
forward_kinematics.cpp b6c6db1279 specialization --> instantiation преди 8 години
forward_kinematics.h b7157c2898 translation widget преди 9 години
frame_field_deformer.cpp b6c6db1279 specialization --> instantiation преди 8 години
frame_field_deformer.h b1ea555f41 bad path преди 10 години
frame_to_cross_field.cpp b6c6db1279 specialization --> instantiation преди 8 години
frame_to_cross_field.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY преди 11 години
frustum.cpp b6c6db1279 specialization --> instantiation преди 8 години
frustum.h a1c8fcb85c templates, viewer opengl code extraction преди 10 години
gaussian_curvature.cpp b6c6db1279 specialization --> instantiation преди 8 години
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 b6c6db1279 specialization --> instantiation преди 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 b6c6db1279 specialization --> instantiation преди 8 години
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 05f2905655 Update templates преди 8 години
harmonic.h 9698061a02 better templating преди 8 години
harwell_boeing.cpp b6c6db1279 specialization --> instantiation преди 8 години
harwell_boeing.h bdeb592dc8 rm unneeded define преди 10 години
hausdorff.cpp 795638c80d revert hausdorff преди 8 години
hausdorff.h 795638c80d revert hausdorff преди 8 години
histc.cpp a456df913d static library _compiles_ with eigen3.3.1 преди 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 8943387b53 use nan replacement doublearea преди 8 години
inradius.h c330b9a5ec compute per triangle circum- and in- radii преди 8 години
integrable_polyvector_fields.cpp b6c6db1279 specialization --> instantiation преди 8 години
integrable_polyvector_fields.h e4886b577c replaced constructors of the form Eigen::PlainObjectBase<Derived*> with Derived* преди 9 години
internal_angles.cpp b6c6db1279 specialization --> instantiation преди 8 години
internal_angles.h 749dd2c873 squared_edge_lengths (clean) преди 8 години
intersect.cpp b6c6db1279 specialization --> instantiation преди 8 години
intersect.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY преди 11 години
invert_diag.cpp b6c6db1279 specialization --> instantiation преди 8 години
invert_diag.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY преди 11 години
is_border_vertex.cpp b6c6db1279 specialization --> instantiation преди 8 години
is_border_vertex.h ba963582da improved doc преди 10 години
is_boundary_edge.cpp b6c6db1279 specialization --> instantiation преди 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 7b82a08e5b all_edges --> oriented_facets преди 8 години
is_edge_manifold.h 01e284b3d7 better templating преди 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 b6c6db1279 specialization --> instantiation преди 8 години
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 b6c6db1279 specialization --> instantiation преди 8 години
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 a456df913d static library _compiles_ with eigen3.3.1 преди 8 години
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 b6c6db1279 specialization --> instantiation преди 8 години
isdiag.h 8dc2514633 isdiagonal test, harmonic abstracted away from laplacian преди 9 години
ismember.cpp b6c6db1279 specialization --> instantiation преди 8 години
ismember.h e1c2409f07 support for rows преди 8 години
jet.cpp b6c6db1279 specialization --> instantiation преди 8 години
jet.h 36c5ec93f3 cast so that inputs can be float преди 8 години
launch_medit.cpp b6c6db1279 specialization --> instantiation преди 8 години
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 b6c6db1279 specialization --> instantiation преди 8 години
limit_faces.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY преди 11 години
line_field_missmatch.cpp b6c6db1279 specialization --> instantiation преди 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 0667cbcb2a fix namespace/include order errors преди 8 години
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 b6c6db1279 specialization --> instantiation преди 8 години
list_to_matrix.h 6f3f5bdabe Merge branch 'master' of https://github.com/schuellc/libigl преди 9 години
local_basis.cpp b6c6db1279 specialization --> instantiation преди 8 години
local_basis.h 344cb9eea3 -Changes to header files to support parsing преди 9 години
look_at.cpp b6c6db1279 specialization --> instantiation преди 8 години
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 b6c6db1279 specialization --> instantiation преди 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 b6c6db1279 specialization --> instantiation преди 8 години
massmatrix.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY преди 11 години
mat_max.cpp b6c6db1279 specialization --> instantiation преди 8 години
mat_max.h 2c0956abc6 better templating преди 8 години
mat_min.cpp b6c6db1279 specialization --> instantiation преди 8 години
mat_min.h 2c0956abc6 better templating преди 8 години
mat_to_quat.cpp b6c6db1279 specialization --> instantiation преди 8 години
mat_to_quat.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY преди 11 години
material_colors.h ae29184e91 draw skeleton with colors преди 11 години
matlab_format.cpp b6c6db1279 specialization --> instantiation преди 8 години
matlab_format.h b70dfc9599 rather, use densebase for inputs преди 8 години
matrix_to_list.cpp b6c6db1279 specialization --> instantiation преди 8 години
matrix_to_list.h 46aa12d3e1 setxor, correct indices assuming colmajor преди 8 години
max.cpp b6c6db1279 specialization --> instantiation преди 8 години
max.h 5e5d11c49f reductions for sparse matrices преди 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 b6c6db1279 specialization --> instantiation преди 8 години
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.cpp 5e5d11c49f reductions for sparse matrices преди 8 години
min.h 5e5d11c49f reductions for sparse matrices преди 8 години
min_quad_dense.cpp b6c6db1279 specialization --> instantiation преди 8 години
min_quad_dense.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY преди 11 години
min_quad_with_fixed.cpp 09c724bb35 merge преди 8 години
min_quad_with_fixed.h c2761bcd59 improve documentation, mention trace, num cols преди 8 години
min_size.cpp b6c6db1279 specialization --> instantiation преди 8 години
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 b6c6db1279 specialization --> instantiation преди 8 години
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 36e5b8c423 wrapper for Eigen's buggy LinSpaced преди 8 години
n_polyvector.h 81238fbfd2 - cleaned up polyvector field example преди 11 години
n_polyvector_general.cpp 36e5b8c423 wrapper for Eigen's buggy LinSpaced преди 8 години
n_polyvector_general.h fc424b9b5c general polyvector field преди 11 години
nchoosek.cpp a456df913d static library _compiles_ with eigen3.3.1 преди 8 години
nchoosek.h 4f99fc5ddd variadic boolean ops преди 9 години
next_filename.cpp 3afe7f3444 templates преди 10 години
next_filename.h e7dcfe6b19 better doc преди 8 години
normal_derivative.cpp 36e5b8c423 wrapper for Eigen's buggy LinSpaced преди 8 години
normal_derivative.h 8fd80c7bc0 biharmonic coordinates, impl of 'linear subspace design...', templates, overloads преди 10 години
normalize_quat.cpp b6c6db1279 specialization --> instantiation преди 8 години
normalize_quat.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY преди 11 години
normalize_row_lengths.cpp b6c6db1279 specialization --> instantiation преди 8 години
normalize_row_lengths.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY преди 11 години
normalize_row_sums.cpp b6c6db1279 specialization --> instantiation преди 8 години
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 b6c6db1279 specialization --> instantiation преди 8 години
on_boundary.h f5b39a8657 better templating преди 8 години
orient_outward.cpp b6c6db1279 specialization --> instantiation преди 8 години
orient_outward.h 63e134577a manifold_patches --> orientable_patches преди 11 години
orientable_patches.cpp b6c6db1279 specialization --> instantiation преди 8 години
orientable_patches.h 2dfdea1a3b templates преди 9 години
oriented_facets.cpp 7b82a08e5b all_edges --> oriented_facets преди 8 години
oriented_facets.h 7b82a08e5b all_edges --> oriented_facets преди 8 години
orth.cpp b473232452 preprend license header to every file преди 11 години
orth.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY преди 11 години
ortho.cpp b6c6db1279 specialization --> instantiation преди 8 години
ortho.h a1c8fcb85c templates, viewer opengl code extraction преди 10 години
outer_element.cpp b6c6db1279 specialization --> instantiation преди 8 години
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 b6c6db1279 specialization --> instantiation преди 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 b6c6db1279 specialization --> instantiation преди 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 b6c6db1279 specialization --> instantiation преди 8 години
pathinfo.h 8e2e36c12a examples преди 10 години
per_corner_normals.cpp b6c6db1279 specialization --> instantiation преди 8 години
per_corner_normals.h f4ab9d2cd1 compiles after rm PlainObjectBase uses преди 9 години
per_edge_normals.cpp 7b82a08e5b all_edges --> oriented_facets преди 8 години
per_edge_normals.h 5e0d6b3aff Fixed various minor bugs, added explicit template specifications преди 9 години
per_face_normals.cpp b6c6db1279 specialization --> instantiation преди 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 b6c6db1279 specialization --> instantiation преди 8 години
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 години
pinv.cpp 6f47da1700 pseudoinverse преди 8 години
pinv.h 6f47da1700 pseudoinverse преди 8 години
planarize_quad_mesh.cpp b6c6db1279 specialization --> instantiation преди 8 години
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 b6c6db1279 specialization --> instantiation преди 8 години
point_simplex_squared_distance.h 36f3f666e9 fix template to match explicits преди 8 години
polar_dec.cpp b6c6db1279 specialization --> instantiation преди 8 години
polar_dec.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY преди 11 години
polar_svd.cpp b6c6db1279 specialization --> instantiation преди 8 години
polar_svd.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY преди 11 години
polar_svd3x3.cpp b6c6db1279 specialization --> instantiation преди 8 години
polar_svd3x3.h cce7d90d92 mv SVD to main lib преди 10 години
polygon_mesh_to_triangle_mesh.cpp b6c6db1279 specialization --> instantiation преди 8 години
polygon_mesh_to_triangle_mesh.h 8e6f510b7b next filename, draw quad meshes, template specializations, преди 11 години
polyroots.cpp b6c6db1279 specialization --> instantiation преди 8 години
polyroots.h 34d4f8e5aa conjugate example, fixed some #HEADER_ONLY errors преди 11 години
polyvector_field_comb_from_matchings_and_cuts.cpp b6c6db1279 specialization --> instantiation преди 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 b6c6db1279 specialization --> instantiation преди 8 години
polyvector_field_cut_mesh_with_singularities.h 5f795771d7 implementation of integrable polyvector fields (+some templates) преди 10 години
polyvector_field_matchings.cpp b6c6db1279 specialization --> instantiation преди 8 години
polyvector_field_matchings.h f72ff756ac olga's recent changes преди 9 години
polyvector_field_poisson_reconstruction.cpp b6c6db1279 specialization --> instantiation преди 8 години
polyvector_field_poisson_reconstruction.h f72ff756ac olga's recent changes преди 9 години
polyvector_field_singularities_from_matchings.cpp b6c6db1279 specialization --> instantiation преди 8 години
polyvector_field_singularities_from_matchings.h cd067ff5c8 changed order of neighborhood traversal for singularity calculation преди 9 години
principal_curvature.cpp b6c6db1279 specialization --> instantiation преди 8 години
principal_curvature.h 344cb9eea3 -Changes to header files to support parsing преди 9 години
print_ijv.cpp b6c6db1279 specialization --> instantiation преди 8 години
print_ijv.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY преди 11 години
print_vector.cpp b6c6db1279 specialization --> instantiation преди 8 години
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 b6c6db1279 specialization --> instantiation преди 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 b6c6db1279 specialization --> instantiation преди 8 години
project_to_line.h 408c23ebc7 another typo in doc преди 8 години
project_to_line_segment.cpp b6c6db1279 specialization --> instantiation преди 8 години
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 b6c6db1279 specialization --> instantiation преди 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 b6c6db1279 specialization --> instantiation преди 8 години
quat_conjugate.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY преди 11 години
quat_mult.cpp b6c6db1279 specialization --> instantiation преди 8 години
quat_mult.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY преди 11 години
quat_to_axis_angle.cpp b6c6db1279 specialization --> instantiation преди 8 години
quat_to_axis_angle.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY преди 11 години
quat_to_mat.cpp b6c6db1279 specialization --> instantiation преди 8 години
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 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY преди 11 години
ramer_douglas_peucker.cpp 36e5b8c423 wrapper for Eigen's buggy LinSpaced преди 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 b6c6db1279 specialization --> instantiation преди 8 години
random_points_on_mesh.h 52eabdec3e documentation преди 8 години
random_quaternion.cpp b6c6db1279 specialization --> instantiation преди 8 години
random_quaternion.h 53c2b9e8fa missing copyrights преди 10 години
randperm.cpp b6c6db1279 specialization --> instantiation преди 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 b6c6db1279 specialization --> instantiation преди 8 години
ray_mesh_intersect.h b00e745985 adding missing copyright/license headers преди 8 години
ray_sphere_intersect.cpp b6c6db1279 specialization --> instantiation преди 8 години
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 b6c6db1279 specialization --> instantiation преди 8 години
readCSV.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY преди 11 години
readDMAT.cpp b6c6db1279 specialization --> instantiation преди 8 години
readDMAT.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY преди 11 години
readMESH.cpp 035849c472 templates преди 8 години
readMESH.h b6e3b252af read directly from file pointer преди 8 години
readNODE.cpp b6c6db1279 specialization --> instantiation преди 8 години
readNODE.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY преди 11 години
readOBJ.cpp 66ccf0c218 templates преди 8 години
readOBJ.h 680d9ff712 better templating преди 8 години
readOFF.cpp 7bbcec7f04 fix blank line error while opening OFF file преди 8 години
readOFF.h b6e3b252af read directly from file pointer преди 8 години
readPLY.cpp b6c6db1279 specialization --> instantiation преди 8 години
readPLY.h b6e3b252af read directly from file pointer преди 8 години
readSTL.cpp b6c6db1279 specialization --> instantiation преди 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 b6c6db1279 specialization --> instantiation преди 8 години
readWRL.h b6e3b252af read directly from file pointer преди 8 години
read_triangle_mesh.cpp 035849c472 templates преди 8 години
read_triangle_mesh.h b6e3b252af read directly from file pointer преди 8 години
redux.h db3b7dc16c templates преди 8 години
remove_duplicate_vertices.cpp 85c9ca96a9 templates преди 8 години
remove_duplicate_vertices.h b09b6e5b0f better templating преди 8 години
remove_duplicates.cpp b6c6db1279 specialization --> instantiation преди 8 години
remove_duplicates.h 69808310c1 removeDuplicates --> remove_duplicates преди 11 години
remove_unreferenced.cpp 0667cbcb2a fix namespace/include order errors преди 8 години
remove_unreferenced.h b09b6e5b0f better templating преди 8 години
reorder.cpp b6c6db1279 specialization --> instantiation преди 8 години
reorder.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY преди 11 години
repdiag.cpp b6c6db1279 specialization --> instantiation преди 8 години
repdiag.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY преди 11 години
repmat.cpp b6c6db1279 specialization --> instantiation преди 8 години
repmat.h 9698061a02 better templating преди 8 години
resolve_duplicated_faces.cpp f687064342 Added missing templates преди 9 години
resolve_duplicated_faces.h f9ced09c24 merge преди 9 години
rgb_to_hsv.cpp b6c6db1279 specialization --> instantiation преди 8 години
rgb_to_hsv.h 20a3ad28f1 eigen types преди 10 години
rotate_by_quat.cpp b6c6db1279 specialization --> instantiation преди 8 години
rotate_by_quat.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY преди 11 години
rotate_vectors.cpp b6c6db1279 specialization --> instantiation преди 8 години
rotate_vectors.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY преди 11 години
rotation_matrix_from_directions.cpp b6c6db1279 specialization --> instantiation преди 8 години
rotation_matrix_from_directions.h 2d42198b19 fix style, rm unused parameter преди 9 години
round.cpp 85c9ca96a9 templates преди 8 години
round.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY преди 11 години
rows_to_matrix.cpp b6c6db1279 specialization --> instantiation преди 8 години
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 b6c6db1279 specialization --> instantiation преди 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 2955adeb5e tutorial and unit tests compile and run with Eigen 3.3.1; Eigen's LinSpaced had yet another bug преди 8 години
setdiff.h 46aa12d3e1 setxor, correct indices assuming colmajor преди 8 години
setunion.cpp b6c6db1279 specialization --> instantiation преди 8 години
setunion.h 06215fe09b set union on matrices преди 8 години
setxor.cpp b6c6db1279 specialization --> instantiation преди 8 години
setxor.h 46aa12d3e1 setxor, correct indices assuming colmajor преди 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 36e5b8c423 wrapper for Eigen's buggy LinSpaced преди 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 09c724bb35 merge преди 8 години
slice.h c41afa77ec better templates преди 8 години
slice_into.cpp 05f2905655 Update templates преди 8 години
slice_into.h c41afa77ec better templates преди 8 години
slice_mask.cpp b6c6db1279 specialization --> instantiation преди 8 години
slice_mask.h 03c9c841dc trivially extend to sparse matrices преди 8 години
slice_tets.cpp 36e5b8c423 wrapper for Eigen's buggy LinSpaced преди 8 години
slice_tets.h f0b9c018f1 slice tets and tempaltes преди 10 години
slim.cpp 6f8ab23137 fixed an initializaiton bug in func "solve_weighted_arap" of slim.cpp преди 8 години
slim.h 66ccf0c218 templates преди 8 години
snap_points.cpp b6c6db1279 specialization --> instantiation преди 8 години
snap_points.h 2dfdea1a3b templates преди 9 години
snap_to_canonical_view_quat.cpp b6c6db1279 specialization --> instantiation преди 8 години
snap_to_canonical_view_quat.h 8c809663c2 better tempaltes преди 10 години
snap_to_fixed_up.cpp b6c6db1279 specialization --> instantiation преди 8 години
snap_to_fixed_up.h 6d578a7133 key usage in viewer преди 9 години
sort.cpp b6c6db1279 specialization --> instantiation преди 8 години
sort.h 46aa12d3e1 setxor, correct indices assuming colmajor преди 8 години
sort_angles.cpp 2955adeb5e tutorial and unit tests compile and run with Eigen 3.3.1; Eigen's LinSpaced had yet another bug преди 8 години
sort_angles.h 53c2b9e8fa missing copyrights преди 10 години
sort_triangles.cpp b6c6db1279 specialization --> instantiation преди 8 години
sort_triangles.h 945ca3ac82 move opengl functions to separate directories, lots of new templates преди 10 години
sort_vectors_ccw.cpp b6c6db1279 specialization --> instantiation преди 8 години
sort_vectors_ccw.h f72ff756ac olga's recent changes преди 9 години
sortrows.cpp 85c9ca96a9 templates преди 8 години
sortrows.h 46aa12d3e1 setxor, correct indices assuming colmajor преди 8 години
sparse.cpp a456df913d static library _compiles_ with eigen3.3.1 преди 8 години
sparse.h 2ecd74c82a better templates преди 8 години
speye.cpp b6c6db1279 specialization --> instantiation преди 8 години
speye.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY преди 11 години
squared_edge_lengths.cpp b6c6db1279 specialization --> instantiation преди 8 години
squared_edge_lengths.h 9698061a02 better templating преди 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 години
straighten_seams.cpp 36e5b8c423 wrapper for Eigen's buggy LinSpaced преди 8 години
straighten_seams.h 3fe31ec0dc straighten seams преди 8 години
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 f17f286a0f templates преди 8 години
sum.h 074577bc17 use sparse matrix redux/for each преди 8 години
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 36e5b8c423 wrapper for Eigen's buggy LinSpaced преди 8 години
swept_volume_bounding_box.h b00e745985 adding missing copyright/license headers преди 8 години
swept_volume_signed_distance.cpp 0667cbcb2a fix namespace/include order errors преди 8 години
swept_volume_signed_distance.h b00e745985 adding missing copyright/license headers преди 8 години
trackball.cpp b6c6db1279 specialization --> instantiation преди 8 години
trackball.h 8c809663c2 better tempaltes преди 10 години
transpose_blocks.cpp b6c6db1279 specialization --> instantiation преди 8 години
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 7b82a08e5b all_edges --> oriented_facets преди 8 години
triangle_triangle_adjacency.h e2838b2712 better doc преди 8 години
triangles_from_strip.cpp b6c6db1279 specialization --> instantiation преди 8 години
triangles_from_strip.h 9522dfd77e generate triangles from a points streaming triangle strip преди 10 години
two_axis_valuator_fixed_up.cpp b6c6db1279 specialization --> instantiation преди 8 години
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 85c9ca96a9 templates преди 8 години
unique.h 46aa12d3e1 setxor, correct indices assuming colmajor преди 8 години
unique_edge_map.cpp 7b82a08e5b all_edges --> oriented_facets преди 8 години
unique_edge_map.h 53c2b9e8fa missing copyrights преди 10 години
unique_simplices.cpp b6c6db1279 specialization --> instantiation преди 8 години
unique_simplices.h bae1c9582d per edge normals преди 11 години
unproject.cpp 1d68023669 templates преди 8 години
unproject.h 1d68023669 templates преди 8 години
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 b6c6db1279 specialization --> instantiation преди 8 години
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 b6c6db1279 specialization --> instantiation преди 8 години
upsample.h 19bc318c12 loop, upsample, bug fix + tutorial преди 8 години
vector_area_matrix.cpp 1e08e53382 Workaround for Eigen-3.3.1: преди 8 години
vector_area_matrix.h cb6570075a correct header guard преди 8 години
verbose.h b473232452 preprend license header to every file преди 11 години
vertex_triangle_adjacency.cpp b6c6db1279 specialization --> instantiation преди 8 години
vertex_triangle_adjacency.h af6efe2123 is vertex manifold преди 10 години
volume.cpp f17f286a0f templates преди 8 години
volume.h 9698061a02 better templating преди 8 години
voxel_grid.cpp b00e745985 adding missing copyright/license headers преди 8 години
voxel_grid.h 035849c472 templates преди 8 години
winding_number.cpp b6c6db1279 specialization --> instantiation преди 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 b6c6db1279 specialization --> instantiation преди 8 години
writeDMAT.h 8a2fb2a3ec unify code for vectors преди 8 години
writeMESH.cpp b6c6db1279 specialization --> instantiation преди 8 години
writeMESH.h 4783f7505d IGL_HEADER_ONLY --> ~IGL_STATIC_LIBRARY преди 11 години
writeOBJ.cpp 66ccf0c218 templates преди 8 години
writeOBJ.h 680d9ff712 better templating преди 8 години
writeOFF.cpp b6c6db1279 specialization --> instantiation преди 8 години
writeOFF.h 33c27124bf OFF color-per-vertex преди 8 години
writePLY.cpp b6c6db1279 specialization --> instantiation преди 8 години
writePLY.h 8692dd8258 ply duplicate symbol issues преди 10 години
writeSTL.cpp b6c6db1279 specialization --> instantiation преди 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 b6c6db1279 specialization --> instantiation преди 8 години
writeWRL.h 53c2b9e8fa missing copyrights преди 10 години
write_triangle_mesh.cpp b6c6db1279 specialization --> instantiation преди 8 години
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 instantiation
// generated by autoexplicit.sh
template bool igl::readMESH, Eigen::Matrix, Eigen::Matrix >(__sFILE*, Eigen::PlainObjectBase >&, Eigen::PlainObjectBase >&, Eigen::PlainObjectBase >&);
// generated by autoexplicit.sh
template bool igl::readMESH, Eigen::Matrix, Eigen::Matrix >(std::basic_string, std::allocator >, Eigen::PlainObjectBase >&, Eigen::PlainObjectBase >&, Eigen::PlainObjectBase >&);
// generated by autoexplicit.sh
template bool igl::readMESH, Eigen::Matrix, Eigen::Matrix >(std::basic_string, std::allocator >, Eigen::PlainObjectBase >&, Eigen::PlainObjectBase >&, Eigen::PlainObjectBase >&);
// generated by autoexplicit.sh
template bool igl::readMESH, Eigen::Matrix, Eigen::Matrix >(std::basic_string, std::allocator >, Eigen::PlainObjectBase >&, Eigen::PlainObjectBase >&, Eigen::PlainObjectBase >&);
// generated by autoexplicit.sh
template bool igl::readMESH, Eigen::Matrix, Eigen::Matrix >(std::basic_string, std::allocator >, Eigen::PlainObjectBase >&, Eigen::PlainObjectBase >&, Eigen::PlainObjectBase >&);
template bool igl::readMESH, Eigen::Matrix, Eigen::Matrix >(std::basic_string, std::allocator >, Eigen::PlainObjectBase >&, Eigen::PlainObjectBase >&, Eigen::PlainObjectBase >&);
template bool igl::readMESH(std::basic_string, std::allocator >, std::vector >, std::allocator > > >&, std::vector >, std::allocator > > >&, std::vector >, std::allocator > > >&);
template bool igl::readMESH, Eigen::Matrix, Eigen::Matrix >(std::basic_string, std::allocator >, Eigen::PlainObjectBase >&, Eigen::PlainObjectBase >&, Eigen::PlainObjectBase >&);
#endif