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

Function subdivide

python/pymesh/meshutils/subdivide.py:4–27  ·  view source on GitHub ↗

Subdivide the input mesh. Args: mesh: Input triangle mesh. order: (optional) Subdivision order. method: (optional) Subdivision method. Choices are "simple" and "loop". Returns: Returns the subdivided mesh. The per-face attribute "ori_face_index" t

(mesh, order=1, method="simple")

Source from the content-addressed store, hash-verified

2from ..meshio import form_mesh
3
4def subdivide(mesh, order=1, method="simple"):
5 """ Subdivide the input mesh.
6
7 Args:
8 mesh: Input triangle mesh.
9 order: (optional) Subdivision order.
10 method: (optional) Subdivision method. Choices are "simple" and "loop".
11
12 Returns:
13 Returns the subdivided mesh. The per-face attribute "ori_face_index"
14 tracks the original face index from the input mesh.
15
16 """
17 subdiv = PyMesh.Subdivision.create(method)
18 subdiv.subdivide(mesh.vertices, mesh.faces, order)
19
20 vertices = subdiv.get_vertices()
21 faces = subdiv.get_faces()
22 ori_face_indices = subdiv.get_face_indices().ravel()
23
24 subdivided_mesh = form_mesh(vertices, faces)
25 subdivided_mesh.add_attribute("ori_face_index")
26 subdivided_mesh.set_attribute("ori_face_index", ori_face_indices)
27 return subdivided_mesh

Callers 1

generate_icosphereFunction · 0.90

Calls 8

form_meshFunction · 0.85
createMethod · 0.45
subdivideMethod · 0.45
get_verticesMethod · 0.45
get_facesMethod · 0.45
get_face_indicesMethod · 0.45
add_attributeMethod · 0.45
set_attributeMethod · 0.45

Tested by

no test coverage detected