面は手作業で剥がすことができますが、面が多いと時間がかかるので、スクリプトで一括剥がしします。
まず手作業から。最初のCubeです。
Tabで編集モードにします。
面を選択して、yキー。
もう分離されているので、後は移動すればよいです。
2面選択して、yした場合には、2面がくっついた状態で、剥がれます。
ですので、全部を選択して一括で剥がすことはできません。
では、スクリプトです。
オブジェクト中の各面を一つずつ選択して、splitで分離します。
>>> import bmesh >>> bm = bmesh.from_edit_mesh(C.object.data) >>> for f in bm.faces: ... bpy.ops.mesh.select_all(action='DESELECT') ... f.select = True ... bpy.ops.mesh.split() {'FINISHED'} {'FINISHED'} (省略) {'FINISHED'} >>>
分離した面を、移動させて、分離したことがわかるようにしましょう。
calc_center_median()は、面の中点を取得してくれます。
>>> for f in bm.faces: ... offs = f.calc_center_median() ... for v in f.verts: ... v.co = v.co + offs >>> bm.update_edit_mesh(C.object.data)
移動したので、meshを更新します。
>>> bmesh.update_edit_mesh(C.object.data)
タイトルの絵は、Sphereですが、要領はCubeと同様です。
コメント