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

Method merge_boundary

tools/Wires/Inflator/IsotropicPeriodicInflator.cpp:219–236  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

217}
218
219void IsotropicPeriodicInflator::merge_boundary() {
220 auto bd = Boundary::extract_surface_boundary_raw(m_vertices, m_faces);
221 VectorI bd_vertices = bd->get_boundary_nodes();
222 const size_t num_bd_vertices = bd_vertices.size();
223 const size_t num_vertices = m_vertices.rows();
224 VectorI importance = VectorI::Ones(num_vertices) * -1;
225 for (size_t i=0; i < num_bd_vertices; i++) {
226 importance[bd_vertices[i]] = 0;
227 }
228
229 const Float tol = get_distance_threshold();
230 DuplicatedVertexRemoval remover(m_vertices, m_faces);
231 remover.set_importance_level(importance);
232 remover.run(tol);
233
234 m_vertices = remover.get_vertices();
235 m_faces = remover.get_faces();
236}
237
238void IsotropicPeriodicInflator::ensure_periodicity() {
239 const size_t dim = m_vertices.cols();

Callers

nothing calls this directly

Calls 6

set_importance_levelMethod · 0.80
get_boundary_nodesMethod · 0.45
sizeMethod · 0.45
runMethod · 0.45
get_verticesMethod · 0.45
get_facesMethod · 0.45

Tested by

no test coverage detected