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

Method split_obtuse_triangles

tools/MeshUtils/ObtuseTriangleRemoval.cpp:118–131  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

116}
117
118size_t ObtuseTriangleRemoval::split_obtuse_triangles(Float max_angle) {
119 size_t num_splited = 0;
120 IndexHeap<Float> candidates(m_face_angles);
121 while (!candidates.empty()) {
122 size_t ext_idx = candidates.top();
123 candidates.pop();
124 if (m_face_angles[ext_idx] < max_angle) break;
125 if (!edge_can_be_splited(ext_idx)) continue;
126
127 split_triangle(ext_idx);
128 num_splited ++;
129 }
130 return num_splited;
131}
132
133void ObtuseTriangleRemoval::split_triangle(size_t ext_idx) {
134 Edge edge = m_edges[ext_idx];

Callers

nothing calls this directly

Calls 3

topMethod · 0.80
popMethod · 0.80
emptyMethod · 0.45

Tested by

no test coverage detected