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

Method adapt_boundary

tools/Assembler/Elements/Elements.cpp:40–64  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

38}
39
40Elements::Ptr Elements::adapt_boundary(Mesh::Ptr mesh) {
41 if (mesh->get_num_voxels() > 0) {
42 const size_t vertex_per_voxel = mesh->get_vertex_per_voxel();
43 switch (vertex_per_voxel) {
44 case 4:
45 return Ptr(new TriangleElements(mesh));
46 default:
47 std::stringstream err_msg;
48 err_msg << "Voxel with " << vertex_per_voxel
49 << " vertices is not supported yet.";
50 throw NotImplementedError(err_msg.str());
51 }
52 } else {
53 const size_t vertex_per_face = mesh->get_vertex_per_face();
54 switch (vertex_per_face) {
55 case 3:
56 return Ptr(new EdgeElements(mesh));
57 default:
58 std::stringstream err_msg;
59 err_msg << "Face with " << vertex_per_face
60 << " vertices is not supported yet.";
61 throw NotImplementedError(err_msg.str());
62 }
63 }
64}

Callers

nothing calls this directly

Calls 5

NotImplementedErrorClass · 0.85
get_num_voxelsMethod · 0.45
get_vertex_per_voxelMethod · 0.45
strMethod · 0.45
get_vertex_per_faceMethod · 0.45

Tested by

no test coverage detected