MCPcopy Create free account
hub / github.com/PyMesh/PyMesh / get_degenerated_faces

Method get_degenerated_faces

tools/MeshUtils/FaceUtils.cpp:43–72  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

41}
42
43std::vector<size_t> FaceUtils::get_degenerated_faces(
44 const MatrixFr& vertices, const MatrixIr& faces) {
45 std::vector<size_t> result;
46 const size_t num_faces = faces.rows();
47 const size_t dim = vertices.cols();
48 exactinit();
49
50 if (dim == 3) {
51 for (size_t i=0; i<num_faces; i++) {
52 const auto& f = faces.row(i);
53 if (FaceUtils::is_colinear_3D(
54 vertices.row(f[0]),
55 vertices.row(f[1]),
56 vertices.row(f[2]))) {
57 result.push_back(i);
58 }
59 }
60 } else if (dim == 2) {
61 for (size_t i=0; i<num_faces; i++) {
62 const auto& f = faces.row(i);
63 if (FaceUtils::is_colinear_2D(
64 vertices.row(f[0]),
65 vertices.row(f[1]),
66 vertices.row(f[2]))) {
67 result.push_back(i);
68 }
69 }
70 }
71 return result;
72}
73
74VectorF FaceUtils::get_triangle_orientations(
75 const MatrixFr& vertices, const MatrixIr& faces) {

Callers 3

print_extended_infoFunction · 0.80
mainFunction · 0.80

Calls 1

exactinitFunction · 0.85

Tested by

no test coverage detected