Alec Jacobson 33ed4e010b Split mesh non-manifold (and non-orientable) edges and non-manifold vertices (#2047) 3 ani în urmă
..
copyleft 4498aa8dfc Bump CGAL → Boolean + remesh_*intersections performance boost (#1895) 3 ani în urmă
embree 59b517a4a4 bump embree version; bump sse2 to avx2 (#1648) 5 ani în urmă
mosek aa40b908c9 updated gtest to catch 7 ani în urmă
predicates b0fd49d598 CMake refactor (#1805) 3 ani în urmă
triangle e19a68cfa6 Bug fix flip_avoiding_line_search.h (#1968) 3 ani în urmă
MshLoader.cpp 8c95d1044e Added improved .msh reader/writer + tests + example (#1578) 5 ani în urmă
MshSaver.cpp 8c95d1044e Added improved .msh reader/writer + tests + example (#1578) 5 ani în urmă
accumarray.cpp 1deb471727 extra boundary_facets outputs; better sort prototypes; templates; cleanup 7 ani în urmă
avg_edge_length.cpp 6a7428694f rm load_mesh 6 ani în urmă
barycentric_interpolation.cpp 1de2627280 tests 5 ani în urmă
bbw.cpp d3052ef4c7 Replace IGL_DEBUG_OFF with a [slow] tag for now. 6 ani în urmă
bezier.cpp 4ab389d462 bezier eval and fit cubic bezier splin 5 ani în urmă
blkdiag.cpp 775f2354fa blkdiag function 5 ani în urmă
blue_noise.cpp 43da16bbd0 tighter test 5 ani în urmă
boundary_facets.cpp 1c3d487d8e rm printing from some tests 3 ani în urmă
boundary_loop.cpp d3052ef4c7 Replace IGL_DEBUG_OFF with a [slow] tag for now. 6 ani în urmă
cat.cpp 450935874f Extending igl::cat to work with std::vectors AND Allowing N-gons in writeOBJ (#1108) 6 ani în urmă
circulation.cpp 1c3c7c7b6f ported new tests to catch2 7 ani în urmă
cotmatrix.cpp ad54f2dfe2 int->Index; depreacted pinv; trivial unit test 5 ani în urmă
cotmatrix_entries.cpp 6a7428694f rm load_mesh 6 ani în urmă
cotmatrix_intrinsic.cpp d3052ef4c7 Replace IGL_DEBUG_OFF with a [slow] tag for now. 6 ani în urmă
cr_vector_curvature_correction.cpp 8ea0b8c6dc Added vector Dirichlet and curved Hessian functionality (#1560) 5 ani în urmă
cr_vector_laplacian.cpp 8ea0b8c6dc Added vector Dirichlet and curved Hessian functionality (#1560) 5 ani în urmă
cumprod.cpp 1c3c7c7b6f ported new tests to catch2 7 ani în urmă
cumsum.cpp 1c3c7c7b6f ported new tests to catch2 7 ani în urmă
curved_hessian_energy.cpp 8ea0b8c6dc Added vector Dirichlet and curved Hessian functionality (#1560) 5 ani în urmă
cut_mesh.cpp f4d14cc7d1 change cut mask 6 ani în urmă
cut_to_disk.cpp 6a7428694f rm load_mesh 6 ani în urmă
decimate.cpp 41454f823d fix decimate bug 5 ani în urmă
delaunay_triangulation.cpp 4ce917d424 Issue 521 (#1327) 5 ani în urmă
diag.cpp 7174a7ac94 rm DynamicSparseMatrix; rm commented code; fix bug in slice_into; +tests (#2016) 3 ani în urmă
dijkstra.cpp 1df0987271 Fix issue with dijkstra algorithm (#1497) 5 ani în urmă
direct_delta_mush.cpp a3c3ef1572 update test too 5 ani în urmă
dirname.cpp aa40b908c9 updated gtest to catch 7 ani în urmă
doublearea.cpp d3052ef4c7 Replace IGL_DEBUG_OFF with a [slow] tag for now. 6 ani în urmă
edge_exists_near.cpp 1c3c7c7b6f ported new tests to catch2 7 ani în urmă
edge_flaps.cpp d3052ef4c7 Replace IGL_DEBUG_OFF with a [slow] tag for now. 6 ani în urmă
edge_lengths.cpp 6a7428694f rm load_mesh 6 ani în urmă
exact_geodesic.cpp 30019acb17 exact_geodesic: fix bugs, clean up asserts, allow 2D (#2046) 3 ani în urmă
facet_components.cpp 1aa35de249 passing facet_components unit test 5 ani în urmă
fast_winding_number.cpp d3052ef4c7 Replace IGL_DEBUG_OFF with a [slow] tag for now. 6 ani în urmă
fit_cubic_bezier.cpp 4ab389d462 bezier eval and fit cubic bezier splin 5 ani în urmă
grad.cpp 607148cf72 Misc compilation fixes for Eigen 3.3 compatibility. 7 ani în urmă
grad_intrinsic.cpp 607148cf72 Misc compilation fixes for Eigen 3.3 compatibility. 7 ani în urmă
grid.cpp 1c3c7c7b6f ported new tests to catch2 7 ani în urmă
guess_extension.cpp 49a74590d4 cleand cmake and added INSTANTIATE_TEST_CASE_P 7 ani în urmă
heat_geodesics.cpp f3a201f1e1 Update heat_geodesics.cpp (#1512) 5 ani în urmă
intrinsic_delaunay_cotmatrix.cpp d3052ef4c7 Replace IGL_DEBUG_OFF with a [slow] tag for now. 6 ani în urmă
intrinsic_delaunay_triangulation.cpp 1c3c7c7b6f ported new tests to catch2 7 ani în urmă
is_delaunay.cpp 1c3c7c7b6f ported new tests to catch2 7 ani în urmă
is_edge_manifold.cpp d3052ef4c7 Replace IGL_DEBUG_OFF with a [slow] tag for now. 6 ani în urmă
is_intrinsic_delaunay.cpp 1c3c7c7b6f ported new tests to catch2 7 ani în urmă
is_irregular_vertex.cpp 6a7428694f rm load_mesh 6 ani în urmă
is_symmetric.cpp aa40b908c9 updated gtest to catch 7 ani în urmă
ismember.cpp aa40b908c9 updated gtest to catch 7 ani în urmă
iterative_closest_point.cpp d3052ef4c7 Replace IGL_DEBUG_OFF with a [slow] tag for now. 6 ani în urmă
knn.cpp 21acee15fe making knn and octree work on more types than double, allowing knn to do nearest neighbor searches between two different point clouds (#1313) 5 ani în urmă
linprog.cpp b319a97447 Fix 1913; initialization bug; dimension bug; templates (#1914) 3 ani în urmă
list_to_matrix.cpp 49a74590d4 cleand cmake and added INSTANTIATE_TEST_CASE_P 7 ani în urmă
lscm.cpp fc42e420cd test/lscm: fix wrong assertion (#1889) 3 ani în urmă
min_quad_with_fixed.cpp 2e988bec2e more explicit template args for win 4 ani în urmă
moments.cpp 238a607032 moments of mass (#2027) 3 ani în urmă
orient_halfedges.cpp 8ea0b8c6dc Added vector Dirichlet and curved Hessian functionality (#1560) 5 ani în urmă
path_to_edges.cpp 1c3d487d8e rm printing from some tests 3 ani în urmă
path_to_executable.cpp b0fd49d598 CMake refactor (#1805) 3 ani în urmă
pathinfo.cpp aa40b908c9 updated gtest to catch 7 ani în urmă
per_face_normals.cpp d3052ef4c7 Replace IGL_DEBUG_OFF with a [slow] tag for now. 6 ani în urmă
polygon_corners.cpp 5a68b6e924 polygon corners test 5 ani în urmă
principal_curvature.cpp aaa89ffcbb Fix the order of principal curvature (#1767) 4 ani în urmă
qslim.cpp d3052ef4c7 Replace IGL_DEBUG_OFF with a [slow] tag for now. 6 ani în urmă
quadprog.cpp 2e988bec2e more explicit template args for win 4 ani în urmă
randperm.cpp 843438eab9 Fix logic error for URNG in igl::randperm 6 ani în urmă
readDMAT.cpp 46a8dd2fd4 rm load_matrix 6 ani în urmă
readMESH.cpp 7a3af9c851 Use unique filename for unit tests to avoid filesystem race conditions + update github actions for nightly job. 4 ani în urmă
readMSH.cpp 8c95d1044e Added improved .msh reader/writer + tests + example (#1578) 5 ani în urmă
readOBJ.cpp 1c3d487d8e rm printing from some tests 3 ani în urmă
readOFF.cpp 6a7428694f rm load_mesh 6 ani în urmă
readPLY.cpp 28a811da5d Fixed incorrect reading of per-face data (#1881) 3 ani în urmă
remesh_along_isoline.cpp 3150c23b62 RM load_mesh and use igl::read_triangle_mesh() and test_common::data_path() in test for remesh_along_isoline as per https://github.com/libigl/libigl/pull/1365 5 ani în urmă
repmat.cpp d444bb173f Rework sparse repmat (#1819) 3 ani în urmă
rigid_alignment.cpp 88e3dd1e3e iterative closest point alg, tutoiral, test 6 ani în urmă
seam_edges.cpp aa40b908c9 updated gtest to catch 7 ani în urmă
segment_segment_intersect.cpp 16ce83c381 rename test 6 ani în urmă
setdiff.cpp aa40b908c9 updated gtest to catch 7 ani în urmă
signed_distance.cpp 63b3669a87 test update... 5 ani în urmă
slice.cpp aa40b908c9 updated gtest to catch 7 ani în urmă
slice_into.cpp 7174a7ac94 rm DynamicSparseMatrix; rm commented code; fix bug in slice_into; +tests (#2016) 3 ani în urmă
slice_sorted.cpp 26053f696c Avoid involving Eigen/SparseExtra in slice. (#1370) 5 ani în urmă
sort.cpp 49a74590d4 cleand cmake and added INSTANTIATE_TEST_CASE_P 7 ani în urmă
sparse_voxel_grid.cpp 4d628e75fe sparse_voxel_grid test 5 ani în urmă
split_nonmanifold.cpp 33ed4e010b Split mesh non-manifold (and non-orientable) edges and non-manifold vertices (#2047) 3 ani în urmă
squared_edge_lengths.cpp 6a7428694f rm load_mesh 6 ani în urmă
tet_tet_adjacency.cpp 49a74590d4 cleand cmake and added INSTANTIATE_TEST_CASE_P 7 ani în urmă
triangle_triangle_adjacency.cpp d3052ef4c7 Replace IGL_DEBUG_OFF with a [slow] tag for now. 6 ani în urmă
triangulated_grid.cpp 1c3c7c7b6f ported new tests to catch2 7 ani în urmă
unique.cpp aa40b908c9 updated gtest to catch 7 ani în urmă
unique_simplices.cpp 1c3c7c7b6f ported new tests to catch2 7 ani în urmă
upsample.cpp d3052ef4c7 Replace IGL_DEBUG_OFF with a [slow] tag for now. 6 ani în urmă
writeMSH.cpp 8c95d1044e Added improved .msh reader/writer + tests + example (#1578) 5 ani în urmă
writePLY.cpp e91fb2b9e0 Fixes a bug in writePLY introduced in dfda6de04ee733a7b00b1edc57051d1fee78b219 (#1867) 3 ani în urmă

readMESH.cpp

#include

#include

#include
#include

TEST_CASE("readMESH: single-tet","[igl]")
{
const std::string filename = "readMESH_single-tet.mesh";
std::ofstream(filename)<< R"(MeshVersionFormatted 1
Dimension 3
Vertices
4
0 0 0 0
0 0 1 0
0 1 0 0
1 0 0 0
Triangles
0
Tetrahedra
1
1 2 3 4 0
End
)";

Eigen::MatrixXd V;
Eigen::MatrixXi T,F;
igl::readMESH(filename,V,T,F);
REQUIRE(V.rows() == 4);
REQUIRE(T.rows() == 1);
REQUIRE(T(0,0) == 0);
REQUIRE(F.rows() == 0);

}


TEST_CASE("readMESH: no-triangles-line","[igl]")
{
const std::string filename = "readMESH_no-triangles-line.mesh";
std::ofstream(filename)<< R"(MeshVersionFormatted 1
Dimension 3
Vertices
4
0 0 0 0
0 0 1 0
0 1 0 0
1 0 0 0
Tetrahedra
1
1 2 3 4 0
)";

Eigen::MatrixXd V;
Eigen::MatrixXi T,F;
igl::readMESH(filename,V,T,F);
REQUIRE(V.rows() == 4);
REQUIRE(T.rows() == 1);
REQUIRE(T(0,0) == 0);
REQUIRE(F.rows() == 0);

}


TEST_CASE("readMESH: mesh-version-formatted-2","[igl]")
{
const std::string filename = "readMESH_mesh-version-formatted-2.mesh";
std::ofstream(filename)<< R"(MeshVersionFormatted 2
Dimension 3
Vertices
4
0 0 0 0
0 0 1 0
0 1 0 0
1 0 0 0
Triangles
0
Tetrahedra
1
1 2 3 4 0
End
)";

Eigen::MatrixXd V;
Eigen::MatrixXi T,F;
igl::readMESH(filename,V,T,F);
REQUIRE(V.rows() == 4);
REQUIRE(T.rows() == 1);
REQUIRE(T(0,0) == 0);
REQUIRE(F.rows() == 0);

}