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

Method collapse

tools/MeshUtils/ShortEdgeRemoval.cpp:196–208  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

194}
195
196void ShortEdgeRemoval::collapse(Float threshold) {
197 while (!m_heap.empty()) {
198 size_t edge_idx = m_heap.top();
199 Float edge_len = m_heap.top_value();
200 m_heap.pop();
201
202 if (edge_len > threshold) break;
203 if (!edge_is_valid(edge_idx)) continue;
204 if (!edge_can_be_collapsed(edge_idx)) continue;
205
206 collapse_edge(edge_idx);
207 }
208}
209
210bool ShortEdgeRemoval::edge_is_valid(size_t edge_idx) const {
211 const Edge& edge = m_edges[edge_idx];

Callers

nothing calls this directly

Calls 4

topMethod · 0.80
top_valueMethod · 0.80
popMethod · 0.80
emptyMethod · 0.45

Tested by

no test coverage detected